Lamobot
ага
И там нет больше inventory строк?
Lamobot
ага
Доступы к файлам проверьте, так как ошибка ещё возникает по поводу доступа. Может где-то нет доступа у юзера, от которого запускаете
Иван
Stripe
Stripe
- role: generate-server-certs
post_tasks:
- name: restart nginx
systemd:
state: reloaded
name: nginx
Aleksey
Привет. ещё тупой вопрос. Есть несколько кластеров одного и того же продукта. Как правильно указывать на каком из них запустить playbook?
Aleksey
Блин, я тупой —limit же! Всем спасибо XD
Jungo
Делал ли кто-нибудь with_nested template https://gist.github.com/greenbrian/8101723 примерно как тут?
Vitalii
Всем привет. Можно как-то использовать лукап файла что бы получить аргументы для ансиблового модуля?
Vitalii
например
- terraform:
project_path: "some/file"
variables:
"{{ lookup('file', 'vars.yaml') | indent(width=4, indentfirst=True) |to_yaml }}"
Vitalii
в vars.yaml словарь
Lamobot
Lamobot
Lamobot
Lamobot
И lookup нужно на той же строке что и vars располагать
vars: "{{..."
Lamobot
Jungo
Что-то не получается?
не видит в словаре поле, ладно попробую завтра помучать еще
я также делаю - у меня два словаря, и with_nested по обоим - попробую наверное как в примере сделать сначало копию
Vitalii
Vitalii
вот что получаю
msg: 'argument variables is of type <class ''str''> and we were unable to convert to dict: dictionary requested, could not parse JSON or key=value'
Lamobot
изменил мессейдж, чуть напутал... Может так понятнее будет
Всё та же проблема. Вы пытаетесь словарь подставить как бы он у вас был в плейбуке прописан. Это не нужно. Если у вас с файла загружается словарь, то его просто словарём нужно передать в variables:
variables: "{{ lookup('file', 'vars.yaml') }}"
Vitalii
Lamobot
ту же ошибку получаю
сделайте
- debug:
msg: "{{ lookup('file', 'vars.yaml') }}"
Посмотреть что там в файле
Lamobot
Возможно стоит убрать кавычки вокруг jinja.
Или поэкспериментировать со словарём
variables: "{ {{ lookup('file', 'vars.yaml') }} }"
Vitalii
Aleksey
Lamobot
Vitalii
Lamobot
Первое приятнее выглядит :)
Aleksey
А расскажите, пожалуйста, в чем сейчас модно секреты хранить? Есть что-то поудобнее hashicorp vault? А то в каждом awx-темплейте писать lookup для логина/пароля - как-то некрасиво, а нормальной интеграции, вроде, нет
inqfen
inqfen
первое обеспечивается твоим CI/CD или ansible-vault, второе - все как vault работает
Andrey
всем привет, может кто то подсказать как прописать в плейбук авторизацию на файловом сервере (майкрософт) для копирования с него файла или папки? как просто скопировать файл или папку мне понятно
Антон
Почитай про win_copy, там было про авторизацию по smb
Andrey
спасибо, собственно поэтому и пришел сюда спросить)
Dmitriy
Всем привет. Что то не могу понять, есть у меня строка правила logrotate
create 0664 zabbix zabbix
хочу после нее вставить copytruncate. Пробую так
lineinfile:
dest: "/etc/logrotate.d/zabbix-agent2"
insertafter: "^create 0664 zabbix zabbix"
line: "copytruncate".
он вставляет, но в конец, после закрывабщейся скобки. Подскажите пож, как можно сделать чтоб было красиво ?
Andrey
имхо ты место не указываешь, по умолчанию в конец ставит
Andrey
если правильно тебя понял
Andrey
или полностью обнови текст или укажи место вставки
Dmitriy
или полностью обнови текст или укажи место вставки
ну, так как файл в любом случае везде идентичный, то я решил его отредактирвоать в роли и закидывать на хосты.
Но все же, интересно, как можно решить подобный кейс модулями. Как указать место вставки ? я думал insertafter это оно и есть
Andrey
я надеюсь это поможет https://stackoverflow.com/questions/24173114/ansible-lineinfile-insertafter-injects-line-at-end-of-file
Andrey
у меня нет готового решения, но смысл в регулярном выражении и замене
Andrey
замене слова
tutunak
Andrey
с шаблонами производительность много выше, с учетом что сер не один наверное
Andrey
сервер
Stripe
Всем привет, вот есть у меня роль, я там использую баш, можно ли как-то заменить эту роль чтобы не использовать баш? Я думаю может использовать community.crypto.x509_certificate Подскажите пожалуйста
https://gist.github.com/pavel-nano/791734e08ea5736abdec742bc7677ae1
Sergey
Boriss
Доброго денька вам. Есть ли добротная тулза которая проверяет плэйбуки и делает их compatible под версии выше? Видит что диприкейтэд и предлагает другие модули? Есть ли вообще какие-то бэст-практис когда задача стоит - сделать плэйбуки compatible с ансимблом поновее? Благодарю
Stripe
Stripe
?
404
Dmitriy
Sergey
Stripe
Stripe
Alex
а может кто поделиться тасками для генерации root ca и сертификатов/ключей для сервера и клиента?
Stripe
Stripe
Неидемпотентно
Sergey
Именно. Значит, тебе нужен модуль. Собственный. Python - это интересно, в конце концов. Чего от него все так шарахаются?
Sergey
Скорее всего, потому, что "DevOps - всё" (это перевод серии твитов автора Ansible Майкла ДеХаана, можно прочитать на Хабре)
Отделение Bereke Bank
СА у меня будет один, которым я буду подписывать ключи для всех
можешь у меня посмотреть. тут генерятся СА https://github.com/erzh1906/kubernetes-playbook/blob/master/roles/k8s_ca_crt/tasks/main.yml тут уже серты https://github.com/erzh1906/kubernetes-playbook/blob/master/roles/k8s_etcd_crt/tasks/main.yml
Отделение Bereke Bank
это правда для куба. ну подкорректируешь под свои задачи
Stripe
Stripe
а можешь подсказать, какие готовые решения?)
Sergey
Написано же вроде?
Sergey
Sergey
Как нормально? node_id - ключ, а значение по нему какое?
Отделение Bereke Bank
Lamobot
unidata:
node_id: ''
search:
Либо убирай у node_id '' либо search сдвигай до уровня node_id