CI/CD Connection Profiles

The following topics describe connection profiles for continuous integration and continuous deployment (CI/CD) services.

ConnectionProfile:Atlassian Bitbucket

Atlassian Bitbucket enables you to manage source code, perform code reviews, and control access with branch permissions.

For more information about this plug-in, see Control-M for Atlassian Bitbucket.

The following example shows how to define a connection profile for an Atlassian Bitbucket job.

Copy
"AtlassianBitbucketCCP"
{
   "Type": "ConnectionProfile:Atlassian Bitbucket",
   "Bitbucket REST URL": "https://api.bitbucket.org/2.0",
   "Account Email": "<Email>",
   "Api Token": "<Token>",
   "HTTP Codes": "429",
   "Rerun Interval": "10",
   "Attempts Reruns": "3",
   "Connection Timeout": "60",
   "Description": "",
   "Centralized": true
}

The following table describes Atlassian Bitbucket connection profile parameters.

Attribute

Description

Bitbucket REST URL

Defines the URL for the REST API endpoint in Bitbucket.

Default: https://api.bitbucket.org/2.0

Account Email

Determines the email of the authenticated user in Bitbucket.

Api Token

Defines the API authentication key from your Bitbucket account.

You can use Secrets in Code to hide this value in the code.

HTTP Codes

Defines the HTTP codes that trigger a rerun of a job step if detected in the response.

Multiple HTTP codes must be separated with a space.

You cannot rerun a step with HTTP codes when you perform manual execution, such as rerun from point of failure.

Default: 429

Rerun Interval

Determines the number of seconds to wait before Control-M reruns the job step.

Default: 10

Attempts Rerun

Determines the number of attempts to rerun a job step.

Default: 3

Connection Timeout

Determines the number of seconds to wait after Control-M initiates a connection request before a timeout occurs.

Default: 30

Centralized

Determines whether to create a centralized connection profile, which is stored in the Control-M/EM database and is available to all Agents.

You must set this parameter to true.

ConnectionProfile:Azure DevOps

Azure DevOps provides an integrated set of services and tools to manage software projects, from planning and development through testing and deployment. Azure DevOps delivers services through a client/server model.

For more information about this plug-in, see Control-M for Azure DevOps.

The following examples show how to define a connection profile for an Azure DevOps job:

 

Copy
"AZUREDEVCCP"
{
   "Type": "ConnectionProfile:Azure DevOps",
   "Azure Devops Token": "*****",
   "Azure DevOps URL": "https://dev.azure.com",
   "Organization ID": "organization2023",
   "Azure Username": "AZusername",
   "Identity Type": "PAT",
   "Description": "",
   "Centralized": true
}

 

Copy
"AZUREDEVCCP"
{
   "Type": "ConnectionProfile:Azure DevOps",
   "Azure DevOps URL": "https://dev.azure.com",
   "Organization ID": "organization2023",
   "Azure Login URL": "https://login.microsoftonline.com"
   "Tenant ID": "************************************"
   "Scope": "https://app.vssps.visualstudio.com/.default"
   "Application ID": "************************************"
   "Azure DevOps URL": "https://dev.azure.com"
   "Client Secret": "*****",
   "Identity Type": "PRINCIPAL",
   "Description": "",
   "Centralized": true
}

The following table describes Azure DevOps connection profile parameters.

Parameter

Description

Azure DevOps URL

Defines the Azure DevOps source hostname.

Default: https://dev.azure.com

Organization ID

Defines the name of the Azure DevOps organization.

Identity Type

Determines one of the following authentication methods:

  • PRINCIPAL (Service Principal): Access protected Azure services and resources based on roles assigned to the Service Principal by the Azure administrator. The Service Principal is also known as an App Registration. This method authenticates with the Azure login URL, Tenant ID, Scope, Application ID, and Client Secret.

  • PAT (Personal Access Token): Access protected Azure services and resources using a token created and managed by the Azure platform, without login credentials. This method authenticates with the Azure Username and the Azure Devops Token.

Azure Username

Defines the Azure DevOps username.

Azure DevOps Token

Determines the Personal Access Token (PAT), with a defined expiration date and scope of access, that connects to an Azure DevOps job. You can retrieve the token from Azure DevOps Configurations.

You can use Secrets in Code to hide this value in the code.

By default, each authentication type uses an Azure token that is valid for 24 hours. You can extend token lifetimes through Azure.

Azure Login URL

Defines the base URL of the Microsoft Entra/Azure AD authentication endpoint.

