Azure DevOps Server (Formerly known as TFS)
- 2010, 2012, 2013, 2015 (up to Update 3), 2017, 2017 (Update 2), 2018, 2019, 2020
Azure DevOps Services (Formerly known as VSTS)
- Cloud, On-Premise: 4.x (except 4.4), from 5.x.x to 8.17.x
- GitHub Enterprise – 2.7 till 2.20, SaaS – 2.1
Azure DevOps – Jira and GitHub Integration Overview
In an Application Lifecycle Management (ALM) ecosystem, the choice of systems and the collaboration between the cross-functional teams play a great role. While the choice of systems impacts the productivity of a team, cross-functional collaboration helps the teams get complete context of the business requirements.
Best-of-breed systems such as Azure DevOps (Both Azure DevOps Server and Services, also known as TFS and VSTS), Jira, and GitHub bring rich functionalities to the ecosystem. By integrating Azure DevOps, Jira, and GitHub, the product development team will have real-time visibility into the defects logged by the QA team and commits made by the Development team. It is also easier for the Product Development team to enforce authentic commits against each work item, and access the changes/edits made to the commits files.
How Azure DevOps – Jira and GitHub integration is beneficial for an enterprise
- Track commit volume, track commit trends and edits/changes to commit files in real time
- Enforce authentic commits to make sure each commit is happening against a scheduled and open workitem
- Eliminate manual effort to close Jira or Azure DevOps workitems by automating the state transition on GitHub commit
With Azure DevOps, Jira, and GitHub integration, enterprises can:
How OpsHub Integration Manager integrates Azure DevOps, Jira, and GitHub
OpsHub Integration Manager integrates Azure DevOps (Both Azure DevOps Server and Services, also known as TFS and VSTS), Jira, and GitHub – all systems with each other bidirectionally. It ensures that all historical and current data is available to each user, in that user’s preferred system, with full context, in real-time. All the details related to a commit made against a work-item in Azure DevOps can be tracked from Azure DevOps itself. For example, for each commit that Development team makes in GitHub, GitHub synchronizes a ‘commit entity’ linked to the specific requirement id back to Azure DevOps. Each ‘commit entity’ includes information such as ‘who did the commit?’, ‘when was the commit done?’, and ‘which part of the code was committed?’. The Project Management team can also view the development progress and commit details from Azure DevOps itself.
Popularly synchronized entities
Use Case: Azure DevOps integration with Jira and GitHub
Problem statement: No control on backlogs getting committed – therefore, anyone can commit on a bug which is not even present in the active sprint.
Solution: If Azure DevOps, GitHub, and Jira are integrated using OpsHub Integration Manager, OpsHub Integration Manager will be able to track commits and send notifications to the relevant stakeholders when changes are made to the code base.
- During a Quality Assurance (QA) test, a quality control team member logs a ‘defect’ in Jira. The ‘defect’ also gets synchronized to Azure DevOps as a ‘bug’.
- The Development team receives the ‘requirements’ and starts work on it.
- The developer works to resolve the ‘bug’ in Azure DevOps.
- The Quality Control team, then, runs a test case against it. The test case passes.
- The quality Control team changes the status of ‘bug’ to ‘resolved’. OpsHub Integration Manager, automatically, makes this update to the associated defect in Jira.
- The Development team, then, commits the changes in GitHub.
Note: Any change made to the code base before the defect is resolved will be notified to the Development and Quality Control teams, giving them complete control to revert the change.
Benefits of integration for Azure DevOps, Jira, and GitHub users
Azure DevOps and Jira users
- Complete traceability from Azure DevOps and Jira to source code in GitHub
- Visibility into the volume, quality of commits, and commit trends in real-time
- Reduced dependency on manual communication to track the completion of a task
- Each commit can be traced back to its respective workitem at any given point in time from GitHub itself
- Enforced checkpoints ensure that no mandatory steps/checks are missed while making a commit – this leads to high success rate for commits