#ansible #github-actions
#ansible #github-действия
Вопрос:
Я пытаюсь использовать секреты Githubactions в своих сборниках игр ansible, которые затем будут переданы в шаблоны, но для GHA нет плагина поиска. Это не работает:
- hosts: the-host
vars:
influxdb_pass: "{{ lookup('env', 'secret.INFLUXDB_PASS' }}"
Мой обходной путь — раскрыть секреты через переменные среды GHA и просто использовать плагин ansible env lookup:
name: Pull Request - Ansible
on:
pull_request:
branches:
- master
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v1
- name: Config updates
env:
INFLUXDB_PASS: ${{ secrets.INFLUXDB_PASS }}
- hosts: the-host
vars:
influxdb_pass: "{{ lookup('env', 'INFLUXDB_PASS' }}"
Проблема в том, что я управляю множеством секретов, и это раздражает необходимость:
- Добавьте секрет в настройки репозитория
- Определите переменную в ansible-playbook
- Явное раскрытие секретов через переменные среды в рабочем процессе GHA.
Когда в других инструментах CI, таких как Gitlab, вам не нужно выполнять явное раскрытие секрета, вы можете использовать секреты напрямую как переменные среды.
Есть ли у кого-нибудь советы по лучшему подходу к GHA?
Комментарии:
1. Добавьте секрет в настройки репозитория ну, вам не обязательно это делать — такая ситуация — проблема, которую ansible-vault предназначен для решения: поместите секреты в репозиторий, но разблокируйте их только в CI