DevOps

Introducing Git Repos and Issue Tracking

Share this post:

Git Repos and Issue Tracking is a new cloud-hosted Git repository capability that is included in IBM Bluemix Continuous Delivery.  It supports social coding and provides a modern developer experience where you can effectively work in teams and produce better software faster.

Getting started

The simplest way to get started with Git Repos and Issue Tracking is to create a toolchain that includes the tool integration.  The Simple Cloud Foundry toolchain (v2) template creates such a toolchain:

To add Git Repos and Issue tracking to a toolchain that has already been created, you can find the tool integration in the tool catalog and add it:

From the catalog, click Git Repos and Issue Tracking, name your repository, and configure it.  That’s it.

Git Repos and Issue Tracking is based on GitLab

When it was time to implement a new cloud-hosted Git capability for Bluemix Public, the IBM DevOps Services team concluded that it made more sense to go with an existing Git solution rather than develop our own.  We had strict requirements for the new capability.  It must be rock solid and highly available. Upgrading should not involve downtime, and fail-over redundancy must be built into the architecture.

GitLab Community Edition (CE) is an open source project with a permissive license and a mature and seasoned code base. Because GitLab fulfilled our requirements and more, we decided to base Git Repos and Issue Tracking on GitLab.

Merge Requests, kanban and more

It’s no secret that Git repos and social coding practices are a de facto development standard. Teams must quickly and easily communicate, share code, review code, and build and deploy apps.  Because Git Repos and Issue Tracking is based on GitLab, it provides a familiar user interface and the tools that developers expect, including issue tracking, merge requests, commit statistics, and graphs.  If you have used GitLab, then you will immediately feel at home.

Through merge requests, other people can work on your code and submit changes for review in a structured manner. Merge requests are the fundamental building block of social coding.  It’s easy to browse these and other commits to the code.

Using the built-in issue tracker, you can organize your work in progress and view it as a list or in an issue board.  The issue board provides a familiar kanban interface, allowing you to set up your own columns and drag tiles to match work flowing through your project.

Architecture

Git Repos and Issue Tracking is implemented as an active/active configuration.  Load balancing is done by high availability proxy pairs that sit in front of a GitLab application cluster.  Machines in the cluster use a shared disk to store repos and other shared data.  As you might expect, the disk is simultaneously mounted on multiple servers, and a clustered file system protocol allows concurrent access. At periodic intervals, incremental backups store data off site.

When you log in to Bluemix, you are logged into Git Repos and Issue Tracking. Single sign-on is provided by a CAS (Central Authentication Service) that communicates with Bluemix authorization.  As a result, Git Repos and Issue Tracking is convenient and easy to use with Bluemix.

Of course, Git Repos and Issue Tracking is monitored to make sure that it runs smoothly.  Ping monitors, CPU monitors, storage monitors, and other system level checks make sure that the site is up and that the machines are working.  More sophisticated consumption monitors ensure that UI and Git operations are functioning well.

Try it Now

To try it, go to https://console.ng.bluemix.net/devops/create and create a toolchain by using the Simple Cloud Foundry (v2) toolchain template.  You’ll see cards for Git Repos and Issue Tracking as part of your new toolchain.  To use them, all you need to do is click them.

Happy coding!

More What's New Stories

Using the IBM Cloud Provider to Provision Infrastructure

The IBM Cloud Provider is a Terraform plugin that lets you provision and orchestrate IBM Cloud resources. Terraform is a popular opensource infrastructure as code (IaC) solution supporting all the leading public cloud providers. Terraform templates describe the "to be" state of the infrastructure you want. The terraform engine takes a template and does the orchestration needed to transform the "as is" state to the "to be".

Continue reading

Share your code with the new Deploy to Bluemix button

Do you have sample applications built for IBM Bluemix that you want to share with others? It’s now a whole lot easier, with the introduction of the new Deploy to Bluemix button.

Continue reading

Getting started with Kubernetes and the Secure Kubernetes toolchain

The IBM Garage Method recently published the introduction "Manage highly available apps in Docker containers and Kubernetes clusters on IBM Cloud". To complement this introduction, the IBM Garage Method now has a tutorial on how to create and use the Secure Kubernetes toolchain.

Continue reading