Aleksey
Asten
Не нравится отсутствие полиси у бубны
Это не относиться ко всем пакетам. У всех свои дистрибутивов свои погремушки. Много хорошего софта вообще не иммет официальных сборок. Или старые как мамонт
Aleksey
да
Aleksey
ну или процедура приемки в оф репы настолько сложна и забюрократизирована что народ на нее кладет болт
Asten
причин не знаю, но пакетов нет. Примеры: consul, prometheus и тд
Asten
проще самому их собрать, что мы и делаем собственно
Aleksey
Asten
поддержкой своих реп тоже не любят морочиться
Vadim
Коммунити к таким пакетам не подпускают
Asten
прикалываешься? а unit для systemd? а описать куда что положить? и так далее
Asten
и начинали вообще про nginx)
Asten
ну и не делать же это все руками каждый раз или писать в ансибл. автосборку настроил через fpm и забыл об этом
Asten
версию только бампай
Asten
в общем каждый сам решает как городить)
Asten
я бы понял если билдили по старинке описывая спеки и вот это все
Huan
привет всем. подскажите как из hosts плейбука взять список хостов в шаблоне?
Huan
к примеру:
- hosts: host[1:3].example.com
результат темплейта:
servers: host1.example.com, host2.example.com, host3.example.com
Aleksei
Aleksei
Ты об этом?
Huan
playbook.yml:
---
- hosts: host[1:3].example.com
roles:
- { role: role, tags: tag }
template.conf.j2:
...
listeners={% for v in вот_тут_какая_то_переменная %}PLAINTEXT{{ loop.index }}-{{ вот_тут_какая_то_переменная }}{% if not loop.last %}, {% endif %}{% endfor %}
....
как-то так
Nklya
Я вот так раскрывал через запятую содержимое группы.
Для твоего странного примера наверно не подойдет.
{% for h in groups['group'] -%}
list={{hostvars[h]['ansible_host']}}{{ "," if not loop.last else "\n"}}
{%- endfor %}
Huan
а есть группа одна для всех хостов?
Huan
в итоге надо получить строку
listeners=PLAINTEXT1:host1.example.com, PLAINTEXT2:host2.example.com, PLAINTEXT3:host3.example.com
Mikhail
{{ inventory_hostname }} ?
Huan
listeners={% for v in "{{ inventory_hostname }}" %}PLAINTEXT{{ loop.index }}:{{ inventory_hostname }}{% if not loop.last %}, {% endif %}{% endfor %}
получается:
listeners=PLAINTEXT1:localhost, PLAINTEXT2:localhost, PLAINTEXT3:localhost, PLAINTEXT4:localhost, PLAINTEXT5:localhost, PLAINTEXT6:localhost, PLAINTEXT7:localhost, PLAINTEXT8:localhost, PLAINTEXT9:localhost, PLAINTEXT10:localhost, PLAINTEXT11:localhost, PLAINTEXT12:localhost, PLAINTEXT13:localhost, PLAINTEXT14:localhost, PLAINTEXT15:localhost, PLAINTEXT16:localhost, PLAINTEXT17:localhost, PLAINTEXT18:localhost, PLAINTEXT19:localhost, PLAINTEXT20:localhost, PLAINTEXT21:localhost, PLAINTEXT22:localhost, PLAINTEXT23:localhost, PLAINTEXT24:localhost
Huan
))
Sergey
Huan
опечатка. я имел ввиду если одна группа на всех, но плейбук нужно только на несколько хостов разлить
Huan
возможно ли такое?
Sergey
brestows
Запускай любой playbook через ключ -i "192.168.1.5,192.168.5.5,"
brestows
Запятая в конце после последнего хотя обязаткльна
Huan
это я понимаю. но не генерится конфиг по шаблону(
Huan
подскажите, а hostvars все переменные перекрывает group_vars или только те, которые указаны в hostvars?
Sergey
Sergey
"Перекрываться" могут только одинаково называющиеся переменные, разумеется.
Anonymous
Привет, что такое ansible&
Neff
Kirya
Доброе утро всем
Kirya
помогите, не могу вытащить данные из переменной зарегестрированной в тасках
Vyacheslav
Через set_fact?
Kirya
если обращаться, напрямую, а не через loop with_items, то показывает
Kirya
---
- name: debugging
debug: var=ping_result.results[0].item.ip
Kirya
вот так
Vyacheslav
Вместо var= попробуй msg=
Kirya
не
Kirya
пробовал
Kirya
также
Kirya
понял изза чего
Kirya
фигурные скобки забыл, т.е. надо было примерно так:
# cat roles/handlerstest/handlers/main.yml
—-
- name: debugging
debug: var={{ item }}
with_items: {{ ping_result.results }}
Vladimir
привет. ктото с pycharm работает?
Vladimir
не могу понять, свежеустановлен только начинаю разбираться. запускаю код банальный print("Hello!") в консоли не показывает результат выполнения. только Process finished with exit code 0
Vladimir
что подкрутить если в курсе?
Salem
а причем здесь ansible, это тебе в dev python группы
Vladimir
на вопрос по pycharm натыкался в этой группе
Vladimir
потому и задал
Kirya
А гугл
Aion
Aion
умвр
Vladimir
а у меня не работает
Ivan
Aleksey
госода ansible-console кто то юзает? скажите как там задать env var ?
Dmitry
Timur
Я тоже не совсем понял - в гите хуки на коммит, которые запускают плейбук?
Nklya
Ansiible-container умеет описывать и билдить докер образы
http://docs.ansible.com/ansible-container/
Timur
Nklya
Какого плейбука?
Nklya
Тупо используешь ямлики ансибла вместо докерфайла и билдишь
Nklya
Проблема есть с отсутсвием кеширования слоев
Timur
Мы, наверное, о разных вещах говорим, или я все не так понял, ну да ладно :)
Huan
привет. подскажите как из группы, состоящей из 3 хостов:
[kafka]
host1
host2
host3
на каждый хост записать в файл номер 1, 2, 3 соответственно
Vadim
file:
path="{{ inventory_hostname }}"
Huan
нужно чоб в файле было число
Huan
например у host1 в файле должно быть число 1
Huan
на hostN добжно быть N-е число
Vadim
немного магии с фильтрами и вырезанием строки оставим как упражнение для читателя
Vlad
{{ groups['kafka'].index(inventory_hostname) }}
Timur
если переменная inventory_hostname имеет тип str, то и методы у неё будут соответствующие