
Sergey
21.09.2017
15:11:16
в шаблоне напишешь:
"{{ this_role | to_nice_yaml }}" - и весь шаблон.

Ilya
21.09.2017
15:12:08
там и так жсон
но это все равно нужно править в куче мест получается

Google

Sergey
21.09.2017
15:12:30
"{{ this_role | to_nice_json }}"

Nklya
21.09.2017
15:12:57
код ролей должен версионироваться, и не будет проблем

Sergey
21.09.2017
15:14:45
есть одна мысль, к реализации которой я иду.
в репе с кодом лежит файл .json / .yml со свежедобавленными настройками. в репе с ролями/скриптами есть свои настройки, которые загружаются после разарботчиковских через merge_hash.
таким образом, у человека будет ощущение свободных рук, а тебя будут меньше дёргать по мелочам.

Ilya
21.09.2017
15:14:57
в общем проще конфигом из роли вообще не управлять )

Sergey
21.09.2017
15:16:16

Nklya
21.09.2017
15:24:44
В ситуациях, когда в компании построены нормальные процессы, а не создают отделы дивопсов, часть работы по IaC выполняют разработчики, и соответсвенно, когда им нужна новая опция в конфиге идут в репу роли и добавляют

Ilya
21.09.2017
15:36:05
1) пойти в репу роли и добавить в шаблон
2) пойти в проект и добавить переменную
либо
1) пойти в проект и поменять конфиг
и то и другое разраб делает, но во втором случае тупо работы меньше
если переменные извне тянутся другое дело, но тогда оттуда же может и конфиг целиком можно будет положить
в общем ответ на вопрос я получил, спасибо )

Sergey
21.09.2017
15:49:52

inqfen
21.09.2017
16:04:43
Всем привет
inqfen inqfen:
Господа, это я ебанутый или где? В ансибле назначаю права на директорию, mode: 0777
В итоге права x--вроде

Google

inqfen
21.09.2017
16:06:08
Делаю mode: "u=rwx, g=rwx, o=rwx" все норм

Sergey
21.09.2017
17:31:38

inqfen
21.09.2017
17:31:55
file

Sergey
21.09.2017
17:38:08
а пользователь присутствует на целевом хосте?
вернее, так: приведи, пожалуйста, конкретную строчку из tasks/*.yml, которая некорректно работает

time
21.09.2017
19:03:54

inqfen
21.09.2017
19:04:47
я про это знаю

time
21.09.2017
19:05:04
попробуй 0 опустить

inqfen
21.09.2017
19:05:16
пробовал
тоже фигня

A
21.09.2017
19:05:25
кавычки еще

inqfen
21.09.2017
19:05:35
или в owner только
надо глянуть

time
21.09.2017
19:08:08
кстати
22:07:31 › ansible -i 'localhost,' -m file -a 'name=/tmp/test state=directory mode=0777' all
localhost | SUCCESS => {
...
}
wasd at kwasdbook.nya in [~]
22:07:37 › stat /tmp/test
File: /tmp/test
Size: 40 Blocks: 0 IO Block: 4096 directory
Device: 24h/36d Inode: 1188729 Links: 2
Access: (0777/drwxrwxrwx) Uid: ( 1000/ wasd)

inqfen
21.09.2017
19:09:03
таки слазил
- name: Chmod directory
become: yes
file:
state: directory
path: "/home/{{ host_user }}/{{ task }}/{{ project_name }}/{{ component_name }}"
owner: "{{ host_user }}"
group: www
mode: "u=rwx,g=rwx,o=rwx"
recurse: yes
вот в mode Было 0777

Google

time
21.09.2017
19:09:26
(ansible 2.4.0.0)

inqfen
21.09.2017
19:09:44
причем в том же таске на файл все норм применяется
- name: Chmod entrypoint
become: yes
file:
path: /home/{{ host_user }}/{{ task }}/{{ project_name }}/{{ component_name }}/entrypoint.sh
mode: 0755
тута
но я там и 755 пробовал там где не работет и 777 там где работает
такое ощущение, что косяк, если это директория

time
21.09.2017
19:10:43
2.2.1.0 тоже хорошо
чем же твой случай такой особенный
а что за система?

inqfen
21.09.2017
19:11:54
дебиан 8

time
21.09.2017
19:14:33
тоже

inqfen
21.09.2017
19:15:17
ансибл правда вроде 2.1 (чтобы посмотреть надо на впн лезть)

time
21.09.2017
19:15:36
я проверил с 1.7-2.4
везде всё rwxrwxrwx

inqfen
21.09.2017
19:16:01
фигня у меня какая-то
завтра попробую на аналогичной машине проверить
спасибо, буду значит у себя разбираться

Pavel
22.09.2017
12:47:07
к такому меня не готовили

Lev
22.09.2017
12:50:00
?

Александр
22.09.2017
13:55:37
Не плохо

Gleb
22.09.2017
16:45:17
а как мне объяснить ансиблу что у меня в переменной 05 это не 5?

Google

Gleb
22.09.2017
16:46:20
из перменных типа 01, 02, 03 и т.д. нули теряет
как-то странно

Алексей
22.09.2017
16:47:20
Ожидаемо
0 вначале это указатель же на тип нет?
А вообще в кавычки возьми

Gleb
22.09.2017
16:49:56
ща попробую, я чёт прям призадумался
спасибо

Алексей
22.09.2017
16:51:30
Octal же

Gleb
22.09.2017
16:52:24

Алексей
22.09.2017
16:54:39
Думаю не поможет
Так что через шаблон

Gleb
22.09.2017
16:58:23
вот хрень
у меня может быть так только от 00 до 09, а потом как бы 10,11 и т.д. Не писать же отдельный шаблон.

zelo
22.09.2017
17:03:36

Gleb
22.09.2017
17:03:43
ага и те и те попробовал

Алексей
22.09.2017
17:04:45

Gleb
22.09.2017
17:04:53
может можно как-то указать что это строка, а не число?

Алексей
22.09.2017
17:05:00
А дальше парсер питона

zelo
22.09.2017
17:06:24

Google

zelo
22.09.2017
17:07:47
не буду врать, точно не помню, но кажется где-то сталкивался с разницей

Алексей
22.09.2017
17:08:10
Был не прав
http://yaml.org/spec/1.2/spec.html#id2787109

Magistr
22.09.2017
17:08:43
%02d ? мб тогда

Gleb
22.09.2017
17:10:26
:D

Magistr
22.09.2017
17:12:08
покажи код

zelo
22.09.2017
17:12:08
засада) мож проще логику из энсибла вынести?

Gleb
22.09.2017
17:13:08
да это вообще одноразовая акция, ну типа развернуть один раз если с нуля. Потом и не меняется.
покажи код
в инвнетори файле стоит
shard_key=05
в шаблоне j2
есть строка
NGINX_CLIENT_BODY_TEMP_PATH: /storage/cache/{{ shard_key }}/nginx_webdav_client_body_temp_path

Magistr
22.09.2017
17:17:07
{{ '%02d' % shard_key }} ??

kk
22.09.2017
17:18:45
вроде так можно {{ shard_key | string }}

Gleb
22.09.2017
17:20:16