Молекулярная зависимость в частном gitlab - PullRequest
0 голосов
/ 03 мая 2020

Есть ли способ, как я могу разрешить зависимости от частного проекта в gitlab? На моем настоящем gitlab-ci я использую такой трюк

needs.tmpl:

- name: my-company.ansible-init-disk
  scm: git
  src: https://gitlab-ci-token:${CI_JOB_TOKEN}@gitlab.my-company/sre/ansible-roles/ansible-role-init-disk.git
  version: 0.1.0

.gitlab-ci.yaml

- envsubst < requirements.tmpl > requirements.yaml
- ansible-galaxy install -r requirements.yaml -p roles --force-with-deps

И вуаля, я получил свой Депс в папке ролей.

Для молекулы я должен сделать что-то вроде

dependency:
  name: galaxy
  options:
    role-file: molecule/default/requirements.yml

, но, разумеется, нет необходимости в интерполяции env в needs.yml. см https://github.com/ansible/ansible/issues/36395

Есть идеи, как получить мои deps?

1 Ответ

0 голосов
/ 03 мая 2020

Текущее лучшее решение выглядит так:

молекуле.имл

dependency:
  name: shell
  command: $PWD/molecule/default/deps.sh

Депс. sh

envsubst < molecule/default/requirements.tmpl > molecule/default/requirements.yaml
ansible-galaxy install -r molecule/default/requirements.yaml

но это выглядит некрасиво

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...