Max
в плейбуке - ты сам уже видишь сколько.
Max
если тебя это устраивает, флаг в руки.
Artem
прет. подскажите плз могу для расшифровки ansible-vault использовать пароль параметром типа —vault_pass *****
Artem
?
Max
ansible-vault decrypt --help
Artem
спасибо
Artem
--ask-vault-pass а так чтоб сразу в строке вбить и он бы не спрашивал
Artem
?
Alexander
Записать в файл и юзать vault-id
Alexander
Через cli как-то несекьюрно
Max
в файл. имя файла можно передать
Max
или втпеременную окр
Max
или в ansible.cfg
GithubReleases
ansible/ansible tagged: v2.8.0rc1 Link: https://github.com/ansible/ansible/releases/tag/v2.8.0rc1 Release notes: New release v2.8.0rc1
manefesto
ребята
manefesto
никто не использует контейнеры ansible для деплоя ?
manefesto
делаю деплой в gitlab-ci ловлю ошибку fatal: [s17.savefrom.net]: UNREACHABLE! => { "changed": false, "msg": "argument must be an int, or have a fileno() method.", "unreachable": true }
George
Я ансибл из контейнера запускаю, да
manefesto
все просто
manefesto
не удается залогиниться
manefesto
валиться на логине
manefesto
сейчас покажу, прокидываю ключ во внутрь контейнера запускаю плейбук
George
Нус?
Anonymous
Наверн осилил :)
manefesto
да не нус
manefesto
да вот может ключ не правильно добавлял
manefesto
ключ добавляется так
manefesto
- mkdir -p ~/.ssh - eval $(ssh-agent -s) - ssh-add <(echo "$ADMIN_HOST_KEY")
manefesto
а вот запуск плейбука docker run -v $(pwd)/ansible/docker:/code -v ~/.ssh/id_rsa:/root/.ssh/id_rsa ansible ansible-playbook -i inventory/hosts deploy.yaml
manefesto
пути правильные
George
Ты херню сделал
manefesto
ну смотри, в gitlab-ci использую образ с ансиблом
George
Да
manefesto
в который прокидываю ключ и свои плейбуки
George
StrictHost Checking выключен ?
manefesto
и ловлю PLAY [all] ********************************************************************* TASK [Gathering Facts] ********************************************************* [WARNING] Ansible is being run in a world writable directory (/code), ignoring it as an ansible.cfg source. For more information see https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dir fatal: [s17]: UNREACHABLE! => {"changed": false, "msg": "argument must be an int, or have a fileno() method.", "unreachable": true} to retry, use: --limit @/code/deploy.retry PLAY RECAP ********************************************************************* s17 : ok=0 changed=0 unreachable=1 failed=0
George
Варианты
George
1. Стрикт хост чекинг
George
2. Ключ кривой. Можешь md5 от него посчитать
George
В последних гитлабах там хрень с мультилайн переменные
George
3. Права на ключ и каталог с ансиблом кривые
manefesto
ты думаешь это сильно критично ? [WARNING] Ansible is being run in a world writable directory (/code), ignoring it as an ansible.cfg source. For more information see https://docs.ansible.com/ansible/devel/reference_appendices/config.html#cfg-in-world-writable-dir
George
Да
George
И ещё
George
Я не понял
George
- mkdir -p ~/.ssh - eval $(ssh-agent -s) - ssh-add <(echo "$ADMIN_HOST_KEY")
Вот это происходит внутри пайплайна в докере с образом ансибла ?
manefesto
смотри, локально docker run -v $PWD/docker:/code -v d:\id_rsa:/root/.ssh/id_rsa ansible ansible-playbook /code/deploy.yaml -i /code/inventory/hosts PLAY [all] ********************************************************************* TASK [Gathering Facts] ********************************************************* ok: [s17] TASK [deploy : docker login] *************************************************** ok: [s17]
manefesto
вот кусок
manefesto
немного отличается, на винде тестирую
George
Можешь докер в пайплайне запускать
George
Выливаешь ключ в файл, монтируешь его в докер и поехало
manefesto
смотри, сейчас покажу
manefesto
https://www.pastiebin.com/5cc203ba29493
George
да
George
похоже
manefesto
причем уже в самом докерфайле сделал костыль
George
так сработало?
manefesto
неа
manefesto
FROM alpine WORKDIR /code RUN apk add ansible && mkdir /root/.ssh && chmod 700 /root/.ssh && echo -e "Host *\n\tStrictHostKeyChecking no\n\n" > /root/.ssh/config && chmod 700 /code
George
и чего пишет?
George
ну, да, типа того
manefesto
и в инвентори
George
все то же пишет?
manefesto
ansible_ssh_common_args='-o StrictHostKeyChecking=no'
manefesto
ага
manefesto
и md5sum совпадают
George
запингуй узел
George
может у тебя днс отвалился
manefesto
это вот прям ужос будет
George
нужно все вероятности убрать
George
https://github.com/radekg/terraform-provisioner-ansible/issues/98
George
пипец. таки strict host checking, но в другом месте вылез
George
https://groups.google.com/forum/#!topic/ansible-project/s1eF5vAAo9Y
George
"Correct, you're running a interactive command and there is no stdin. " - логично, т.к. ты в раннере выполняешься