@pro_ansible

Страница 220 из 625
Konstantin
18.06.2017
08:51:23
форк, один файл из многих другой кареткой?

ладно, спасибо, я думал что-то с линтером

Sander
19.06.2017
09:43:21
Всем привет

столкнулся с проблемой используя archive. https://docs.ansible.com/ansible/archive_module.html --- когда запаковываю файлы в архив, он запаковывает все кроме папок, которые имеют имя с точкой. Надо чтоб и папки с точкой, тоже архивировал, что можно тут сделать? ---

Google
Sander
19.06.2017
09:49:19
?

Павел
19.06.2017
09:51:29
Воооот. Ты на правильном пути, ты уже пришёл к тому, что надо костылить анзибл ))

Sander
19.06.2017
10:03:16
костыль приходится, поэтому и нужно чтоб с некоторые архивчики с . точкой не удалял.

может кто подскажет

вроде бы сделал

- name: "Archive project" archive: path: - "{{ project_path }}/*" - "{{ project_path }}/.git" dest: "{{ artefact_path }}" format: "gz"

если кому нужно

кто-то говорил про костыли )?

Sander
19.06.2017
10:06:49
пока что нет jenkins, поэтому делаем так, людей пугает что-то новое, поэтому артефакт собираю ансиболом. ---

это лучше чем bash

Google
Konstantin
19.06.2017
10:22:26
ребят, кто-то юзает molecule под докер? Как тестировать роли, когда контейнер не совсем полноценная виртуалка? (

Hackru
19.06.2017
10:29:25
Тестируй в вагранте?

Konstantin
19.06.2017
10:39:42
Тестируй в вагранте?
да, но развернуть виртуалку или поднять контейнер не одно и тоже, даже если заранее подготовить образ

вопрос в другом, для чего такой бэкэнд? (

Sander
19.06.2017
14:08:57
кто-нибудь пожет подсказать, использую ansible 2.3, есть две группы в hosts ---- [group1] host1 [group2] host2 --- запускаю playbook, где у меня прописан - hosts: "group1" но когда запускаю, он почему-то берет зависимсоти из /inventories/vagrant/group2, мвесто group1 ---- не очень понимаю в чем проблема

Konstantin
19.06.2017
14:10:20
вместо или вместе?

Sander
19.06.2017
14:11:36
вместо, vagrant/group1 запускаются зависимости из vagrant/group2

в итоге вместо этого подставляются неправильные переменные

[group1] vagrant.stage ansible_user=vagrant ansible_connection=ssh ansible_ssh_user=vagrant ansible_ssh_port=22 [group2] vagrant.stage ansible_user=vagrant ansible_connection=ssh ansible_ssh_user=vagrant ansible_ssh_port=22

если я удалю group2, то оно нормально будет стучаться в group1, но сразу как добавляю group2, то он начинает параметры брать из него

бага в ansible?

lastsky
19.06.2017
14:17:53
у тебя хосты одинаково называются

он берет их из group1

lastsky
19.06.2017
14:18:55
хм, а точно ли из последней? мне показалось что просто на первой группе сервер, на нём выполняется, и выглядит как будто бы на второй.

Sander
19.06.2017
14:19:20
да один и тот же хост в двух группах, потому что это тестовые сервера.

lastsky
19.06.2017
14:20:01
по логике вещей вообще группа создана для того чтобы иметь >1 сервера.

Sander
19.06.2017
14:21:07
то есть скорей придется переделать все на хосты

проблема в том что на одном сервере много сайтов, но некоторые сайты могут быть на двух серверах.

на том где остальные и на еще одном

Google
Sander
19.06.2017
14:26:58
теперь вторая проблема, у меня один хост, на который надо деплоить разные проекты. Как мне менять inventories, если хост 1-один.

lastsky
19.06.2017
14:28:09
[project1] server1 [project2] server1 [webservers] server1 server3 [servers] server1 server2 server3 server4

Max
19.06.2017
14:28:13
Два плейбука которые дергают одну роль с разными параметрами?

lastsky
19.06.2017
14:29:33
hosts: project1 tasks: .... hosts: webservers tasks: ...

Sander
19.06.2017
14:29:38
да два плейбка, которые дергают одну и ту же роль, но параметры разные. Я создаю два yml файла, в которых разные - hosts

Max
19.06.2017
14:29:57
Зачем?

Сервер же один

Sander
19.06.2017
14:30:25
чтоб он подхватывал разные inventores, я прописываю ему - - hosts: "group1"

Max
19.06.2017
14:30:48
А что в инвентори?

Sander
19.06.2017
14:30:55
как он будет подхватывать разные параметры из group_vars

Max
19.06.2017
14:31:17
А зачем те переменные группы.

Sander
19.06.2017
14:31:35
inventories/dev/group_vars/main.yml inventories/stage/group_vars/main.yml inventories/prod/group_vars/main.yml inventories/vagrant/group_vars/main.yml

lastsky
19.06.2017
14:31:40
часть можно в hostvars кинуть если что. а то наразводят group_vars и потом думают почему у меня упал прод.

Sander
19.06.2017
14:31:44
может быть 1 сервер для сайта, а может быть 2

переменные, потому что пути разные и логика у каждого

Max
19.06.2017
14:32:06
Переменные в роль

Нафига в группу?

Sander
19.06.2017
14:32:45
в группе, потому что несколько серверов может быть на сайт

lastsky
19.06.2017
14:33:03
Переменные в роль
а потом в один момент приоритеты переменных снова поломают.... и разбирайтесь )

Google
lastsky
19.06.2017
14:33:11
опасно!

Max
19.06.2017
14:33:19
Лол

Ну дааа)

