JonnSmitt_\/Z
JonnSmitt_\/Z
как вот это всё (красненькое) не выводить на экран при запуске плэйбука?
UglyKoyote
omg у тебя rpm-ки лежат прямо в гите в files/*?
увы) я в таких условиях нахожусь. моего мнения никто не спрашивает
JonnSmitt_\/Z
мож хитрый способ есть? отгрепать по фразе и вывод в /dev/null или захайдить как ?
UglyKoyote
погоди, почему в гите? я просто отдам плейбук - пальцем ткну - лежит всё тут
UglyKoyote
эм.. а что в правилах такого, что я нарушил?
JonnSmitt_\/Z
https://docs.ansible.com/ansible/latest/user_guide/playbooks_error_handling.html
Всё не то. Мне нужно просто СКРЫТЬ любой резултат выполнения таска! Вооббще. Чтоб он не гадил в консоль. Я точно знаю что там может быть ошибка 50\50. это приемлемо. мне НЕ нужно вывода в консоль, чего либо по этому таску. Есть варианты?
JonnSmitt_\/Z
no_log: True —- просто из 1001 строки "красного" вывода сделает 20 строк. а нужно 0 (нуль). Ничего. И не глобально. А только для ЭТОГО таска.
Andor
https://stackoverflow.com/questions/35723913/need-to-hide-failed-log-in-ansible-task оно?
Andor
хотя конечно не точно то что ты хочешь, но в твоём случае вроде должно помочь
Timur
Они за вывод отвечают
Timur
Например https://docs.ansible.com/ansible/latest/plugins/callback/minimal.html
Alex
плагин же вроде глобально для плея включается, нее?
Alex
а человеку надо только для одного таска
JonnSmitt_\/Z
для одно единственного таска.
Andor
Ты троллишь
UglyKoyote
не, но логу тру - оно просто прячет что "там", а строчки останутся
JonnSmitt_\/Z
JonnSmitt_\/Z
попробовал оба варика. Протто игнорит. Пишет что ТАСК ОК. но там ошибки и ничего НЕ выполнилось. Даже сам таск.
Valeriy
Господа, подскажите а есть более простой способ получить в плейбке список имен контенреов docker на хосте , чем разбирать вывод docker ps , или выхлоп docker_hots_info
Andor
Взять модуль который это делает
JonnSmitt_\/Z
Ура.! Всё оказалось просто.
JonnSmitt_\/Z
Очень просто: failed_when: false
JonnSmitt_\/Z
без логов.... и прочих ignore_errors: True
Andor
Очень просто: failed_when: false
Учти что оно фейлы вообще никогда не будет ловить
UglyKoyote
это уже проблемы завтрашнего Джона) сегодняшнему и так норм
JonnSmitt_\/Z
Если ошибки НЕТ: оно просто выполняется. и репортит что ок. и какие изменения. А если ошибка - то пишет просто ОК. и всё. Что и требовалось.
JonnSmitt_\/Z
Таск такой: Развернуть БД. всё бы ничего... но если плэйбук выполняется более одного раза, возникают проблеммы. Типо база уже есть или юзер уже есть.По этому: Такк::: 1) удаляю всегда юзера БД (не интересно, есть он или нет! этот самый случай) 2) удаляю всегда саму БД (не интересно, есть он или нет! этот самый случай) ... 3) Создаю юзера БД. 4) Создаю Саму БД.... 5) накатываю дамп. З.Ы.::: Повторять процедуру можно многократно.
JonnSmitt_\/Z
Ансибл - вещЬ.
UglyKoyote
а зачем удалять юзера, а потом базу? не проще сразу сносить базу в таком случае
JonnSmitt_\/Z
ну удалил базу и? Юзер то остался.
JonnSmitt_\/Z
и права на базу осталси....
JonnSmitt_\/Z
Начинаешьсоздавать - ошибка!
JonnSmitt_\/Z
про модуль не вникал... Слишком долго...
JonnSmitt_\/Z
да и дампы по разному сделаны...
JonnSmitt_\/Z
везде разные ключи... и разворачиваются п оразному.
JonnSmitt_\/Z
проще шелл команду выполнить.
Valeriy
- name: List containers docker_host_info: containers: yes register: containers_list - debug: msg: "{{ containers_list['containers'] | map(attribute='Names') | select ('match','.*_mysql-server_*') |list }}"
Valeriy
Решение по предидущему вопросу
Valeriy
Осталось только понять как заменить mysql-server на переменную {{ mysql-server }}
JonnSmitt_\/Z
ну и меняй!
JonnSmitt_\/Z
что мешает? в ДЕФОЛТАХ напиши: mysql-server: ДНС\ИП-арь.
Valeriy
('match','.*_' + mysql-server + '_*')
О спасибо , похоже начинаю понимать
JonnSmitt_\/Z
Вопрос: чем отличаются одинарные ковычки от двойных.? "" and ' '
Andor
ничем особым
Andrii
Вопрос: чем отличаются одинарные ковычки от двойных.? "" and ' '
Одни можно использовать внутри других чтобы не экранировать. А так, да. Принципиально ничем
JonnSmitt_\/Z
ок.
JonnSmitt_\/Z
а экранировать - одинарными ?
Andor
а экранировать - одинарными ?
всё веселье в том, что в python (и jinja) и в yaml'е кавычки по-разному работают удачи, бро
Alexey
проще шелл команду выполнить.
Башсибл не умрёт никогда!
JonnSmitt_\/Z
Andor
Башсибл не умрёт никогда!
ну баш наверняка ещё немало протянет
Alexey
Баш чего ?
https://t.me/pro_ansible/119893
JonnSmitt_\/Z
"Прицпий" - ахаха
JonnSmitt_\/Z
И эти люди запрещают мне ковырятся в носу. (с)
JonnSmitt_\/Z
Читал читал доку про RSYNC так и не смог собрать ТАСК, заменяющий ЭТО:
JonnSmitt_\/Z
Andor
Читал читал доку про RSYNC так и не смог собрать ТАСК, заменяющий ЭТО:
смотри какое дерьмо у меня есть: # NOTE: requires rsync available to run by ansible - name: rsync current version to the remote synchronize: dest: "{{ deploy_rsync_dest }}" src: "{{ deploy_rsync_src }}" owner: no delete: yes perms: yes rsync_opts: - --groupmap=*:www - --chmod=D0755,F0644 - --exclude=/.git* # just in case - --exclude=/data - --exclude=/version.yaml when: deploy_src_stat.stat.isdir | default(false)
JonnSmitt_\/Z
и? Интересует Р-синк овер ССШ через спец порт спец ключ и с дерективой.
Andor
видишь rsync_opts?
Andor
можешь туда сунуть что пожелаешь
JonnSmitt_\/Z
!??!?! В доке "выкрутасов" с ССШ не видел.
Andor
каких "выкрутасов"?
Andor
у тебя есть возможность вообще любую какую хочешь опцию передать в rsync
JonnSmitt_\/Z
стоп. начинаю осознавать...
Sergey
('match','.*_' + mysql-server + '_*')
Плюс только всё сломает, объединение строк в шаблонах Jinja - тильда.
Andrii
@tnt4brain ну, плюс в данном случае должен тоже работать, но я вот пошёл почитал документацию и соглашусь, лучше тильду