@pro_ansible

Страница 111 из 625
Ivan
04.12.2016
16:24:39
Но для какой-то конкретной роли нет смысла использовать default и vars

Serge
04.12.2016
16:24:48
Ну и да, там вон говорят дока есть.

Но для какой-то конкретной роли нет смысла использовать default и vars
Для какой-то, возможно, и есть. Разный смысл же

Ivan
04.12.2016
16:25:31
?

Google
Serge
04.12.2016
16:25:33
У меня бывает, что и то и то есть

Ivan
04.12.2016
16:25:38
А зачем?

Serge
04.12.2016
16:25:56
Вот ровно за тем

Два одной и той же переменной смысла правда нет.

Если есть в vars, то из defaults уже точно не заполнится

Но иногда что-то надо и в defaults положить

Ivan
04.12.2016
16:26:47
У меня другой вопрос, зачем в vars класть?

Serge
04.12.2016
16:27:07
defaults Чаще всего для обеспечения обратной совместимости.

Ivan
04.12.2016
16:27:34
Ну, кстати, да

Serge
04.12.2016
16:28:09
У меня другой вопрос, зачем в vars класть?
Как так зачем? Чтобы переменную установить. Рассчитать специфичную несколько раз повторяемую в роли переменную, которая вычисляется из контекста

Ivan
04.12.2016
16:32:23
а почему в defaults ее неположить?

Они отличаются только приоритетом

Serge
04.12.2016
16:33:36
а почему в defaults ее неположить?
Это бы подразумевало, что есть шанс получить её из другого места. Всему своё место должно быть

Google
Serge
04.12.2016
16:33:49
Они отличаются только приоритетом
Только между ними внешний контекст

Ivan
04.12.2016
16:34:21
Serge
04.12.2016
16:34:58
Что будет, если в контексте уже установлена такая переменная раньше, в другой роли?

Ivan
04.12.2016
16:36:30
Ну, ты можешь поставить переменную, которая выше vars по приоритету

И тоже все сломать

Ivan
04.12.2016
16:37:04
:-)

Serge
04.12.2016
16:37:19
vars перезапишет значения, если они раньше выставлены были

Ivan
04.12.2016
16:37:24
нет

Serge
04.12.2016
16:37:48
Иди доку читай и пробуй

Ivan
04.12.2016
16:38:20
http://docs.ansible.com/ansible/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable

Но да, сложно вызвать случайно :-)

Serge
04.12.2016
16:39:32
Консоль только

Ну и про коннекшен

Таким образом нет такого места в плейбуке, которое круче vars

Vlad
04.12.2016
16:40:43
исторически переменные роли хранились в vars. В версии 1.3 добавили defaults. С тех пор и осталось два каталога с одинаковой функцией: http://devdocs.io/ansible/playbooks_roles

Vlad
04.12.2016
16:41:44
согласен, не одинаковая - приоритет разный

Serge
04.12.2016
16:43:15
Google
Serge
04.12.2016
16:43:30
согласен, не одинаковая - приоритет разный
Они просто на двух концах пищевой цепи

Грубо :-)
Нет. Честно

Sander
04.12.2016
16:44:13
?

Ivan
04.12.2016
16:46:37
Нет. Честно
Ты подрузамеваешь, что я не читал доку, но я ее читал и знаю, что есть переменные, приоритет которых выше, чем role vars

Ivan
04.12.2016
16:47:17
role and include vars block vars (only for tasks in block) task vars (only for the task) extra vars (always win precedence)

Serge
04.12.2016
16:47:35
Блок и таск внутри роли

Да, консоль, но это вне плейбука

Таким образом снаружи роли внутри плейбука ничего такого нет.

Те ничто во внешнем yml не может перетереть vars

extra vars это вообще жесткий хак, который очень много всего может сломать, если им такие переменные выставлять:)

Его приоритет собственно и нужен чтобы внедриться внутрь какой-нибудь роли и нахачить поведение

