
Udjin
06.09.2018
13:12:13
да я не обвиняю, просто внимательно плей не прочитал

?simplemice
06.09.2018
13:34:36

Денис
06.09.2018
14:09:03
кто-нибудь на память помнит модуль ансибла, в котором есть параметры, которые нельзя вместе указывать одновременно? желательно виндовый. Хочу в коде глянуть как сделано, чтобы так же сделать
а то полистал сейчас с десяток - не нашел такого

Google

Sergey
06.09.2018
14:12:23

Vlad
06.09.2018
14:17:36
module = AnsibleModule(
...
mutually_exclusive=[
['password', 'token'],
],
...

Udjin
06.09.2018
14:18:42
ну если что, валите все на меня
оно заработало. Финальный вид плея вот такой:
https://pastebin.com/BNX3cy0F
теперь нужно понять, как сделать так, чтобы плей работал только когда в list больше одного айпишника
и да, про пиво я серьёзно)

bebebe
06.09.2018
14:19:39
ну вот и закончились ваши трехденвные мучения, у всего чата отлегло
а говорили что аншибл - это просто
обманщики

Денис
06.09.2018
14:23:23
Я такое писал. Сейчас гляну.
нашел такое в модулях, вроде норм
If (($password_expired -ne $null) -and ($password_never_expires -ne $null)) {
Fail-Json $result "password_expired and password_never_expires are mutually exclusive but have both been set"
}

Sergey
06.09.2018
14:23:23

Денис
06.09.2018
14:23:40
ну или сейчас через список поищу, да
спасибо

Sergey
06.09.2018
14:23:46

Google

Денис
06.09.2018
14:24:00
ну это модуль который уже в ансибле :)

Udjin
06.09.2018
14:24:19
сейчас попробую

bebebe
06.09.2018
14:24:41

Udjin
06.09.2018
14:25:03

bebebe
06.09.2018
14:25:57
вы приходите на канал ansible, и говорите что jinja2 это псевдоязык, и делаете это без уважения

Sergey
06.09.2018
14:26:45

Udjin
06.09.2018
14:27:05

bebebe
06.09.2018
18:00:29

Vadim
06.09.2018
18:02:02
этому каналу нужен стикер с "Вас посетила полиция lineinfile. Пока без штрафа, но впредь не нарушайте"

Udjin
06.09.2018
18:02:16

bebebe
06.09.2018
18:02:47

Vadim
06.09.2018
18:03:06
я переживал, но не открыл - из-под крана налили

bebebe
06.09.2018
18:04:19

Vadim
06.09.2018
18:04:31

Udjin
06.09.2018
18:05:12
лол)
а у нас тут вообще нормального пива нету
вот вином и приходится расслабляться

Vadim
06.09.2018
18:07:00
хорошая идея, кстати

Google

bebebe
06.09.2018
18:10:56
этому каналу нужен стикер с "Вас посетила полиция lineinfile. Пока без штрафа, но впредь не нарушайте"
я переодически встречаюсь с такими задачами, где lineinfilie, скажем так выглядет логичнее
задачи эти выглядят так:
представьте есть роль которая менеджит конфиг какого-то сервиса из интернетов
менеджмет допустим решается lineinfile
в случае, если полностью темплейтизировать конфигурационный файл, то при изменении версии софта, нужно откуда-то брать темплейт для новой версии и подкладывать
lineinfile позволяет этого избежать
это правда задачи 2016/17 года, сейчас я уже их не встречаю

Vadim
06.09.2018
18:12:04
в идеале это был бы темплейт в /etc/foo/conf.d

bebebe
06.09.2018
18:12:42
да, понимаю.
в случае с задачей прометея и его конфига в yaml, этот yaml можно подгурзить через include_vars в переменную например promethteus, поменять структуру переменной, и сдампить обратно.
тоже самое касается и json (все что кушает include_vars)

Vadim
06.09.2018
18:15:57
ну не знаю, yedit имхо самое разумное решение - ansible очень любит переформатировать переменные если заподозрит что это не просто строка

bebebe
06.09.2018
18:17:10
ога, я очень удивился как ansible внутри устроны типы переменных, когда плотно работал с json_path.

Dmitry
06.09.2018
23:01:43
Недавно обновился до 2.6. Как народ хранит пароли для разных vault файлов? до этого был export env var, но дико неудобно когда нужно много паролей...

bebebe
06.09.2018
23:02:57
хранить пароли можно в hashicorp vault

Dmitry
06.09.2018
23:03:08
пароли для Ansible Vault
тот кароль, чтобы расшифровать Vault

