Is it possible to generate a CI workflow dynamically?

I have a repository with several inventories (ansible) that I’d want to run in separate jobs. I know I could define all needed jobs in the main gitlab-ci file. I just wonder if those jobs could be created dynamically.

Inventories:

inventories/
├── medium
│   ├── group_vars
│   └── host_vars
└── simple
    └── host_vars

A CI would be something like:

stages:
- ansible

simple:
  stage: ansible
  script:
  - cd inventories/simple
  - ansible-playbook playbook.yml

medium:
  stage: ansible
  script:
  - cd inventories/medium
  - ansible-playbook playbook.yml

Is there a way to execute a “CI compilation” job that would create the rest of the pipeline jobs?

I think you probably need dynamic child pipelines

1 Like

That’s right. Thank you.

1 Like