GitLab for CI/CD

adopt

GitLab is an application for all stages of the DevOps lifecycle.

GitLab is already acting as our Git server but it can do much more than that. Besides offering an Issue Tracker and Version Control, it also offers functionality for Continuous Integration (CI), Packaging (like Container Image Building) and release automation (like Continuous Delivery).

In terms to CI/CD, we are using GitLab for:

  • building and packaging our Docker images
  • building, testing and deploying all our React and Node.js projects
  • for deployments of other, simple projects

At this moment, we still rely on Jenkins for our Magento and TYPO3 builds and deployments as we have a battle proven process here but we continue to consider GitLab for them.

Revisions:

assess | May 2018

GitLab is an application for all stages of the DevOps lifecycle.

GitLab is already acting as our Git server but it can do much than that. Besides offering an Issue Tracker and Version Control, it also offers functionality for Continuous Integration (CI), Packaging (like Container Image Building) and release automation (like Continuous Delivery).

Right now, we are looking into these areas:

  • We use GitLab to build/package our Docker images
  • We are testing GitLab for first project deployments
  • We look at running Continuous Integration (think automated tests) inside GitLab

If GitLab stands the test, we may rely on it more for our CI/CD processes across software stacks.