Dev-Release Tracking using Bitbucket and Kovair Integration

Dev-Release Tracking using Bitbucket and Kovair Integration

Release management is the planning, implementing and monitoring of software development, and the IT infrastructure involved in the process. It deals with developing software solutions, web applications, updates, as well as Change Management and Configuration Management.

The term ‘Release’ is a multi-faceted activity, combining business perspective with detailed technical issues of the development cycle in an IT infrastructure.

To help explain, let us look at the example of a standard release process. Typically, the nature of a release largely depends on the complexity of a software application, which contains several development commits of the same or different files.

Release management aggregates all the relevant information associated with an upcoming release. In addition to ensuring stability without causing any delays in the release, the process also needs to send out appropriate warnings whenever an un-reviewed code file, open pull requests, issues related to failed builds are scheduled for release.

In order to cater to these needs, we need a Release Management tool that will help to keep track of all the development segments, while finding a more systematic way to release work. Currently, there are numerous release management tools available in the market, like BMC, CA, IBM Urban Code Release.

The basis of a stable release primarily depends on the stability of the generated code files. For that, we need a Source Control to keep track of any changes made in the code file. This enables developers to easily recover mistakes, review past changes, collaborate with other developers, maintain code backups, and automate code-related tasks.

Some of the popular tools that we know of already are Git, GitHub, Mercurial, Subversion, and TFS.

However, in order to expand the role of potential participants involved in the process of development and to improve contribution towards real time collaboration, we need a source control system that stores source code files on cloud.  Storing source code files on the cloud also makes them easily accessible on the go.

Such cloud based SCM repositories leverage the cloud-based activities of users without compromising on security. Bitbucket is one such cloud based SCM tool featuring a flexible API structure. When integrated with any release management solution, it is capable of amplifying Dev Release collaboration to achieve a stable and timely release.

Bitbucket is a Lot More than Just Cloud Based SCM

Indeed, the advantages of using Bitbucket outweighs the primary nature of it being just another cloud based SCM in the market.

Bitbucket provides unlimited repositories free of cost, making it popular among users of small teams. Its pull request mechanism enables users to view all commits within that request in addition to allowing multiple reviewers into a single pull request and generating high quality code. Hence, it is possible to develop dynamic out-of-the-box code reviews with just an SCM system.

Last but not the least; Bitbucket strives to avoid code distraction caused by incorrect commits at wrong places. It provides a powerful access control mechanism through which one can set access permissions for a particular branch of user group(s) or individual(s).

How the Integration can help

In case of release and configuration management, a typical user may become confused with the choice of multiple vendors offering eye-popping features.

It gives rise to problems such as multi tool environment that inevitably leads to siloed development processes and counter-productive results.

To tackle the challenge, integration is a necessity that involves two primary approaches, which are as follows –

  • The first approach is building a point-to-point integration solution between numerous components within a business environment.

Although this is a linear approach, which enables communication between a pair of applications, it is neither future-proof nor scalable. Too many point-to point integrations between each pair of tools can result to a tangled and fragile system that is troublesome to maintain. As business requirements inevitably change, minor modifications within the architecture can become strenuous and difficult.

  • The second approach on the other hand, adopts the architecture of the age-old bus topology network.

It incorporates the same core concept used in the integration of Enterprise tools. The approach is service driven by nature and is referred to as the Enterprise Service Bus – ESB architecture. It allows users to integrate different applications by having a communication bus interconnected in between.  The applications interact with each other via a mediator bus that decouples the systems from each other and allows them to communicate without dependency or knowledge of other systems on the bus.

Kovair Omnibus Integration is an SOA based ESB platform, which helps to integrate the best of breed tools from different third party vendors with minimal effort.

How Kovair Omnibus Integration works with Bitbucket

How Kovair Omnibus Integration works with Bitbucket

  1. Automatic Synchronization

Using Kovair Omnibus, you can synchronize the projects and the repositories created in Bitbucket directly to the Release Management Tool.

Add Branches, Commits, Files, and File versions of Bitbucket through Omnibus.

A Release when created in a Release management tool, automatically adds a Branch to the Bitbucket, under which you can add files and commit.

Through Bitbucket, one can also keep track of the development commits for a particular Release.

  1. Easily Configurable

The Entire integration setup is easy to configure. No need of custom codes for establishing relationship maps between Bitbucket and the target tool. The entire configuration is through Kovair Omnibus user-friendly interface only. In addition, the integration process will be monitored directly from Kovair application using Kovair Omnibus Sync Monitor.

  1. View Hierarchical Structure of Artefacts

One can directly view the hierarchy of Bitbucket artefacts from within the Kovair application. You do not have to log in to the tool in case of Bitbucket Integration with Kovair.

Kovair Traceability View is capable of showing the entire hierarchy of Bitbucket artefacts. We can also track all development commits along with their associated files and file versions that happen in Bitbucket.

Hierarchical Structure of Artefacts

  1. Control Access Restrictions without visiting Bitbucket Tool

Kovair Bitbucket integration is capable of controlling access rights for a particular Release or Branch directly from Kovair UI. It provides access to one user or group at a time.  In that case, when a particular user or a group gets access to make changes in a locked Branch, then it prevents the other users or groups from making any changes or commit files in Bitbucket. You can remove the restriction from a particular branch by unlocking the Release or Branch option.

  1. Send Notifications to People Authorized

One can also set automated workflow rules or Policy. To harness the effectiveness of such automated business rules, there are instances where the user might want to limit the number of commits made in Bitbucket.

If someone wants to set a rule for a particular branch, then it is easy to limit the number of commits to a maximum of 10, exceeding, which, a flag should be set in order to notify the concerned stakeholders.

Kovair Escalation Policy achieves the same and sends a mail to the concerned person if such thresholds exceeds to match any other provided condition.

Conclusion

To conclude, one can easily track development fragments from a Release management tool using Kovair Omnibus Integration as a simple configuration setup. You can control branch permissions, provide granular access control to teams, and ensure that the right people get permission to make changes in a code. Kovair Omnibus integration makes collaboration with team members easier.

It's only fair to share...

Sri Pramoda is the Team Leader of the QA team here at Kovair. She takes care of the quality and stability of various Kovair products and integrated testing framework for clients. Apart from this, she also enjoys gardening and listening to music.