Six Simple Steps to Your First CI/CD DevOps Pipeline in JFrog Pipelines

See how easy it is to get started, and start working with a simple “Hello World” DevOps pipeline. Along the way, you’ll learn some fundamental Pipelines concepts.

Here’s what you’ll need:

  1. A JFrog Cloud account. If you don’t have one, start for free!
  2. A GitHub account for your personal repositories

Step 1 – LOGIN TO THE JFROG PLATFORM

Login to your JFrog Cloud account with the JFrog Platform credentials provided to you by email. 

The JFrog DevOps Platform in your cloud account is automatically set up with a default Dynamic Node Pool on your cloud provider, so you already have build nodes available for your pipeline to execute in!

JFrog Pipelines CI/CD Node Pools

Step 2 – ADD A GITHUB INTEGRATION 

For Pipelines to connect to other services, such as GitHub, Artifactory, or Kubernetes, you must add Pipelines integrations for those services. You must provide the integration with the URL endpoint for those services and credentials for a user account on that service, along with any other parameters.

Did You Know?

Pipelines stores all of your credentials for an integration in an encrypted vault to keep your secrets secure.

To add an integration for your GitHub account, from the Application tab click on Pipelines | Integrations, then click Add an Integration.

Use the following information for the integration:

Name  my_github
Integration Type GitHub
url  No change (this is hardcoded to https://api.github.com)
Token  Your GitHub account personal access token that has repo and admin OAuth scopes.


Click the
Create button.

JFrog Pipelines CI/CD Integrations

Step 3 – FORK THE PIPELINES SIMPLE EXAMPLE GITHUB REPO

Fork the simple “Hello World” example for JFrog Pipelines to your own GitHub repository.

This repo contains a simple example of a pre-defined pipeline described in the YAML file named jfrog-pipelines-hello-world.yml.

Example CI/CD JFrog Pipelines DSL

Step 4 – UPDATE THE VALUES.YML FILE

Edit the values.yml file in the your forked repo, and change the path value from jfrog/jfrog-pipelines-simple-example to <your_github>/jfrog-pipelines-simple-example. 

JFrog Pipelines Example Values File

Commit your changes.

Step 5 – ADD PIPELINE SOURCE 

To add the pipeline source, from the Application tab click on Pipelines | Pipeline Sources, then click Add a Pipeline Source and select From YAML.

Use the following settings for the pipeline source: 

SCM Provider Integration Select my_github 
Repository Full Name Select the jfrog-pipelines-simple-example repository
Branch  Select master
Pipeline Config File Filter jfrog-pipelines-hello-world.yml 


Wait for the new Pipeline Source to sync.

Step 6 – MANUALLY TRIGGER THE PIPELINE 

From the Application tab click on Pipelines | My Pipelines menu item to see your newly created pipeline, then click on its name: my_first_pipeline.

JFrog Pipelines CI/CD My Pipelines

The resulting Pipeline History view displays a diagram of your pipeline and its steps. Note there is no information available in the Runs history since this pipeline has not yet been triggered. 

The example pipeline is configured to trigger whenever there is any new commit to the GitHub repo. For this demo, you can manually trigger and run your pipeline:

  1. Click the p1_s1 step in the pipeline diagram. This will display the information box for that step.
  2. In the step’s information box, click the Trigger this step button. 

You will see your pipeline diagram change as each step changes state. As the pipeline executes, its status is shown in the Runs history until it completes with Success.

JFrog Pipelines CI/CD Run Execution

That’s it! You’ve now loaded and run your first example workflow in Pipelines!

You can examine the results of each of your steps in the Pipeline Run Logs.

Now that you’ve experienced how easy it is, explore what else you can do with JFrog Pipelines through the Pipelines Developer Guide Quickstart in the JFrog Platform documentation.

 

You might also enjoy the eBook “6 Obstacles to Successful DevOps”