DevOps data import
eazyBI for Jira
On Jira Data Center and Server, data import from Bitbucket, Bamboo, and Jenkins is available.
On Jira Cloud, data import from Bitbucket Cloud, Jenkins, and GitHub is available.
On this page:
DevOps source data
eazyBI imports DevOps data related to imported issues and projects. Select issue types [1] associated with incidents we should use for pre-defined DevOps calculations. Other issue types will be considered as Change issues in the pre-defined DevOps calculations. Then select the needed DevOps integrations [2] and specify the credentials for each.
Bitbucket and Bamboo for Jira Server and Data Center
In case there are several Bitbucket or Bamboo application links in your Jira instance, you can choose from which server you wish to import the data to eazyBI. Bitbucket and Bamboo project names that match Jira project names will be offered for import automatically. If the names differ, you can search the Bitbucket [1] and Bamboo projects [2] with issue links to projects imported in this eazyBI account.
Bitbucket and Bamboo have close integration with Jira. We can detect and import PR and builds if they are related to Jira issues.
The DevOps data are imported incrementally, and only the new data will be processed with each import.
If Jira, Bitbucket, and Bamboo do not have common user management, then the user who has authorized eazyBI data import in the account, before importing DevOps metrics to eazyBI, has to go to one of Jira issues and in the development properties section authorize the access by clicking on the Bitbucket / Bamboo property.
To also allow access from Bamboo to Jira, from the Bamboo build screen user has to navigate to the Issue tab and click on Login & approve.
The above actions need to be performed by each user who has authorized import in any account that imports DevOps metrics.
Bitbucket Cloud
Please enable the BitBucket Cloud data import for your Jira Cloud site in eazyBI advanced settings:
[jira.devops.bitbucket_cloud] enable = true
Once the BitBucket Cloud data import is enabled, you can select Bitbucket Cloud data import in the account. Please Authorize Bitbucket Cloud. eazyBI will show a user [1] who authenticated the source and use this authentication for data import. You can reset authorization when it is needed. Specify Bitbucket Cloud projects [2] eazyBI should import into the account.
eazyBI imports data from builds and pull requests containing issue key in the pull request name or commit messages to match imported Jira data.
Jenkins
Please enable the Jenkins data import for your Jira Cloud site in eazyBI advanced settings:
[jira.devops.jenkins] enable = true
For Data Center and Server, the integration will be available automatically.
Once the Jenkins data import is enabled, you can select Jenkins data import in the account. For data import from Jenkins, specify the connection to Jenkins [1]: Jenkins URL, Jenkins username, and API token or password. Then select specific Jenkins Builds [2] and/or Jenkins Projects [3] with references to imported Jira issues.
If you are using a firewall for your Jenkins server, add the eazyBI IP addresses to allow importing data from Jenkins into eazyBI for Jira Cloud: 130.211.91.121,35.233.55.20,35.189.226.204,34.78.73.253
eazyBI uses GET requests to access Jenkins jobs and builds.
eazyBI imports data from builds containing pull requests using issue keys from the pull request name or commit messages to match imported Jira data.
GitHub
Please enable the GitHub data import for your Jira Cloud site in eazyBI advanced settings:
[jira.devops.github] enable = true
Once the GitHub data import is enabled, you can select GitHub data import in the account. Please Authorize GitHub. eazyBI will show a user [1] who authenticated the source and use this authentication for data import. You can reset authorization when needed. Specify GitHub repositories [2] eazyBI should import into the account.
eazyBI imports data from builds and pull requests containing issue key in the pull request name or commit messages to match imported Jira data.
Measures
Issue level metrics will link to the issues that have the issue key specified in Pull Requests, Commit messages, and related to Builds/Deployments.
Min and Max values display on issue level finding the pull requests and builds of the issue. The average values show only on the Project level as one pull request can be related to several issues, and several issues can link to one pull request. On the Project level, the average calculation finds the total time as described for each measure and divides it by total pull requests per project.
Build min, max, and avg execution duration | Build execution time in seconds. Used with the Time dimension, grouped by build closed dates. Sources: Bamboo, Bitbucket Cloud, Jenkins, GitHub |
---|---|
Builds created | Count of builds for pull requests related to the issue. Used with the Time dimension, grouped by build created dates. |
Builds successful | Count of successful builds for pull requests related to the issue. Used with the Time dimension, grouped by build closed dates. |
Builds failed | Count of failed builds for pull requests related to the issue. Used with the Time dimension, grouped by build closed dates. |
Deployment min, max, and avg execution duration | Bamboo deployment execution time in seconds. |
Deployments created | Count of deployments for builds related to the issue. |
Pull request min, max, and avg build wait time | The time between pull request closed date and build creation date. Used with the Time dimension, grouped by pull request created dates. |
Pull request min, max, and avg deploy wait time | The time between pull request closed date and deployment creation date. Sources: Bitbucket Cloud. In server both Bitbucket and Bamboo are needed to import measures |
Pull request min, max, and avg development time | The time between the first commit time and pull request creation in Bitbucket. Used with the Time dimension, grouped by pull request closed dates. Sources: Bitbucket, Bitbucket Cloud, GitHub |
Pull request min, max, and avg review time | The time between pull request created and closed dates. Used with the Time dimension, grouped by pull request closed dates. Sources: Bitbucket, Bitbucket Cloud, GitHub |
Pull requests created | Pull requests created count. Used with the Time dimension, grouped by pull request created dates. Sources: Bitbucket, Bitbucket Cloud, GitHub |
Pull requests merged | Pull requests merged count. Used with the Time dimension, grouped by pull request closed (pull request merged time) dates. Sources: Bitbucket, Bitbucket Cloud, GitHub |
Pull requests declined | Pull requests declined count. Used with the Time dimension, grouped by pull request closed dates. Sources: Bitbucket, Bitbucket Cloud, GitHub |
Average change build lead time | The average time it takes from the first commit until the build is completed. Sources: Bamboo, Bitbucket Cloud, Jenkins, GitHub |
Average change deploy lead time | The average time it takes from the first commit until the deploy completed. Sources: Bamboo, Bitbucket Cloud |
Average Recovery Time | Average resolution days for incidents (issues with pre-defined incident issue types). Used with the Time dimension, grouped by incident resolution dates. Sources: Jira |
Average Time to Change | Average days from issue creation to resolution for issues that are not with Incident issue type. Used with the Time dimension, grouped by change resolution dates. Sources: Jira |
Build change failure rate % | How often are incidents discovered during build creation? Incidents raised divided by Builds created. Sources: Jira for Incidents and Bamboo, Bitbucket Cloud, Jenkins, GitHub for builds |
Incidents raised | Issues created in Jira with pre-defined Incident issue types. Used with the Time dimension, grouped by incident creation dates. Sources: Jira |
Incidents resolved | Jira issues resolved with pre-defined Incident issue types. Used with the Time dimension, grouped by incident resolution dates. Sources: Jira |
Open incidents | Calculates a number of unresolved incident at the end of the corresponding Time dimension period (as Incidents raised minus Incident resolved since the beginning of the time until the end of the selected time period). Sources: Jira |
Dimensions
eazyBI creates new calculated members in the Issue Type dimension
Change issue types | All issue types that are not specified as incident issues in the DevOps import screen. |
---|---|
Incident issue types | An aggregate of all issue types that are defined as incidents in DevOps import screen. |
There are several DevOps data related dimensions that are not visible in the UI. They are listed here so you can use them in the calculations:
Pull Request (hidden) | Source: Sources: Bitbucket, Bitbucket Cloud, GitHub |
---|---|
Build Result (hidden) | Source: Bamboo, Bitbucket Cloud, Jenkins, GitHub |
Release (hidden) | Source: Bamboo, Bitbucket Cloud |
Environment (hidden) | Source: Bamboo, Bitbucket Cloud |
Deployment (hidden) | Source: Bamboo, Bitbucket Cloud |
Sample reports and dashboard
If you have selected to Import sample reports, eazyBI will create several DevOps report examples in a new folder named Samples DevOps. In this folder, you will find a collection of most essential DevOps metric examples - from Build, Deployment frequency to Change lead time, failure rate, mean time to recovery. The metrics combine from already existing Jira issue data in the cube (Incident and Change issue life cycle) as well as BitBucket, Bamboo, and Jenkins data described above. eazyBI will automatically filter the reports to show the top three projects.
eazyBI also organizes the sample reports in one SampleDevOps metrics dashboard. It gives an overview of the DevOps processes in these top three DevOps projects.
Standard DevOps metrics require data of the full Issue life cycle. eazyBI will create measures and sample reports for imported data set - Pull requests, and Builds. Some measures and reports require both data sets and will not be created if some data is missing. The DevOps dashboard will be created if there are data for the full request life cycle.
If you would like to customize some reports, then save them and change the name (as eazyBI overwrites the default sample reports during each Jira import).