Я пытаюсь настроить динамический файл gitlab-ci, который включает необходимый файл gitlab-ci на основе переменной проекта.
К сожалению, я не могу заставить это работать, я прочитал документацию и искал форум, но, к сожалению, я не могу найти какие-либо решения.
Как мне получить динамический файл gitlab-ci?
По сути, я хотел сделать что-то вроде приведенного ниже фрагмента, но заметил, что не могу использовать переменные в методе файла (возвращает «Неверная конфигурация: файл не существует».).
include:
- project: 'tools/gitlab-ci'
file: '/gitlab-ci-$GITLABFILE.yml'
only:
- $GITLABFILE
include:
- project: 'tools/gitlab-ci'
file: '/gitlab-ci.yml'
only:
- $GITLABFILE == null
Поскольку я не мог использовать переменную в методе file, я попробовал приведенную ниже конфигурацию, но, к сожалению, она всегда загружает последний файл и игнорирует единственное ключевое слово.
include:
- project: 'tools/gitlab-ci'
file: '/gitlab-ci.yml'
except:
variables:
- $GITLABFILE
- project: 'tools/gitlab-ci'
file: '/gitlab-ci-legacy.yml'
only:
variables:
- $GITLABFILE == 'legacy'
- project: 'tools/gitlab-ci'
file: '/gitlab-ci-legacy-nobuild.yml'
only:
variables:
- $GITLABFILE == 'legacy-nobuild'
Я ожидаю один файл gitlab-ci, который может извлекать другие файлы gitlab-ci на основе переменной.
Надеюсь, кто-нибудь может мне помочь или указать мне правильное направление.