Aleksey
Vegas
привет, подскажите пожалуйста, есть таск:
tasks:
- name: Get user password from /etc/shadow
shell: cat /etc/shadow | grep "{{ item.username }}" | awk '{split($0,a,":"); print a[2]}'
register: "{{ item.username }} password"
with_items:
- "{{ users }}"
как обратиться к stdout {{ item.username }} password в следующей таксе?
- name: Create user with admin access
user:
name: "{{ item.username }}"
password: '{{ "{{ item.username }} password".stdout }}'
groups: wheel
state: present
with_items:
- "{{ users }}"
как написано - не получается, пробовал уже разные варианты
Dmitrii
В регистре ты объявляешь только имя переменной
Dmitrii
ЕМНИП если есть итератор то тамбудет массив
Dmitrii
Т.е. для первого блока в итоге будет register: pass
Dmitrii
Для второго будет password: '{{ pass[index] }}'
Dmitrii
Что то типа такого, наверное
Vegas
спасибо, покопаю в эту сторону
Dmitrii
Когда можно оптимизировать базу на 5% и окупить все расходы на весь годовой билл амазона и еще бонус получить — нахер мне этот гитхаб оптимизировать?)
Dmitrii
Это я к тому, что везде все индивидуально
Dmitrii
Все верно. Корректнее сказать "всем насрать"
Dmitrii
Ибо экономия на спичках а куче людей добавится куча гемора
Bogdan (SirEdvin)
Или gitlab
Gaiaz
Народ, подскажите, я правильно использую return value?
- name: Create temporary build directory
tempfile: state=directory suffix=build
register: build_dir
использую дальше как {{ build_dir.path }}
или это не так должно работать?
Dmitrii
Dmitrii
У тебя в register будет что то типа output модуля всегда
Dmitrii
Каждый модуль туда насирает свою структуру каждый раз
Dmitrii
Поэтому через точку обращаться придется
Gaiaz
понял, спасибо. неудобно)
Dmitry
скажите, как можно красивше строку разбить в плейбуке?
Dmitry
2 url: "{{ compose_download_url + compose_version }}/docker-compose-{{ kernel_name.stdout }}-{{ os_arch.stdout}}"
Dmitry
вот такую
matt
а чем отличается removed oт absent в yum-модуле?
matt
это из исходников?
Alf 🙀
а еще вот отлично просто
# removed==absent, installed==present, these are accepted as aliases
matt
понял, спасибо
Alf 🙀
Вот
https://github.com/ansible/ansible/blob/0be8ac6797c45b811e338a2d13149607a9f7f604/lib/ansible/modules/packaging/os/yum.py#L1205
и вот
https://github.com/ansible/ansible/blob/0be8ac6797c45b811e338a2d13149607a9f7f604/lib/ansible/modules/packaging/os/yum.py#L1236
CMy3u🐈
Скиньте ссылку на чат mysql или mariadb если есть
simplemice.eth
@mysql_ru
Dmitry
наверное хочет спросить как ставить мускул ансиблом под рпм ггг
G3rhard
Köfte
command: myscript.sh
One
господа, беспрактис по хранению около сотни ssh ключей для ансиблы имеется?
Dmitry
Dmitry
мне тоже интересно
Dmitry
можно какое то FreeIPA прикрутить наверное
One
он структуру каталогов может упаковать или только с отдельными файлами работает?
One
нет FreeIPA не очень годится, сервера в разных структурах находятся, не очень удобно с ним
One
я пока решил так для себя: моунт шифрованного LUKS раздела cо структурой каталогов с ключами перед запуском плейбуков
One
и анмоунт при окончании работы
Dmitry
https://www.vaultproject.io/ ?
Nklya
А зачем ансиблу 100 ключей?
Dmitry
ну может у человека 100 проектов
Dmitry
аутсорс там какойнить
maniac
если 100 проектов, то зачем их все сразу монтировать
maniac
но тоже интересно
One
Еще такой вариант - нейминг ключей или каталогов по доменному имени сервера и имени пользователя, чтоб удобнее в плейбуках разгребать, запихнуть в приватный git и оттуда дергать при нужде. И обновлять удобно и в открытом виде не болтаются - плейбуки можно смело выкладывать.
Dmitrii
У нас сикреты как сабмодуль подключены некоторые
Dmitrii
Уже хотим отказываться от такого солюшена. Основной минус — отсутсвие разграничения прав что очевидно
Dmitrii
Но с другой стороны самый железобетонный вариант )
One
разграничение прав достигается разделением репозиториев, но и трудозатраты по поддержке возрастут
Pavel
не сотня, конечно, пока только 14 пар
Denis 災 nobody
Denis 災 nobody
maniac
тут нужно понять что именно сейчас не устраивает.
так-то можно генерить ключи с паролем и большим количеством раундов и класть себе спокойно в репу рядом с плейбуками.
Denis 災 nobody
Denis 災 nobody
паб можно хоть в инет, это безопасно
One
паб на удаленном сервере, у тебя приват для ssh по ключу
Dmitry
мне кажется что сервис типа волт все таки самый оптимальный
Denis 災 nobody
One
я про волт читаю сейчас...
Nklya
А еще можно не плодить сущности и не юзать сотни ключей для хостов. Что мешает один добавить на все?
Dmitrii
А вы держите кластер волта на разные проекты?
One
Denis 災 nobody
One
тут похожая ситуация
Nklya
Ну а после того, как есть приватный ключ, можно добавлять свой паблик на хост.
Nklya
Но конечно, когда такая ж с безопасниками, тогда да, нужно придумывать, как жить со 100 ключами
One
зачем поставить? ты с несколькими приватниками не работал чтоль? их прватник используется только для связи с их сервером
Denis 災 nobody
One
что в ансибле, что в ssh можно указать приватный ключ для хоста
Denis 災 nobody
их приватник на твоей машине не даст ничего
Denis 災 nobody
лет 10 по ключам работаю, и ни разу не было случая чтобы потребовалось вынести приватный ключ куда-либо