GitLab CI/CD Examples

Examples are a useful way of understanding how to implement GitLab CI/CD for your specific use case.

Examples are available in several forms. As a collection of:

  • .gitlab-ci.yml template files maintained in GitLab. When you create a new file via the UI, GitLab will give you the option to choose one of these templates. This will allow you to quickly bootstrap your project for CI/CD. If your favorite programming language or framework are missing, we would love your help by sending a merge request with a new .gitlab-ci.yml to this project.
  • Repositories with example projects for various languages. You can fork and adjust them to your own needs.
  • Examples and other resources listed below.

CI/CD examples

The following table lists examples for different use cases:

Use case Resource
Browser performance testing Browser Performance Testing with the Sitespeed.io container.
Clojure Test a Clojure application with GitLab CI/CD.
Code quality analysis Analyze your project’s Code Quality.
Container scanning Container Scanning with GitLab CI/CD.
Dependency scanning Dependency Scanning with GitLab CI/CD.
Deployment with dpl Using dpl as deployment tool.
Dynamic application
security testing (DAST)
Dynamic Application Security Testing with GitLab CI/CD.
Elixir Testing a Phoenix application with GitLab CI/CD.
Game development DevOps and Game Dev with GitLab CI/CD.
GitLab Pages See the GitLab Pages documentation for a complete example.
Java Deploy a Spring Boot application to Cloud Foundry with GitLab CI/CD.
JUnit JUnit test reports.
License management Dependencies license management with GitLab CI/CD.
Maven How to deploy Maven projects to Artifactory with GitLab CI/CD.
PHP Testing PHP projects.
PHP Running Composer and NPM scripts with deployment via SCP in GitLab CI/CD.
PHP Test and deploy Laravel applications with GitLab CI/CD and Envoy.
Python Test and deploy a Python application with GitLab CI/CD.
Ruby Test and deploy a Ruby application with GitLab CI/CD.
Scala Test and deploy a Scala application to Heroku.
Static application
security testing (SAST)
Static Application Security Testing with GitLab CI/CD.
Testing End-to-end testing with GitLab CI/CD and WebdriverIO.

Contributing examples

Contributions are welcome! You can help your favorite programming language users and GitLab by sending a merge request with a guide for that language. You may want to apply for the GitLab Community Writers Program to get paid for writing complete articles for GitLab.

Adding templates to your GitLab installation

If you want to have customized examples and templates for your own self-managed GitLab instance available to your team, your GitLab administrator can designate an instance template repository that contains examples and templates specific to your enterprise.

Other resources

This section provides further resources to help you get familiar with different aspects of GitLab CI/CD.

Note: These resources may no longer reflect the current state of GitLab CI/CD.

CI/CD in the cloud

For examples of setting up GitLab CI/CD for cloud-based environments, see:

Customer stories

For some customer experiences with GitLab CI/CD, see:

Getting started

For some examples to help get you started, see:

Implementing GitLab CI/CD

For examples of others who have implemented GitLab CI/CD, see:

Integrating GitLab CI/CD with other systems

To see how you can integrate GitLab CI/CD with third-party systems, see:

Mobile development

For help with using GitLab CI/CD for mobile application development, see: