Dmytro
без —check
только так поймешь
Danila
какой там параметр, чтобы только один хост выбрать?
Vladislav 👻
да сделай файл с одним хостом и через него запускай
Vitaly
-l hostname
Vitaly
Ну и да, если в режиме чека, то не создает директорию и зафейлится
Dmytro
вот, точно
Dmytro
Vitaly
Ну мы строку запуска не видели, ждемс результат
Dmytro
я думаю, что большинство не использует check, а сразу прогоняет плейбук на самом ближнем тестовом энве
Dmytro
всё таки это ближе к реальности и позволяет быстро и просто оценить результат, даже "пощупать" скорее, чек слишком эфемерен сам по себе
Dmytro
чек хорош в ситуации когда ты написал что-то такое, что сам не уверен, что так можно
Danila
зараза, работает
Danila
ну, ошибку бишь не выдало, видать, пошёл качать архив
Vitaly
Vitaly
Если ктото руками чтото например поправил
Danila
я, честно говоря, в маленьком ахуе нахожусь сейчас. часов 5 или больше потрачено было, чтобы разобраться, и вот :)
Dmytro
да, в ситуации когда что-то сначала долго качается, чек тоже не плох, но можно было качать мелкий архив, если скачивание принципиально вообще
Dmytro
кстати, спрашивали и вроде не один раз, создался ли этот каталог, который must exist, а получается, что никто его и не видел
Danila
да, сам дурак
Danila
я смотрел в дебаг, видел, что file directory present и вот
Dmytro
я понимаю, сам не раз был дурак
Dmytro
вообще это кул стори
Danila
не знаю, насколько она кул, но я её запомню очень и очень надолго :)
Dmytro
ну и выводы, умозаключения)
Danila
ога )
Danila
у меня дежавю
Danila
The full traceback is:
File "/tmp/ansible_88zVTC/ansible_module_copy.py", line 351, in main
os.stat(os.path.dirname(b_dest))
fatal: [ttest]: FAILED! => {
"changed": false,
"checksum": "789a64403685ee83f026910f8fd6ee805da9c0d3",
"diff": [],
"invocation": {
"module_args": {
"attributes": null,
"backup": false,
"content": null,
"delimiter": null,
"dest": "/opt/atlassian/jira/atlassian-jira-7.6.2-standalone/bin/setenv.sh",
"directory_mode": null,
"follow": false,
"force": true,
"group": "jira",
"local_follow": null,
"mode": "0755",
"original_basename": "setenv.sh.j2",
"owner": "jira",
"regexp": null,
"remote_src": null,
"selevel": null,
"serole": null,
"setype": null,
"seuser": null,
"src": "/root/.ansible/tmp/ansible-tmp-1515369723.52-112245721945751/source",
"unsafe_writes": null,
"validate": null
}
},
"msg": "Destination directory /opt/atlassian/jira/atlassian-jira-7.6.2-standalone/bin does not exist"
}
таск:
- name: Set JIRA environment settings
template:
src=setenv.sh.j2
dest={{ jira_install_dir }}/atlassian-jira-{{ jira_version }}-standalone/bin/setenv.sh owner=jira
group=jira
mode=0755
notify: restart jira
tags: jira
Danila
➜ bin pwd
/opt/atlassian/jira/atlassian-jira-software-7.6.2-standalone/bin
➜ bin
Danila
шаблон есть и выглядит как простой файл setenv.sh
Vladislav 👻
Danila
Vladislav 👻
Убирай дефисы и пробуй
Danila
Vladislav 👻
Danila
как я их тебе уберу-то, ну
Dmytro
Womchik
ppl, почему мне пишет "ERROR! 'group_names' is undefined" ?
- name: Setup "{{ group_names }}"
hosts: "{{ group_names }}"
# tags: "{{ group_names }}"
roles:
- "{{ group_names }}"
Александр
потому, что переменная не определена?
Terry
Womchik
---
- hosts: all
tasks:
- debug:
var: group_names
Womchik
вот в таком варианте определена
Александр
а если серьёзно - ты в плейбуке сбор фактов не отключал?
Womchik
нет
Womchik
это вообще целиком два плейбука.
Александр
попробуй добавить сбор фактов первым заданием
Александр
- hosts: all
gather_facts: yes
tasks: []
Womchik
неа
Александр
попробуй для начала оставить одно вхождение переменной - пока непонятно, на какую из строчек он ругается
Womchik
на hosts
Womchik
задам вопрос по другому. мне не нравится наличие у меня пачки файлов myrole.yml:
---
- name: Setup MyRole
hosts: myrole
tags: myrole
roles:
- myrole
которые отличаются только "myrole"
хочу унифицировать содержимое.
можно и другим методом
Danila
а как сделать так, чтобы роли отрабатывали в заданном порядке?
Danila
в моём случае, бишь, чтобы сначала ставилась ява, а потом джира
Vladislav 👻
Danila
Danila
и сначала джира стартует
Vladislav 👻
Да что тебе прет то так 🙈
Vladislav 👻
Собери структуру по best practise
Danila
заинклюдить роль джиры, оставив в ролях только яву - костыль?
Danila
Nklya
Danila
Alf 🙀
а джава роль не является депенденси для джиры?
Alf 🙀
а ну да. она в мете прописана.
Alf 🙀
Danila
Alf 🙀
а ты роль как ставил? через гит клон?
Ivan
ребята, а как правильно использовать ансибл, чтобы новые генерируемые пароли сохранялись в одном месте, что-то типа password lookup, но чтобы не по разным файлам были раскиданы?
🏳️ Phil
Новые генерируемые что?
Ivan
пароли к сервисам
Ivan
типа mysql_root_password
Ivan
я так сейчас юзаю
"{{ lookup('password', 'credentials/database chars=ascii_letters') }}"
Ivan
не знаю, насколько это правильно
Aleksey
парни динамик инвентори кто свой делал ?
думаю как лучше разметить неймспейс.
предположим на сервер можно поставить 2 копии сервиса. это атрибут сервера или свойство группы ?
Danila
Danila
Обе
Magistr
Aleksey
в где читать ?
Aleksey
потому что вот эта http://docs.ansible.com/ansible/latest/intro_dynamic_inventory.html оф дока больше похожа на заметки на полях
Aleksey
на сервере надо поднять два питоносервера. одинаковых.