Aleksey
знаешь да?
Aleksey
Aleksey
обрати внимание что с этим уходит часть граблей с типизацией
Aleksey
безусловно не все
George
У меня будут оказываться рандомные типы вместо строк? А строки вместо ожидаемых типов из-за лишнего пробела?
Aleksey
ну и backward-compatible дефолт конечно подбешивает
Aleksey
George
Оно уже merged? Ща я куски из своего ansible bingo там проверю..
Aleksey
если ты стенды не разобрал, тебе сподручнее
Aleksey
оно в 2.7 стало
George
Окей, тогда я ничерта не понимаю. Объясни в двух словах что там происходит и как его увидеть?
Aleksey
джинджа перестаёт всё конвертить к строке
Aleksey
увидеть просто. ANSIBLE_JINJA2_NATIVE = True
Aleksey
или в конфиг или в окружение
Aleksey
оно появилось в какой то отнсительно недавней версии jinja. типа 2-3 года назад
George
О. Спасибо, ща проверю.
Aleksey
ну и смотри там тесты есть :)
Alex
https://github.com/ansible/ansible/issues/63180
чем то напоминает этот баг
George
Обычный:
localhost : ok=4 changed=0 unreachable=0 failed=0 skipped=3 rescued=0 ignored=4
ANSIBLE_JINJA2_NATIVE:
localhost : ok=4 changed=0 unreachable=0 failed=0 skipped=3 rescued=0 ignored=4
Без изменений. Примерно половина из них - WTF'ы.
Aleksey
Aleksey
(на самом деле, конечно, нет)
George
- name: Bingo 1
debug:
when: 'no'
ignore_errors: true
Aleksey
давай свой бинго, статьей конечно :)
George
А всё не покажу. Слишком жирно и вкусно для чатика.
Aleksey
ггг
Aleksey
George
Это ты думаешь.
George
Потому оно и "bingo"
Aleksey
эта канитель исправлеят именно приведение при шаблонизации
George
Оно одинаково как с ANSIBLE_JINJA2_NATIVE так и без.
Aleksey
"no" конвертится строку, строка проверяется на непустую да ?
George
Нет. Это _ОЖИДАЕМОЕ_ поведение. А в ответе - bingo!
George
То, чего ты не ожидал.
Lamobot
George
Возьми да запусти. WTF обеспечен.
Aleksey
отформатирует винт.
George
* Автор не несёт ответственности за сохранность /home у запустившего.
Aleksey
слышлали мы этот ваш "возьми да запусти"
Lamobot
The conditional check 'no' failed. The error was: error while evaluating conditional (no): 'no' is undefined ?
George
Если ты думаешь, что понял bingo1, вот тебе bingo2:
- name: Bingo 2
debug:
when: foo
ignore_errors: true
vars:
foo: 'no'
Lamobot
George
В этом и суть бинго - ты всегда проигрываешь, какую бы систему игры в бинго не придумал.
Aleksey
мне зашла такая вот структура.
├── filters
├── group_vars
├── playbooks
│ └── group_vars
└── roles
Aleksey
playbooks -> group_vars побеждают
Aleksey
удобно там хранить environemnt (prod|dev|rc)
Aleksey
Aleksey
весь цикл огонь. спасибо.
George
И ещё из цикла no-bingo:
- name: Bingo 4
debug:
when: foo
vars:
foo: '{{ [no] }}'
George
Повторяю, 5 здоровых лбов, пищущих ансибл 8/5 за зарплату каждый раз не могли угадать.
George
Это такая дзен-шутка? Хорошая система управления конфигурациями - не написанная система управления конфигурациями?
Aleksey
:)
Aleksey
местный фольклёр
Bogdan (SirEdvin)
https://github.com/ansible/ansible/blob/stable-2.9/lib/ansible/plugins/inventory/netbox.py - в ансибле давно не создавали issue с "Вы там чего, ребят"?)
Bogdan (SirEdvin)
Количество except-pass просто запредельное
George
Я не могу с бинго остановиться, оно затягивает.
- name: Bingo 7
debug:
when: foo == [True]
vars:
foo: '{{ [yes] }}'
Vladimir
Aleksey
Vladimir
А как refreshonly прикрутить?
Vladimir
Он, вроде, каждый раз этот таск вызывает
Vladimir
Даже если не менялся файл
Aleksey
значит меняется
Vladimir
ммм
Vladimir
Спасиб
Lamobot
Timur
George
Пытаюсь уговорить себя, что Ансибл и здравый смысл совместимы, но пока что у меня всё обсыпается.
- name: Bingo 10
debug:
when: foo
vars:
foo: '{{ "n" + "o" }}'
# Enjoy your ADIS... Ansible.
Maksim
Aleksey
Dmitriy
Всем доброго дня. Есть задача остановить все systemd сервисы на хосте, кроме указанных. Не могу найти как это сделать. Из идей (что нагуглил)
получить все сервисы
tasks:
- name: get service facts
service_facts:
далее как то так
when: ansible_facts.services["oracle-tfa.service"] is not defined, но тут как то надо прописать условие, если сервис, например ssh, network (итд), то их не оставнавливать. Но что то не могу понять как это сделать правильно.
Aleksey
George
Dmitriy
Aleksey
Alex
@amarao
Есть какие-нибудь идеи насчет бага с делегированием и интерпритатором?
Alex
George
точно? Что дебаг показывает для обоих хостов?