Source control management

3 minute read

The CloudBees Release Orchestration SaaS admin portal enables you to configure your source control management (SCM) tool, such as BitBucket, Perforce, GitBucket, or SVN. You can define where you want to save your source code, track and manage code changes, and version code.

The SCM tool enables multiple developers to work simultaneously, commit, and merge code without conflicts. You can also track and merge branches, and audit changes, to accelerate software delivery.

SCM tools contain sensitive information. All SCM authentication and credentials are captured and maintained in the administrative backend, which runs in a separate cloud namespace specific to a client, and is maintained by CloudBees Release Orchestration SaaS. Except for the credentials, everything is saved in a cloud database maintained by CloudBees Release Orchestration SaaS. This information, along with the credentials, is sent to the agent running on the client’s premise.

The CloudBees Release Orchestration SaaS admin portal does not store any customer information locally. It is directly registered against the AWS services.

Configuring an SCM tool

Configure the SCM tool access credentials to allow CloudBees Release Orchestration SaaS to connect and "listen" to new commits for each pipeline. You must create an SCM repository for every service in CloudBees Release Orchestration SaaS, which uses a specific repository URL and token to connect.

The agent uses this specific repository URL and token to connect to the repository and listen to the new commits in the repository. After you define a pipeline, the pipeline is executed on the agent according to your configuration.

To configure an SCM tool:

  1. From the CloudBees Release Orchestration SaaS Home page, select Admin  Settings.

  2. Select Source control management on the left pane.

  3. Select Add new to display a blank form. If there are no selected configurations, the blank form is displayed by default.

  4. Enter a Name and an optional Description.

  5. Select a Repository type from the options.

  6. Enter the Repository URL. This must be the complete URL of the repository.

  7. Select Auto fill. The SCM URL and Repository user are displayed.

  8. Select Do you want to get all the repositories inside <Repository user> if applicable.

  9. Select a Connection method, then:

    • If your Connection method is MANUAL, enter your Access token.

    • If your Connection method is OAUTH, select Connect with <Repository type>.

  10. Select Save.

    Source control management
    Figure 1. Configuring SCM

Your SCM tool configuration is saved and listed on the right pane.

Select Reset to clear your selection at any time.

Updating a configuration

You can update the SCM configuration.

To update your SCM configuration:

  1. From the CloudBees Release Orchestration SaaS Home page, select Admin  Settings.

  2. Select Source control management on the left pane.

  3. Select a configuration on the right pane.

  4. Make any updates.

  5. Select Update.

Your SCM configuration is updated.

Deleting a configuration

To delete your SCM configuration:

  1. From the CloudBees Release Orchestration SaaS Home page, select Admin  Settings.

  2. Select Source control management on the left pane.

  3. Select a configuration on the right pane.

  4. Select Trash can Delete.

  5. Select DELETE.

Your SCM configuration is deleted.

Configuring a pipeline repository

Pipeline-as-code is a practice of defining pipelines through source code, which can be stored in an source control management (SCM) repository to manage changes. In CloudBees Release Orchestration SaaS, users can define pipelines in YAML format and store them in a repository to synchronize pipeline creation and updates in Pipeline composer.

Before you configure a GitHub repository for pipelines, set up your GitHub branch as follows:

  • The repository branch must have a .releaseiq folder in the root path with settings and pipelines as subfolders. All folder names are case-sensitive.

  • The settings subfolder contains all settings-as-code files

  • The pipelines subfolder contains all pipeline-as-code files

  • Any updates to pipeline definition files in the repository, once configured, are automatically synced to create or update the corresponding pipelines in Pipeline composer.

To configure a GitHub repository for pipelines:

  1. From the CloudBees Release Orchestration SaaS Home page, select Admin  Settings.

  2. Select Source control management on the left pane.

  3. Select an SCM on the right pane, or configure a new SCM, if necessary.

  4. Select Configure pipeline repository.

    Pipeline repository
    Figure 2. Highlighted Configure pipeline repository
  5. Select the Repository Name and Branch Name from the options.

  6. (Optional) Select Add to add another repository, or select the to remove a repository.

  7. Select Save.

Your GitHub repository for pipelines is configured.