GitLab CI/CD Examples
A collection of .gitlab-ci.yml
template files is maintained in GitLab. When you create a new file via the UI,
GitLab will give you the option to choose one of these templates.
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.
There's also a collection of repositories with example projects for various languages. You can fork an adjust them to your own needs.
Languages, frameworks, OSs
- PHP:
- Ruby: Test and deploy a Ruby application to Heroku
- Python: Test and deploy a Python application to Heroku
- Java:
- Scala: Test a Scala application
- Clojure: Test a Clojure application
- Elixir:
- iOS and macOS:
- Android: Setting up GitLab CI for Android projects
- Debian: Continuous Deployment with GitLab: how to build and deploy a Debian Package with GitLab CI
- Maven: How to deploy Maven projects to Artifactory with GitLab CI/CD
Game development
Miscellaneous
Test Reports
Collect test reports in Verify stage.
Code Quality analysis
(Starter) Analyze your project's Code Quality.
Static Application Security Testing (SAST)
(Ultimate) Scan your code for vulnerabilities
Dependency Scanning
(Ultimate) Scan your dependencies for vulnerabilities
Container Scanning
Scan your Docker images for vulnerabilities
Dynamic Application Security Testing (DAST)
Scan your app for vulnerabilities with GitLab Dynamic Application Security Testing (DAST).
Browser Performance Testing with Sitespeed.io
Analyze your browser performance with Sitespeed.io.
GitLab CI/CD for Review Apps
- Example project that shows how to use GitLab CI/CD for Review Apps.
- Dockerizing GitLab Review Apps
GitLab CI/CD for GitLab Pages
See the documentation on GitLab Pages for a complete overview.
Contributing
Contributions are very 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.