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 сейчас ставится ом - ищу как убрать пип и ставить без него
Sashko
Но зачем без пипа то?
хороший вопрос - но пока не смогу ответить - так как стоит такая задача
Eduard
Готовишь докерофайл вида FROM debian:9 RUN apt-get update -q && apt-get install -yq python-pip RUN pip install ansible Потом берёшь нижний слой и загоняешь в пакет. Но это край и нужно понимать, что за что отвечает и ручками управлять зависимостями системы.
Eduard
Но я бы так не делал, хотя могу
NM
vasya при этом в sudo group
Sashko
Есть изврат, как упаковать в пакет
нене - костыли не нужны( у нас просто yum-ом потом ставит чеф там где надо ставить ямом
Sashko
Чеф и ансибло на одну машину? И вы мне про костыли?)
ансибл делает с пакером амишку - поднимается в авс-е и чеф докидывает туда остальные пакеты
Pavel
А почему в первом пайплайне нет services docker?
Спасибо. Проблема была именно в этом. 🤝
Sashko
Зачеем?
напиши заказчику за меня вопрос)))))
John
а чего это when вообще там делает?
В этом куске у меня теперь другая проблема, папка dest пустая, а архив разворачивается рядышком в tmp/sarg-1.2.3/ И называется sarg-1.2.3, что не даёт мне пойти дальше по плейбуку
Gleb
Так что, идей нет, почему docker_container не использует proxy?
ты же не думаешь что ты с помощью этого прокси сможешь скачать имидж докера? если тебе надо спулиться то делай так что бы демон докера в прокси ходил
Vladislav 👻
ага, я понял, спасибо
Oleksandr
https://docs.docker.com/network/proxy/
Vladislav 👻
не работает оно
Vladislav 👻
через переменные среды
Vladislav 👻
мне посоветовали подсунуть энвайрмент в демона через системд
Vladislav 👻
подсунул и взлетело только когда исключил NO_PROXY еще, я так подозреваю из-за текущих контейнеров из локалки
George
ну, распаковать тарболл, очевидно
George
а еще можно прямо с гита, наверное, стянуть
Oleksandr
sudo apt install awscli
Sashko
sudo apt install awscli
ну тут такое дело, что на redhat он ставит через yum после того как поднимется машинка, а на debian надо без пип ставить а отдельно в темплейте для дебиан apt-ом
Oleksandr
а. юмы
Oleksandr
а в чем именно проблема тянуть последнюю версию с гита? как сам амазон рекомендует?
Oleksandr
это результат. а в чем проблема?
Oleksandr
На какой машине?
Oleksandr
;)
John
кажется намек понял) remote_src: yes меня спасет :) счас затестим)
Silim
Silim
Всем привет
Silim
Подскажите почему не подставляется юзер??
Sergey
Подскажите почему не подставляется юзер??
Потому что не надо так. Если Jinja-подстановка, то в двойные кавычки берётся строка целиком.
Ждун
почитайте разницу про кавычки ' ' и " "
Silim
Silim
Так тоже не работает
Sergey
Так тоже не работает
Цикл вроде так никогда не работал
Silim
Это да(
Vladislav 👻
Подскажите, вот у меня есть цикл на создание пользователя, кто-то уже существует, кто-то создался, а потом мне надо инклудить таск для этого списка, могу ли я инклудить только тех, кто changed и если могу, то как это сделать?
Sergey
Сделай register и разбери его содержимое.
Vladislav 👻
а разве регистер не будет только на последнее значение листа?
Vladislav 👻
хотя наверно, проще все в одном цикле сделать, кажется понял
Vladislav 👻
Хм, надо попробовать подебажить и посмотреть, спасибо
Denis
всем привет
Отделение Bereke Bank
Подскажите возможно ли задать свой remote_user в inventory для каждой группы хостов?
Vladislav 👻
через var в группе
Отделение Bereke Bank
Сейчас попробую, спасибо! И по поводу vars - есть ли где почитать какие vars приоритетнее? В доке не нашел. Ну например, vars хоста приоритетнее чем group_vars или наоборот
George
перед group_vars
Отделение Bereke Bank
через var в группе
работает, спасибо! Только вместо remote_user ansible_ssh_user
Anton
посоветуйте воркэраунд для случая, когда нужно запарлелить include_task. есть деплой на базе списка задач, который выполняется (инклюдится) в зависимости от того сколько компонентов в аргументы получил плейбук. все include_task выполняются последовательно, но им ничего не мешает работать паралельно. async с with_items не работает, а у меня именно он отарабтывает для компонентов при include_task пример кода (деплой в рамках одного хоста): - name: run included component tasks include_tasks: tasks.yml with_items: "{{ components_to_deploy }}"
Anton
Не надо так. Объектная модель и схема использования Ансибла такого не поддерживают.
как именно не надо? я не то что бы настаиваю) может не верным путем пошел.
Anton
В зависимости от величины списка инклюдятся одинаковые таски?
там всегда иклюдится только один tasks.yml, но в {{ components_to_deploy }} прилетают нужные для tasks.yml параметры. вот эти параметры могут сказать - выполни tasks.yml с разными параметрами, несколько раз.
Kirill
да, можно и так назвать
Когда рендеришь что-то внутри чего-то, а потом срендеренное выполняешь, обычно это неудобно, тяжело отлаживать, следить за этим, дебажить и вообще узнать потом откуда ноги растут.
Anton
ок, в моем кейсе конечно довольно просто ибо там мало задач. но каким тогда правильным путем пойти? мне надо выполнять список тасок с разными парамтреами несколько раз, заивимости от параметров.
Kirill
ок, в моем кейсе конечно довольно просто ибо там мало задач. но каким тогда правильным путем пойти? мне надо выполнять список тасок с разными парамтреами несколько раз, заивимости от параметров.
Я не обещаю, что лично я помогу и вообще что кто-то поможет, но чтобы хотя бы попытались, нужно более верхнеуровнево сформулировать задачу. Ну т.е. почему нужно выполнять таски разное количество раз с разными параметрами. Может быть можно решить как-то иначе.
Anton
1. Есть окружение куда нужно задеплоить компоненты приложения. 2. Для деплоя были написаны tasks.yml, в них обычные задачи ансибл, по копированию файлов, выставлению прав, настройке некоторых служб системных. 3. При старте плейбука, можно выбрать (в CI), какие компоненты будут задеплоены (например 2 из 5). 4. В зависимости от выбранных компонентов выполняется плейбук, который иклюдит tasks.yml, столько раз, сколько было выбрано компонентов. 5. Для компонентов также существуют разные переменные, которые учитываются в tasks.yml, но этим можно пренебречь.
Kirill
А зачем несколько раз инклюдить? Разные таски для разных компонентов не хотите писать?
Anton
А зачем несколько раз инклюдить? Разные таски для разных компонентов не хотите писать?
так в том то и дело что у меня таски одинаковые :) зачем мне их несколько раз писать?
Anton
это фактически равносильно выполнению роли несколько раз, с разными параметрами. просто роль я писать не стал, у меня уж слишком мало задач.