bebebe
06.09.2018
23:03:42
да, я понимаю о чем вы

Dmitry
06.09.2018
23:03:51
Так-то понятно. есть еще Credstash
но пока этого нет
то есть harshicorp для хранния паролией к vault?

bebebe
06.09.2018
23:04:32
по идеи, пароли от vault должны храниться в CI (либо в SECRET'ах к джобам), либо в умах операторов
в том числе можно дергать их из hashicrop vault
для этого выписываются токены и механим более гибкий, можно шарить разным людям/джобам с разными параметрами (количество использования, время жизни токена и прочие ухищрения)

Dmitry
06.09.2018
23:06:20
Да, ок. Но это не решает вопроса с наличием нескольких vault, и как это передать ansible?

Google

Dmitry
06.09.2018
23:06:24
--vault-pass?
и каждый раз менять откуда брать пароль

bebebe
06.09.2018
23:07:04
у вас в одном запуске плейбуки использоваутся разные vault ? и вам нужно пропихнуть несоклько ключей?

Dmitry
06.09.2018
23:07:19
(пока))

Admin
ERROR: S client not available

Dmitry
06.09.2018
23:07:47
но при запуске другого плейбука другой среды - другой vault

bebebe
06.09.2018
23:07:51
вы можете подложить пароль в файл и указать ansible брать оттуда пароль

Dmitry
06.09.2018
23:08:10
это сейчас так и происходит. Поэтому вопрос в том, как производить смену?
dev/prod/...

bebebe
06.09.2018
23:09:32
не понимаю вашей проблематики.
попробуйте перед запуском класть пароль в файл и запускать плейбуку

Dmitry
06.09.2018
23:09:36
Сейчас это переменная ANSIBLE_VAULT_PASS_FILE

bebebe
06.09.2018
23:10:09
вы можете положить на уровень плейбуки файл ansible.cfg, в котором будет указать путь до файла с паролем

Dmitry
06.09.2018
23:10:13
или как там... она задает путь к dev паролю. при этом плейбук запускается без необходимости передавать значение пути к файлу.

bebebe
06.09.2018
23:10:21
vault_password_file = /etc/ansible/vault

Dmitry
06.09.2018
23:10:48
к какому vault паролю этот путь? (dev/stg/prod/)?
так-то я могу указать dev, а при запуске на другой среде указывать принудительно путь к другим ключам
можно попробовать по бранчу вытаскивать называние среды и искать путь так...

bebebe
06.09.2018
23:12:36
я вам напомню, что собираю контейнеры для каждой из сред и таких проблем нет.
не до конца понимаю в чем проблема. вы можете указать файл /etc/ansible/vault/${BRANCH}
в моем случае он всегда лежит в /etc/ansible/vault и соответствует тому окружению в котором запускается, т.к. заранее был собран нужный контейнер

Google

Dmitry
06.09.2018
23:14:44
проблемы как таковой нет, я думал может добавили какой-то keychain или еще что-нибудь
Спасибо, по имени branch неплохой вариант. Но мне надо это все еще по веткам распихать. Буду вручную тогда указывать

GithubReleases
07.09.2018
03:08:48
ansible/ansible was tagged: v2.7.0rc1
Link: https://github.com/ansible/ansible/releases/tag/v2.7.0rc1
Release notes:
New release v2.7.0rc1

Nklya
07.09.2018
03:53:00
Начиная с 2.4 ансибл поддерживает разные айди для волта
https://code-examples.net/en/docs/ansible~2.4/vault

Gleb
07.09.2018
04:20:16

bebebe
07.09.2018
07:50:04

?simplemice
07.09.2018
12:04:36
@vrutkovs бот еще живой ?

Vadim
07.09.2018
12:04:49
неча тут публично гадить

?simplemice
07.09.2018
12:05:06
убери у него тогда инлайн
если не сложно
что бы тут хелпом не флудили

Vadim
07.09.2018
12:06:07
вроде убрал в BotFather но дальше я не копенгаген

?simplemice
07.09.2018
12:06:31
ок

terry
07.09.2018
13:59:20
Добрый день. Подскажите, в чем может быть проблема? Я подозреваю, что на ubuntu 18.04, которая отдает FAILED! - python дефолтный не python2.7 ...
atabase-scylla | SUCCESS => {
"changed": false,
"ping": "pong"
}
shop-new | FAILED! => {
"changed": false,
"module_stderr": "Shared connection to 192.168.25.99 closed.\r\n",
"module_stdout": "/bin/bash: /usr/bin/python: No such file or directory\r\n",
"msg": "MODULE FAILURE",
"rc": 127