How do we extract the Azure DevOps pipeline stages into Jira?
Azure Pipelines supports stages as a way to define and visualize the various phases of your continuous integration and continuous deployment (CI/CD) pipeline. Each stage represents a logical boundary in your pipeline where specific tasks or jobs are executed, typically corresponding to a specific environment (e.g., development, testing, staging, production).
The flexibility of Azure Pipelines allows you to define stages in a way that best fits your deployment workflow and organizational needs.
In its turn, Jira provides predefined types of stages (environments): unmapped
, development
, testing
, staging
, and production
, which are shown on Development page in Jira.
When some Azure DevOps stage has been triggered our application sends the webhook information to Jira, referring this stage to one of the Jira environment types. In other words, we identify the stages on Azure DevOps side and regroup them into allowable Jira stages (environments). This grouping is made based on Azure DevOps environment types and stage names.
Here is the example of stages grouping:
const keywordMapping: Record<string, JiraTypes.ReleaseEnvironment> = {
"dev": AdoJiraDeploymentEnvironment.Development,
"development": AdoJiraDeploymentEnvironment.Development,
"test": AdoJiraDeploymentEnvironment.Testing,
"testing": AdoJiraDeploymentEnvironment.Testing,
"qa": AdoJiraDeploymentEnvironment.Testing,
"uat": AdoJiraDeploymentEnvironment.Testing,
"stage": AdoJiraDeploymentEnvironment.Staging,
"staging": AdoJiraDeploymentEnvironment.Staging,
"prod": AdoJiraDeploymentEnvironment.Production,
"production": AdoJiraDeploymentEnvironment.Production,
};
Based on this grouping Jira reproduce Azure DevOps stages in its environment and arranges deployments on the Development page according to the types of stages it provides. If the user-defined stage in Azure DevOps doesn't have a corresponding mapping to Jira stages, it is shown in Others section (unmapped
).
Updated: