Skip to content

GitLab CI

Auto-Detected Metadata

Repository - From CI_PROJECT_PATH (e.g., group/project)
Git SHA - From CI_COMMIT_SHA
Git Branch - From CI_COMMIT_REF_NAME
Build Number - From CI_PIPELINE_IID
Build URL - From CI_PIPELINE_URL
User - From GITLAB_USER_LOGIN
User Email - From GITLAB_USER_EMAIL
User Name - From GITLAB_USER_NAME
Product Name - Extracted from project path (if not specified)
Version - Uses short SHA as fallback (if not specified)

Installation

Add this to your before_script:

before_script:
  - curl -L https://github.com/versioner-io/versioner-cli/releases/latest/download/versioner-linux-amd64 -o /usr/local/bin/versioner
  - chmod +x /usr/local/bin/versioner

Track Build

build:
  stage: build
  before_script:
    - curl -L https://github.com/versioner-io/versioner-cli/releases/latest/download/versioner-linux-amd64 -o /usr/local/bin/versioner
    - chmod +x /usr/local/bin/versioner
  script:
    - make build
  after_script:
    - versioner track build --product=my-api --status=completed

Track Deployment

deploy:
  stage: deploy
  before_script:
    - curl -L https://github.com/versioner-io/versioner-cli/releases/latest/download/versioner-linux-amd64 -o /usr/local/bin/versioner
    - chmod +x /usr/local/bin/versioner
  script:
    - ./deploy.sh
  after_script:
    - |
      versioner track deployment \
        --product=my-api \
        --environment=$CI_ENVIRONMENT_NAME \
        --status=completed
  environment:
    name: production

GitLab Environment Integration

Use $CI_ENVIRONMENT_NAME to automatically use the GitLab environment name.

Next Steps