Backend: Add support for CI templates data interpolation and objects navigation

Description

In order to move forward with the CI Catalog of Components implementation we need to build new mechanisms for data interpolation and object navigation within an interpolation block:

my-tests:
  stage: $[[ inputs.stage ]]
  script: bundle exec rspec

Details

This will allow users to use CI Components from their CI Catalogs by explicitly defining and passing required arguments:

---
spec:               # template specs
  inputs:
    stage:          # required argument
    environment:
      default: test # default value
---
my-tests:
  stage: $[[ inputs.stage ]]
  script: bundle exec rspec

Import statement in a pipeline that users the component:

include:
  - component: gitlab.com/org/my-component@1.0
    with:
      stage: testing
Edited Jan 30, 2023 by Grzegorz Bizon
Assignee Loading
Time tracking Loading