Ivan
04.12.2016
16:54:35
Детей ужином кормлю, извини

Serge
04.12.2016
16:55:15
А мои гуляют

Ivan
04.12.2016
16:58:41
roles: - role: test var1: 'outside'

Вот так можно, но явно надо вызвать

cat roles/test/tasks/main.yml - name: debug debug: var: var1

cat roles/test/vars/main.yml var1: inside

TASK [test : debug] ************************************************************ ok: [localhost] => { "var1": "outside" }

Google
Serge
04.12.2016
17:03:01
roles: - role: test var1: 'outside'
Чот я сомневаюсь... Хотя, оно же типа тоже role var...

Алексей
04.12.2016
17:03:30
пацаны, допишите линтер а ?

Serge
04.12.2016
17:03:41
Ivan
04.12.2016
17:03:44
дефолты в этом смысле гораздо проще испортить, я с тобою согласен

Алексей
04.12.2016
17:03:47
он ведь сейчас гавно и эти ваши размышления не учитывает

Ivan
04.12.2016
17:03:57
Алексей
04.12.2016
17:04:01
и не ругается. а вы тут такие бестпрактисы описываете

Ivan
04.12.2016
17:04:10
ansible-playbook --version ansible-playbook 2.1.1.0

Serge
04.12.2016
17:04:11
дефолты в этом смысле гораздо проще испортить, я с тобою согласен
Так там просто наоборот, их не надо портить, они дефолты:)

Admin
ERROR: S client not available

Ivan
04.12.2016
17:04:26
Я имею в виду, случайно

Алексей
04.12.2016
17:04:37
https://github.com/willthames/ansible-lint

вот этот вот

Ivan
04.12.2016
17:04:55
он ведь сейчас гавно и эти ваши размышления не учитывает
Сейчас дотренирую нейросеть и выложи в паблик

Serge
04.12.2016
17:05:13
Вообще, там не линтер нужен. Ансиблу как и js реинкарнация только поможет

Алексей
04.12.2016
17:05:20
а то я как лох {{ blabla | default(10) }}

Albert
04.12.2016
17:05:21
- include_vars: "{{ ansible_os_family }}.yml"

Мало использоваемый случай

Но полезен

Google
Ivan
04.12.2016
17:06:06
Вообще, там не линтер нужен. Ансиблу как и js реинкарнация только поможет
я думаю его гибкость является не только сильной стороной :-)

Алексей
04.12.2016
17:06:08
Albert
04.12.2016
17:06:30
совсем не мало
Ну у нас тоже нет

Ivan
04.12.2016
17:06:30
Сделаешь средство пожеще, и им пользоваться невозможно будет - шаг вправо, шаг влево - нифига не работает

Albert
04.12.2016
17:06:37
Просто у других мало видел

Ivan
04.12.2016
17:07:32
Я шефом пользовался пару лет

Ансибл просто великолепен

Люди, что уходили с папета на шеф, говорили, что шеф - великолепен

Сольта только не видел, но, видать, уже и не увижу

Алексей
04.12.2016
17:08:13
Serge
04.12.2016
17:09:42
Ansible - нестабильное говно, но это лучшее, что у нас есть

Ivan
04.12.2016
17:10:02
Ты не видел другого нестабильного говна :-)

Александр
04.12.2016
17:10:07
Ivan
04.12.2016
17:10:22
Да, он гораздо проще для старта, чем все остальное

Serge
04.12.2016
17:10:28
Ivan
04.12.2016
17:10:44
Я не хочу этого знать ;-)

Max
04.12.2016
17:26:28
Да, он гораздо проще для старта, чем все остальное
не сильно проще чем солт например

Александр
04.12.2016
17:27:57
Max
04.12.2016
17:28:12
ну у меня проблем не возникло ни с тем ни с этим

только вот в солте нихуя модулей нету

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