Но можно не указывать одинаковые

lastsky
19.06.2017
14:33:59
да, лол, когда у тебя прод работает. а когда не работает из-за того что туда катнулись defaults из роли - это точно не лол :)

Max
19.06.2017
14:34:01
Ща домой зайду покажу

Sander
19.06.2017
14:34:13
так как правильно тогда, если я в hostvars кину переменные, и мне понадобиться сделать это на двух серверах, то мне что создавать два hostvars для каждого сервера?

Admin
ERROR: S client not available

lastsky
19.06.2017
14:34:28
hostvar - переменная уникальная для хоста

Sander
19.06.2017
14:34:51
для хоста, а у меня на несколкьо сайтов один хост

lastsky
19.06.2017
14:35:11
короче

http://docs.ansible.com/ansible/playbooks_variables.html#variable-precedence-where-should-i-put-a-variable почитай лучшие практики

"Куда положить переменную"

и вот сделаешь по этим рекомендациям - не должно быть проблем

Sander
19.06.2017
14:35:53
да времени нет мне надо сейчас быстро поправить

Max
19.06.2017
14:36:58
блин

одинаковые переменные - в defaults роли

разные - в два плейбука например prod.yml и staging.yml

lastsky
19.06.2017
14:37:52
ты прям называешь как я!

Google
lastsky
19.06.2017
14:37:57
?

аж вздрогнул.

Max
19.06.2017
14:38:23
vars: var1: yoba var2: DESU

переменные группы нужны когда у тебя одна и та же хрень должна выкатываться на разные группы серверов с разными параметрами

логично полагать, что у тебя один сервер не должен хавать 2 пачки переменных групп

в инвентори у тебя будет

[my_fucked_host] hostame

ну ок параметры для ссх

если проект один, и нужно 2 окружения то не надо делить их переменными групп, нужно сделать 2 плейбука, потому что глупо разом катить и то и другое, если это прод и стейдж

Sander
19.06.2017
14:42:45
так я так делаю: ansible-playbook -i inventories/vagrant deploy:group1.yml

Max
19.06.2017
14:43:29
а переменные в группе те зачем тогда?

Sander
19.06.2017
14:43:30
он понимает что это деплой на vagrant, /inventories/vagrant/group_vars

Max
19.06.2017
14:43:48
да не нужны тебе group_vars

Sander
19.06.2017
14:43:56
я в плейбке прописаю - hosts: group1, и он подхватывает нужную группу

Max
19.06.2017
14:44:19
переменные в плейбук пропиши

и всё

Sander
19.06.2017
14:45:30
и так же запускать группу? просто если в плейбке то уже не очень удобно, так-то отдельный конфиг

Max
19.06.2017
14:45:49
какая те разница где они прописаны?

групповые нужны когда ты один плейбук сразу катишь на несколько групп

у тебя же не та ситуация

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