Eduard
Ток версия тебя приятно удивит
Jungo
Alex А:
Всем привет. Поведайте пож-та о лучших практиках по логону через ансибл. В идеале непривелигерованный пользователь и судо под рута через пароль. При этом вход по паролю руту отключить?
Sashko
Ток версия тебя приятно удивит
ну мне нужна определенная - я ее могу указать под именем пакета...
---
- include_tasks: install-redhat.yml
when: ansible_os_family == 'RedHat'
- include_tasks: install-debian.yml
when: ansible_os_family == 'Debian'
- name: Install awscli using pip
pip:
name: awscli
register: result
retries: 3
until: result is success
become: true
сейчас ставится
ом - ищу как убрать пип и ставить без него
Eduard
Sashko
Eduard
Eduard
Готовишь докерофайл вида
FROM debian:9
RUN apt-get update -q && apt-get install -yq python-pip
RUN pip install ansible
Потом берёшь нижний слой и загоняешь в пакет. Но это край и нужно понимать, что за что отвечает и ручками управлять зависимостями системы.
Eduard
Но я бы так не делал, хотя могу
NM
vasya при этом в sudo group
Eduard
Pavel
Kirill
Eduard
Sashko
Зачеем?
напиши заказчику за меня вопрос)))))
Max
John
а чего это when вообще там делает?
В этом куске у меня теперь другая проблема, папка dest пустая, а архив разворачивается рядышком в tmp/sarg-1.2.3/
И называется sarg-1.2.3, что не даёт мне пойти дальше по плейбуку
Vladislav 👻
ага, я понял, спасибо
Oleksandr
https://docs.docker.com/network/proxy/
Vladislav 👻
не работает оно
Vladislav 👻
через переменные среды
Vladislav 👻
мне посоветовали подсунуть энвайрмент в демона через системд
Vladislav 👻
подсунул и взлетело только когда исключил NO_PROXY еще, я так подозреваю из-за текущих контейнеров из локалки
Terry
George
ну, распаковать тарболл, очевидно
George
а еще можно прямо с гита, наверное, стянуть
Oleksandr
sudo apt install awscli
Sashko
sudo apt install awscli
ну тут такое дело, что на redhat он ставит через yum после того как поднимется машинка, а на debian надо без пип ставить а отдельно в темплейте для дебиан apt-ом
Oleksandr
а. юмы
Oleksandr
а в чем именно проблема тянуть последнюю версию с гита? как сам амазон рекомендует?
Sashko
Oleksandr
это результат. а в чем проблема?
George
Oleksandr
На какой машине?
Oleksandr
;)
John
кажется намек понял)
remote_src: yes меня спасет :)
счас затестим)
Silim
Silim
Всем привет
Silim
Подскажите почему не подставляется юзер??
Ждун
почитайте разницу про кавычки ' ' и " "
Silim
Silim
Так тоже не работает
Alexander
Silim
Это да(
Vladislav 👻
Подскажите, вот у меня есть цикл на создание пользователя, кто-то уже существует, кто-то создался, а потом мне надо инклудить таск для этого списка, могу ли я инклудить только тех, кто changed и если могу, то как это сделать?
Sergey
Сделай register и разбери его содержимое.
Vladislav 👻
а разве регистер не будет только на последнее значение листа?
Vladislav 👻
хотя наверно, проще все в одном цикле сделать, кажется понял
Sergey
Vladislav 👻
Хм, надо попробовать подебажить и посмотреть, спасибо
Denis
всем привет
Отделение Bereke Bank
Подскажите возможно ли задать свой remote_user в inventory для каждой группы хостов?
Vladislav 👻
Vladislav 👻
через var в группе
Отделение Bereke Bank
Сейчас попробую, спасибо! И по поводу vars - есть ли где почитать какие vars приоритетнее? В доке не нашел. Ну например, vars хоста приоритетнее чем group_vars или наоборот
George
George
перед group_vars
Vladislav 👻
Отделение Bereke Bank
через var в группе
работает, спасибо! Только вместо remote_user ansible_ssh_user
Отделение Bereke Bank
Anton
посоветуйте воркэраунд для случая, когда нужно запарлелить include_task. есть деплой на базе списка задач, который выполняется (инклюдится) в зависимости от того сколько компонентов в аргументы получил плейбук. все include_task выполняются последовательно, но им ничего не мешает работать паралельно. async с with_items не работает, а у меня именно он отарабтывает для компонентов при include_task
пример кода (деплой в рамках одного хоста):
- name: run included component tasks
include_tasks: tasks.yml
with_items: "{{ components_to_deploy }}"
Kirill
Sergey
Anton
Kirill
Anton
Kirill
да, можно и так назвать
Когда рендеришь что-то внутри чего-то, а потом срендеренное выполняешь, обычно это неудобно, тяжело отлаживать, следить за этим, дебажить и вообще узнать потом откуда ноги растут.
Anton
ок, в моем кейсе конечно довольно просто ибо там мало задач. но каким тогда правильным путем пойти? мне надо выполнять список тасок с разными парамтреами несколько раз, заивимости от параметров.
Anton
1. Есть окружение куда нужно задеплоить компоненты приложения.
2. Для деплоя были написаны tasks.yml, в них обычные задачи ансибл, по копированию файлов, выставлению прав, настройке некоторых служб системных.
3. При старте плейбука, можно выбрать (в CI), какие компоненты будут задеплоены (например 2 из 5).
4. В зависимости от выбранных компонентов выполняется плейбук, который иклюдит tasks.yml, столько раз, сколько было выбрано компонентов.
5. Для компонентов также существуют разные переменные, которые учитываются в tasks.yml, но этим можно пренебречь.
Kirill
А зачем несколько раз инклюдить? Разные таски для разных компонентов не хотите писать?
Anton
это фактически равносильно выполнению роли несколько раз, с разными параметрами. просто роль я писать не стал, у меня уж слишком мало задач.