jzs
проблема не в нем
jzs
jzs
с парамико тоже все ок
Aleksandr
ок
Aleksandr
в конец команды -c paramiko
Aleksandr
@dubclub
jzs
о
jzs
зашло
Aleksandr
баг. обновляйся на 2.2 что б это починилось. но мб сломается что-то еще. либо даунгрейд до 2.0.1
jzs
бля
jzs
:(
Aleksandr
ну либо дописывай эту команду
jzs
а есть где то багрепорт вообще по этой хуйне ?
Aleksandr
https://github.com/ansible/ansible/issues/15321
jzs
спасибо
Aleksandr
а если сбор фактов отключить , сработает?
jzs
а вот не знаю, надо проверить сейчас
nvkv
Котаны, а кто-нибудь тут парамико для транспорта использует?
nvkv
Я тут попробовал, на 2.1.x и у меня при copy ломался jar-файлик
nvkv
переключил обратно на нейтив — всё ок
nvkv
wtf?
Dmitrii
А потому что надо сидеть и не рыпаться! Это же ансибл
Dmitrii
Ну как там ансибл 2.2?
Dmitrii
Бажный?
nvkv
я локально на ноуте апнул, а на контол-нодах ссу пока
nvkv
пока разницы не заметил
M
как из jinja обратиться к элементам такого массива в vars workers: worker1: public_ip: 8.8.8.8 private_ip: 10.10.10.10 worker2: public_ip: 9.9.9.9 private_ip: 10.11.11.11
M
?
Dmitrii
{{ workers['worker1']['public_ip'] }}
Aleksey
вроде и через точку можно было
M
{% for item in workers -%} - {{ item.public_ip }} {% endfor -%} ~
M
так ругается
M
'ansible.parsing.yaml.objects.AnsibleUnicode object' has no attribute 'public_ip'
Lev
может потому что item, в твоем случае – ключ?)
M
{% for item in workers -%} - {{ item['public_ip'] }} {% endfor -%}
M
если заэхать item то выводит worker1 и worker2
Lev
ну да, потому что ключ-значение
Lev
а если workers[item]?
Lev
если ключи тебе не нужны, то можно их и не юзать
Lev
workers: - public_ip: 8.8.8.8 private_ip: 10.10.10.10 - public_ip: 9.9.9.9 private_ip: 10.11.11.11
M
а если workers[item]?
- {u'public_ip': u'8.8.8.8', u'private_ip': u'10.10.10.10'} - {u'public_ip': u'9.9.9.9', u'private_ip': u'10.11.11.11'}
Lev
тогда workers[item]['public_ip']
Serge
https://www.devrant.io/rants/268870
Serge
всем привет!
Serge
https://github.com/ansible/ansible-modules-core/issues/5470 бойтесь 2.2
Max
Припекло
Serge
а 2.1.2.0 вот такой https://github.com/ansible/ansible/issues/17495
Serge
и всё это про питон. в проекте на питоне.
Serge
Serge
а вот кстати, никто не запускает новые хосты модулем ec2 в aws чтобы сразу их провижинить?
Serge
есть один ньюанс. запускаешь хост, ждешь, когда он появится по ssh. и того же ждет AWS, чтобы подложить ключик. ты видишь хост в wait_for и сразу идешь на него, а там permission denied. потом хост уходит из SSH и приходит уже с ключом, подложенным AWS
Serge
мне приходится делать вот так: - name: ensure host is accesible via ssh wait_for: host: '{{ ansible_host }}' port: 22 timeout: 300 search_regex: ^SSH-2.0-OpenSSH delegate_to: '{{ aws_control }}' - name: ensure host is accesible via ssh again after AWS put the access key there wait_for: host: '{{ ansible_host }}' port: 22 delay: 60 timeout: 300 search_regex: ^SSH-2.0-OpenSSH delegate_to: '{{ aws_control }}'
Serge
только так работает, вторая проверка, после паузы
Serge
это норм или есть более простой способ?
Serge
перед этим я смотрю ip из результата ec2 и кладу его в ansible_host и явно запускаю ему setup
Serge
ну, setup после wait_for, конечно
Maxim
народ, как можно вот это пофиксить? FAILED! => {"failed": true, "msg": "template error while templating string: unexpected '.'. String: docker ps -a --format \"table {{.Names}}\\t{{.Status}}\""}
Maxim
вот такой плейбук --- - hosts: all remote_user: root tasks: - name: test shell: docker ps -a --format "table {{.Names}}\t{{.Status}}" args: executable: /bin/bash
Albert
А че там точка делает?
Albert
@mvaleev У тебя прям и есть такие параметры? С точкой в начале?
Maxim
да
Albert
Покажи
Maxim
что именно? команда вот такая docker ps -a --format 'table {{.Names}}\t{{.Status}}'
Albert
Так где ты параметер создаешь
Maxim
какой параметр? не пойму тебя
nvkv
Чуваки
nvkv
это синтаксис докера
nvkv
выдыхайте
nvkv
ансибл просто думает, что это jinja темплейт не может найти переменную
nvkv
ну и расстраивается, конечно
nvkv
надо экранировать { и }, как — не помню
Maxim
ага, это я понял, вот не могу понять как это пофиксить
nvkv
погугли на тему "how to escape curly braces in jinja2"
Maxim
ок, пойду погляжу
Albert
{% .Names %}
Albert
Походу так
Albert
@mvaleev кстати вот поинтересней: http://stackoverflow.com/questions/32279519/escaping-double-curly-braces-in-ansible
Maxim
@Tahvok последняя ссылка помогла, спасибо 👍