GitLab CI/CD: integrated DevOps platform

GitLab CI/CD (2012 announced, 2015 Runner stable) by GitLab Inc: CI/CD native in GitLab. YAML pipelines, Docker/Kubernetes runners, Auto DevOps, package registry. Self-hosted alternative to GitHub Actions.

Open SourceWeb GitLabGitLab CI/CDCI/CDDevOpsGitOpen Source

DevOps platform

GitLab (2011, Dmitriy Zaporozhets, Sid Sijbrandij) is born as a self-hosted GitHub clone. From 2012 it introduces GitLab CI as integrated feature; GitLab Runner stable in 2015. Native integration distinguishes GitLab from competition: a single UI manages repo, CI/CD, container registry, package registry, issue tracking, security scanning, monitoring.

The model

  • .gitlab-ci.yml — YAML pipeline in repo root
  • GitLab Runner — executor (shell, Docker, Kubernetes, VirtualBox, SSH) registrable
  • Jobs grouped in sequential stages
  • Artifacts shared between jobs
  • Cache for speed
  • Environment — dev/staging/prod with protection
stages: [build, test, deploy]

build:
  stage: build
  image: node:20
  script:
    - npm ci
    - npm run build
  artifacts:
    paths: [dist/]

test:
  stage: test
  image: node:20
  script: [npm test]

deploy:
  stage: deploy
  only: [main]
  script: [./deploy.sh]
  environment:
    name: production

Distinctive features

  • Auto DevOps — auto-generated pipeline for detected framework
  • Review App — every MR has temporary environment
  • Merge Train — serial pipelines on main to avoid collisions
  • Child pipelines — dynamic pipeline generation
  • Parent-child / trigger — multi-project pipeline
  • CI/CD Catalog (2024+) — template marketplace
  • DAST/SAST/Secret Detection — built-in scanning (part Ultimate tier, some OSS)
  • Kubernetes integration — Agent and Auto Deploy
  • GitLab Runner Operator — K8s autoscaling

Editions

  • Community Edition (CE) — MIT, free self-hosted
  • Enterprise Edition (EE) — proprietary, additional features (Audit, advanced SAML SSO, Geo replica)
  • GitLab.com — SaaS (free, premium, ultimate tier)
  • GitLab Dedicated — single-tenant SaaS (2023+)

Comparison with GitHub Actions

GitLab CI/CDGitHub Actions
Self-hostedFree (CE)Hosted free, self-hosted runner
Pipeline YAMLYesYes
K8s RunnerNativeARC (2023)
MarketplaceCI/CD Catalog (2024)Marketplace (20k+ 2019+)
Auto-deployAuto DevOpsNo equivalent

In the Italian context

GitLab is very widespread in Italy where it is preferred self-hosted:

  • Banks and insurance — self-hosted GitLab for data sovereignty
  • Digital PA — Italian PA teams use GitLab (SPID DevOps, MaaS, Developers Italia aggregator)
  • Universities and research centres — free GitLab CE
  • Tech SMEs — GitHub Enterprise alternative
  • MSPs — GitLab Runner K8s for clients

Often combined with GitLab Runner on K8s, Harbor registry, Vault secrets, ArgoCD for downstream GitOps.


References: GitLab CI introduction (2012). GitLab Runner stable (2015). GitLab Inc (Dmitriy Zaporozhets, Sid Sijbrandij). CE MIT, EE proprietary. Features: Auto DevOps, Review App, Merge Train, DAST/SAST. CI/CD Catalog (2024).

Need support? Under attack? Service Status
Need support? Under attack? Service Status