@pro_ansible

Страница 497 из 625
Юра
23.06.2018
12:11:21
если это один экшен, то можно в одном плейбуке, просто будет несколько условий
Да, это роль установки и настройки определенного пакета. А можно пожалуйста пример условия попросить?

Nklya
23.06.2018
12:12:38
https://github.com/geerlingguy/ansible-role-docker/blob/master/tasks/main.yml#L6 как я уже говорил, полезно смотреть на роли в паблике

Юра
23.06.2018
12:20:01
Ну в этом примере condition'ы по os_family. Это я понимаю. А как быть в том случае, если надо фильтровать не по семейству ОС, а по наличию или отсутствию определенного пакета (firewalld в моем случае)? Фактами разрулить?

Nklya
23.06.2018
12:21:40
ну если не можешь разделить по os_family, то костылить какой-то запрос, который выясняет есть ли firewalld, который при сваивает переменной, а по ней уже when

Google
Юра
23.06.2018
12:24:34
Понял, спасибо. Все же по os_family поделю в этом случае

Nklya
23.06.2018
12:30:00
можешь посмотреть, возможно в фактах есть про firewall например вот systemd факт https://github.com/cndies/ansible-role-gotty/blob/master/tasks/main.yml#L31

cent
23.06.2018
17:06:19
Понял, спасибо. Все же по os_family поделю в этом случае
В одной и той же OS может быть любой фаервол. Поэтому лучше по наличию бинарника и загруженного модуля ядра нужно рулить

Azzam
23.06.2018
18:10:54
здаров ребята

есть вопрос по поводу возможности ансибла работать с nftables

ктото сталкивался уже?

Rachel
23.06.2018
18:25:05
Привет, ребята! Можно ли в excel сделать смену формата ячейки через if?

Rachel
23.06.2018
18:30:51
Можно, а при чем тут ансибл?
Говорят, что только через VB. Подскажи команду, которая поможет поменять, пожалуйста.

Timur
23.06.2018
18:35:24
Там через Conditional Format это делается, если без VBA. Можно вот отюда начать: https://support.office.com/en-us/article/add-change-or-clear-conditional-formats-8a1cc355-b113-41b7-a483-58460332a1af

Valerij
24.06.2018
13:43:12
Здравствуйте! Подскажите пожалуйста, что за параметр такой "pattern = *" в конфигурационном файле ansible.cfg ? Дело в том что в ansible 2.5 этого параметра нет (

Google
Ruslan
25.06.2018
04:44:47
Ребята, подскажите, пожалуйста. Необходимо выполнить задачу очистки каталогов после сборки проекта, даже если сборка закончилась неудачно. Имеется плейбук - hosts: - stand roles: - role: build Как оформить таску и куда ее записать - необходимо чтобы она выполнялась последней при любых стечениях плейбука: - name: remove project files file: path: "{{ item }}" state: absent ...

shine
25.06.2018
04:45:47
если колхозно, то закатай всё в блок, последним таском модуль шел и удаление.

Ruslan
25.06.2018
04:47:50
А как сделать чтобы этот таск выполнялся даже после фейлов?

Эдуард
25.06.2018
04:48:14
Отдельным task в запускаемом ямле

Если минимальный костыль

Ruslan
25.06.2018
04:50:27
т.е. не внутри файла main.yml у роли, а в самом плейбуке?

Stepan T.
25.06.2018
04:55:14
ignore_error: yes, выхлоп в какой-то лог, чтобы знать, что что-то сфэйлилось

Но это не самый лучший подход

Ruslan
25.06.2018
04:58:33
т.е. не внутри файла main.yml у роли, а в самом плейбуке?
не сработало, выполнение до таски не доходит при фейлах ранее

ignore_error: yes, выхлоп в какой-то лог, чтобы знать, что что-то сфэйлилось
не выход, игнорить ошибки не могу надо что-то вроде notify when previous task failed

похоже я просто не знаю про blocks https://docs.ansible.com/ansible/latest/user_guide/playbooks_blocks.html

Ruslan
25.06.2018
05:05:54
register: task_output when: "'some_shit' in task_output.stdout"?
тоже думал так, но у меня там порядка 10 таск, которые любят падать по самым разным причинам, отследить все варианты не получится, а чистить проект надо

Stepan T.
25.06.2018
05:06:27
Получится. Глаза боятся, а руки делают.

Ruslan
25.06.2018
05:10:43
? Попробую, сначала эту штуку провернуть:` tasks: - name: Attempt and graceful roll back demo block: - debug: msg: 'I execute normally' - command: /bin/false - debug: msg: 'I never execute, due to the above task failing' always: - debug: msg: "This always executes"`

Эдуард
25.06.2018
05:19:30
Мужики, а у ансибло интеграцию с кубиком придумали?

Ruslan
25.06.2018
05:20:48
если колхозно, то закатай всё в блок, последним таском модуль шел и удаление.
Спасибо. Подсказка на использование блоков указало мне желаемое решение. Ключ. слово always - то что я хотел: TASK [uc : fail] fatal: [stand]: FAILED! => {"changed": false, "msg": "the command failed"} TASK [uc : always remove files] ok: [stand] => { "msg": "remove running" }

Evgeny
25.06.2018
11:00:00
Всем привет! Как проверить что на хосте запущен контейнер с nginx’ом? Есть какой-то аналог для контейнеров - name: Ensure that nginx is running service: name: nginx state: started enabled: yes register: nginx_status

Google
Evgeny
25.06.2018
11:03:20
Спасибо! Как раз его и заиспользовал

Admin
ERROR: S client not available

Sheridan
25.06.2018
12:41:30
камрады, хочу в отдельном файле с тасками сделать таск, зарегестрировать его changed а потом если changed, то в плейбуке, куда тасклист включон, вызвать нотифи. Реально?

как?

Sheridan
25.06.2018
12:57:31
Да
А второй вопрос? ))

bebebe
25.06.2018
12:59:17
А второй вопрос? ))
регистрируете переменную в отдельном файле с тасками в общей плейбуке после вызова этих тасок проверяете на changed, делаете notify

все прямо как вы написали

Vadim
25.06.2018
12:59:28
- debug: msg="call handler" when: foo is changed changed_when: True notify: do something

Sheridan
25.06.2018
12:59:43
Спасибо! )

Matvey
25.06.2018
13:27:36
как в lookup вложить переменную?

'{{ lookup('dig', 'pcp.{{ domain }}.')}}

Matvey
25.06.2018
13:27:47
вот так не работает

Sheridan
25.06.2018
13:28:20
Камрады, нид хэлп. Как заэкранировать переменную? Что не пробовал - получается -[client] +[client.a] а надо -[client] +[client.{{ ansible_hostname }}]

{{ '{{ \"{{\" }}' }} ansible_hostname {{ '{{ \"}}\" }}' }}

Matvey
25.06.2018
13:28:35
ох

страшненько

Sheridan
25.06.2018
13:28:41
тебе кмк подойдёт один уровень экранирования

{{ '{{' }} var {{ '}}' }}

это мне два надо было...

Страница 497 из 625