Sergey
Aleksey
button
+1
inqfen
вечер
Nazar
в хату
inqfen
посоны
inqfen
Кто-то знает, как без извращений реализовать подобное?
1.Есть таск с with_items
2.Есть шаблон конфига
Нужно чтобы при каждой итерации таска либо {{ item }} передавался в шаблон, либо в шаблоне само через %for in% бралось следующее значение из последовательностей
inqfen
Это таск копирования конфига в 4 агента, в каждом конфиге в агенте следующее название
inqfen
Типа agent-1, agent-2 ...
Aleksey
var указать
Aleksey
-name: ....
template:
....
var:
my_var: {{item}}
with_items:
- test
inqfen
То есть
- name: Copy agents config
template:
src: wrapper.conf.j2
dest: C:\itmh\servers\bamboo\{{ item }}\conf\wrapper.conf
var:
name: "{{ item }}"
with_items:
- "agents"
Я правильно понял?
inqfen
И в шаблон конфига {{ name }} вставить
Alexander
Пакетные менеджеры языков - всё же для разработчиков, а не для Ops.
так а в чём разница?) сегодня ты разрабатываешь код как developer, завтра настраиваешь сервер и деплоишь его как op)
ну, ок, раньше да, я согласен, deb было бы постабильнее, но сейчас же всё в докерах, и. там и там в RUN это было бы с фиксированной версией системы в FROM…
Alexander
ну то есть в чём разница между RUN apk install … и RUN python3 pip ibstall …
Maksim
Был ли у кого-то опыт работы с windows хостами через ansible?
Tadeusz
был
Aleksey
Maksim
правильно я понял что только winrm, openssh не пашет?
Tadeusz
правильно
Maksim
ну и хорошо, спасибо =)
Tadeusz
удачной ебли, сэр)))
Maksim
ага, даже так… буду иметь ввиду
Danila
а мы ж можем в плейбуке закидывать сразу две группы в хосты через запятую?
Vladimir
https://github.com/andrewrothstein
349 results for repositories matching "ansible-". 349, Карл!!1
Vladimir
совершенно случайно наткнулся, когда в гэлэкси копался
Alexander
Всем привет, может кто сталкивался с подобной проблемой - выплоняешь один и тот же playbook и Handler не запускается на рандомных машинах. Обнаружил, что если запустить с —fork 1, то Handler отрабатывает на всех машинах кроме одной рандомной. Вот тут можно взглянуть на playbook и вывод: https://pastebin.com/6iNat3Vt
Dmytro
патч@пробуй
класс
Dmytro
Как вы там, живы еще?
бывают ситуации когда версия ансибля это реквайрмент и он не тобой сформирован
такие дела
Sergey
GithubReleases
https://github.com/ansible/ansible/releases/v2.5.0b1 was tagged
inqfen
Утро
inqfen
Господа, подскажите, как в win_command не ждать return code?
inqfen
Есть приложение, которое при установке сразу запускается и плейбук на этом месте зависает
GithubReleases
https://github.com/ansible/ansible/releases/v2.5.0 Beta 1 was tagged
inqfen
inqfen
inqfen
var не изменяется
inqfen
В шаблоне
Mikhail
Посаны, есть роль, которая начинается с таска:
- name: setting facts
set_fact:
another_esb_ip_address: "{{ esb_ip_address_2 }}"
version_of_bus: "{{ bus_name_1 }}"
when: "{{ ansible_hostname | regex_replace( '.+(\\d)\\..+', '\\1' )}}" == '1'
При выполнении ругается на синтаксис:
version_of_bus: "{{ bus_name_1 }}"
when: "{{ ansible_hostname | regex_replace( '.+(\\d)\\..+', '\\1' )}}" == '1'
^ here
Т.е. на операцию сравнения. На сами два знака равно.
Что я делаю не так? != работает отлично
inqfen
Там строка?
inqfen
И пробела нет
inqfen
=='
Mikhail
Там строка, да. Давай я лучше сейчас линк на пастбин скину
Mikhail
https://paste.ofcode.org/CaBBYmkqURPvB6DUHh9JWH
Mikhail
Там пробел. Т.е. условно "{{}}" == ''
Mikhail
Операцию сравнения могу вызвать, только когда я ansible_hostname с регуляркой записываю в отдельную переменную и потом просто её вызываю для сравнения
inqfen
vscode ругается на cannot read implicit mapping pair
inqfen
ему не нравится когда when: {{ что-то }} ==
inqfen
а when что-то == норм
inqfen
Видимо сначал надо через set_fact сделать типа
- name: setting facts
set_fact:
thing: "{{ ansible_hostname | regex_replace( '.+(\\d)\\..+', '\\1' )}}"
А потом when thing == '1'
Mikhail
inqfen
Ну, особенночти ямла
inqfen
Pavel
Я бы сказал pip это для случая, когда ставишь в virtualenv
Alexander
Спасибо, дело однозначно в strategy. Пока обновиться не могу, но смена strategy на serial решила проблему - за 10 прогонов все handler'ы отработали.
inqfen
inqfen
в плане, что после pip install docker-compose docker в ансибле будет работать
inqfen
а послеapt install нет, потому что модулей для питона нема
Mikhail
Sergey
зато тащищь зависимости необходимые для языка
Я вообще писал об общем случае, а не о пипе. Ну и повторюсь - пип таки не умеет, да и не его это работа, ставить в систему потребные библиотеки. Венв собрать - это да, пожалуйста, а делать из него менеджер зависимостей - лол.
Mikhail
Roman
Хех, работает! Спасибо!
👍 просто в when не нужны скобки от Jinja, просто сразу переменные.
This is easy to do in Ansible with the when clause, which contains a raw Jinja2 expression without double curly braces (see Variables). It’s actually pretty simple:
Maksim
Коллеги, есть проблема с winrm.
Пытаюсь заставить работать с клиентской машины на OSX High Sierra, ansible 2.4.2. Целевая машина - windows 2016 Server.
Суть в том, что поставил через pip pywinrm, но при попытке выполнения win_ping
"msg": "winrm or requests is not installed: No module named xmltodict»
По всякому уже крутил, вроде все стоит. Может было такое у кого-то?
G3rhard
а почему на xmltodict ругается?
Maksim
просто чезер python всё импортируется
G3rhard
pip install xmltodict?
Maksim
да не, тут всё ок
Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 12:01:12)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import xmltodict
>>> import winrm
>>>
Tadeusz
мб у тебя не оттуда питон цепляется?
Tadeusz
вангую что так оно и есть
Maksim
пойду туда ковырять, вполне вероятно
Sergey
есть смысл проверить sys.path, кажется
Tadeusz
Tadeusz
так собери ansible’у ваще отдельный virtualenv и в рот его того этого
Maksim
нет, ansible ставил из pip
Nklya
На макоси может быть несколько питонов.
Может ансибл и либы в разных
Maksim
подозреваю что проблема тут
python version = 2.7.10 (default, Jul 15 2017, 17:16:57) [GCC 4.2.1 Compatible Apple LLVM 9.0.0 (clang-900.0.31)]