Tenant ID

Defines the Azure tenant ID for your organization.

Scope

Defines the scope, which limits the operations you can perform and the roles you can use in the Azure Devops plug-in, as follows:

https://<resource-domain>/default

https://app.vssps.visualstudio.com/default

Application ID

Defines the Registered App for the Azure service in your Microsoft Entra/Azure AD tenant. The corresponding Service Principal must be assigned the Owner or Contributor role for the Azure service.

Client Secret

Defines the password associated with the Service Principal/registered application.

Centralized

Determines whether to create a centralized connection profile, which is stored in the Control-M/EM database and is available to all Agents.

You must set this parameter to true.

Connection Profile:CircleCI

CircleCI enables you to automate software development build, test, and deployment processes.

For more information about this plug-in, see Control-M for CircleCI.

The following example shows how to define a connection profile for a CircleCI job:

Copy
"CIRCLE"
{
   "Type": "ConnectionProfile:CircleCI",
   "CircleCI URL": "https://circleci.com/api/v2",
   "API Key": "*****",
   "Connection Timeout": "50",
   "Description": "",
   "Centralized": true
}

The following table describes CircleCI connection profile parameters.

Parameter

Description

CircleCI URL

Defines the URL of the CircleCI service.

Default: https://circleci.com/api/v2

API Key

Defines an API token for this account that is generated by the CircleCI service.

You can use Secrets in Code to hide this value in the code.

Connection Timeout

Determines the number of seconds to wait after Control-M initiates a connection request before a timeout occurs.

Default: 50

Centralized

Determines whether to create a centralized connection profile, which is stored in the Control-M/EM database and is available to all Agents.

You must set this parameter to true.

Connection Profile:GitHub Actions

GitHub Actions enables you to automate workflows across the software life cycle.

For more information about this plug-in, see Control-M for GitHub Actions.

The following example shows how to define a connection profile for a GitHub Actions job:

Copy
"GITHUB"
{
  "Type": "ConnectionProfile:GitHub Actions",
  "GitHub URL": "https://api.github.com",
  "Authentication Method": "Classic Token",
  "Token": "<Token>",
  "HTTP Codes": "429",
  "Rerun Interval": "10",
  "Attempts Reruns": "3",
  "Connection Timeout": "60",
  "Description": "",
  "Centralized": true
}

The following table describes GitHub Actions connection profile parameters.

Parameter

Description

GitHub URL

Defines the URL for the REST API endpoint in GitHub.

Default: https://api.github.com

Authentication Method

Determines one of the following token types for authentication:

  • Classic Token

  • Fine Grained Token

Token

Defines the token used for authentication.

You can use Secrets in Code to hide this value in the code.

HTTPS Codes

Defines the HTTP codes that rerun a job step if it is detected in the response.

Multiple HTTP codes must be separated with a space.

You cannot rerun a step with HTTP codes when you perform manual execution, such as rerun from point of failure.

Default: 429

Rerun Interval

Determines the number of seconds to wait before Control-M reruns the job step.

Default: 10

Attempts Rerun

Determines the number of attempts to rerun a job step.

Default: 3

Connection Timeout

Determines the number of seconds to wait after Control-M initiates a connection request before a timeout occurs.

Default: 100

Centralized

Determines whether to create a centralized connection profile, which is stored in the Control-M/EM database and is available to all Agents.

You must set this parameter to true.

Connection Profile:Jenkins

Jenkins enables you to automate building, testing, and deploying code for repetitive tasks in the software deployment process.

For more information, see Control-M for Jenkins.

The following example shows how to define a connection profile for a Jenkins job:

Copy
"JENKINS_RELEASE_TEAM":
{
   "Type": "ConnectionProfile:Jenkins",
   "Jenkins URL": "https://vl-tlv-ctm-bl30.adprod.bmc.com",
   "Username": "johndoe",
   "User API Token": "*****",
   "Connection Timeout": "100",
   "Description": "",
   "Centralized": true
}

The following table describes Jenkins connection profile parameters.

Parameter

Description

Jenkins URL

Defines the Jenkins source hostname.

https://<Server Name>:8443

Username

Defines the Jenkins username.

User API Token

Defines the API token that is generated by Automation API.

You can use Secrets in Code to hide this value in the code.

Connection Timeout

Determines the number of seconds to wait after Control-M initiates a connection request before a timeout occurs.

Default: 100

Centralized

Determines whether to create a centralized connection profile, which is stored in the Control-M/EM database and is available to all Agents.

You must set this parameter to true.