CI/CD Steps (experimental)


CI/CD Steps (experimental)

Steps are reusable units of a job

The can replace script with one or more steps under run

No more !reference[] tags to merge multiple script blocks

job:
  variables:
    MESSAGE: "GitLab workshop"
  run:
    - name: say_hi
      step: gitlab.inmylab.de/steps/message@v1.0.0
      inputs:
        message: "hello, $"

Requires step-runner binary

Steps can also be used to run existing GitHub Actions

Eventually steps will be discoverable in the CI/CD Catalog


Comparison

Smaller units than jobs

Steps vs. Components

Both are self-contained

Both are configurable through inputs

Common layout, i.e. header and body

Steps vs. Templates

Steps are a smaller unit than templates

Steps are easier to compose…

…compared to !reference[] tags


Hands-On

See chapter CI/CD Steps