hosts: gitlab
environment:
GITLAB_ROOT_PASSWORD: source_me_from_secret_manager
become: yes
roles:
- role: geerlingguy.gitlab
Изменил playbook
- hosts: gitlab
become: yes
pre_tasks:
- debug:
msg: '{{lookup("env", "GITLAB_ROOT_PASSWORD")}}'
roles:
- role: geerlingguy.gitlab
И передаю ENV через extra-vars
read -p "Enter GITLAB_ROOT_PASSWORD: " GITLAB_ROOT_PASSWORD
ansible-playbook -vvv -i inventory.yml playbook.yml -e GITLAB_ROOT_PASSWORD='{{ lookup("env", "GITLAB_ROOT_PASSWORD") }}'
и не работает.
Как передать ENV внуть playbook?
Можно extra vars
я видимо чего-то не понимаю. А почему ты еще разе его передаешь, если он у тебя в env'ах есть, забери из энвов, зачем повторно передавать в экстра варс который пойдет в энвы?
Вот код где экспортирую переменую в ENV https://github.com/patsevanton/yc-terraform-examples/blob/main/15-provisioner-gitlab-by-ansble/gitlab_install.sh#L6 но после установки gitlab - войти в него не могу. Если в playbook устанавливать ENV, то войти в gitlab могу - hosts: gitlab environment: GITLAB_ROOT_PASSWORD: source_me_from_secret_manager become: yes roles: - role: geerlingguy.gitlab
вот так попробуй в плейбук добавить vars: GITLAB_ROOT_PASSWORD: "{{ lookup('env','GITLAB_ROOT_PASSWORD') }}"
Зачем лукап? Он просто ж переменной передается из vault
ты точно прочел всю переписку
Нет конечно, зачем читать если можно написать фигню?
в его кейсе вообще вольта нет
Не работает. Пока буду читать пароль из /etc/gitlab/initial_root_password с сервера. Все равно спасибо!
Твой лукап работает на контроллере. Это то, что тебе нужно?
Пока бросил эту идею передачи пароля в playbook. Буду читать пароль из /etc/gitlab/initial_root_password с сервера.
Обсуждают сегодня