Size: a a a

ansible — русскоговорящее сообщество

2018 February 08

S

Slach in ansible — русскоговорящее сообщество
Иван Григорьев
А можно плейбук натравить на определенный хост? без inventory
источник

ИГ

Иван Григорьев in ansible — русскоговорящее сообщество
спасибо
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Будет ли работать when если использовать его в файле с переменными? То есть, если я укажу значение переменной при запуске сценария, оно будет использовать ту переменную, для которой when равно то, что указано?
источник

M

Mikhail in ansible — русскоговорящее сообщество
ID:448411134
Будет ли работать when если использовать его в файле с переменными? То есть, если я укажу значение переменной при запуске сценария, оно будет использовать ту переменную, для которой when равно то, что указано?
IMHO не будет, будет ошибка синтаксиса.
Можно использовать уловные выражения Jinja2 https://stackoverflow.com/a/14215034/205355
{{ 'Update' if files else 'Continue' }}
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Mikhail
IMHO не будет, будет ошибка синтаксиса.
Можно использовать уловные выражения Jinja2 https://stackoverflow.com/a/14215034/205355
{{ 'Update' if files else 'Continue' }}
засада... Спасибо
источник

M

Mikhail in ansible — русскоговорящее сообщество
Лучше проверить конечно. Но даже по синтаксису не ясно как это писать. Определение переменных - просто словарь.
источник

M

Mikhail in ansible — русскоговорящее сообщество
Я видел роли, где переменные (список пакетов) назначались в зависимости от ОС (RedHat или Debian). Но не помню как там было сделано, кажется include использовалось...
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Я сейчас проверю
источник

M

Mikhail in ansible — русскоговорящее сообщество
Кажется вспомнил. Там переменные загружались из отдельного файле через vars_files. И имя файла условным  выражением jinna2 формировалось.
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Mikhail
Кажется вспомнил. Там переменные загружались из отдельного файле через vars_files. И имя файла условным  выражением jinna2 формировалось.
Как то так работает 😊 :
  python_dir: "{{ '3.6.4/bin/python3' if ver_python | default(2) | int == 3 else '2.7.14/bin/python' }}"
источник

M

Mikhail in ansible — русскоговорящее сообщество
Если таких условий 1 - 3 то нормально. Если много, то лучше разные вар файлы подгружать.
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Согласен.  Это мне подходит, т.к. не очень то и удобно прописывать when для каждого запуска скрипта питона. А это то что нужно
источник
2018 February 11

A

Artem in ansible — русскоговорящее сообщество
всем привет
источник

A

Artem in ansible — русскоговорящее сообщество
парни не воткну как шифровать пароли в плейбуках
источник

M

Maxim in ansible — русскоговорящее сообщество
Посмотри про ansible vault
источник
2018 February 12

A

Artem in ansible — русскоговорящее сообщество
Maxim
Посмотри про ansible vault
спасиб
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Назрела вот такая задача. Есть сценарий который создает пользователя и ззаливает в его домашний каталог проект. Как реализовать чтобы сценарий проверял существует ли пользователь, и если пользователь существует - сценарий останавливаться. То есть осуществить проверку пользователя. Если просто  использовать user - то сценарий перезапишет данные в домашнем каталоге.
источник

NK

ID:448411134 in ansible — русскоговорящее сообщество
Пытаюсь сделать что-то типа:
   - name: Create user, if it doesnt exist already
     getent:
       database: "{{ username }}"
       key: root
     register: getent_result
     failed_when: "'User is exists' getent_result.stderr"

Но не работает
источник

A

Artem in ansible — русскоговорящее сообщество
ID:448411134
Назрела вот такая задача. Есть сценарий который создает пользователя и ззаливает в его домашний каталог проект. Как реализовать чтобы сценарий проверял существует ли пользователь, и если пользователь существует - сценарий останавливаться. То есть осуществить проверку пользователя. Если просто  использовать user - то сценарий перезапишет данные в домашнем каталоге.
самое простое завести другой сценарий для деплоя наверное
источник

A

Artem in ansible — русскоговорящее сообщество
но интересно решение задачи в твоих условиях увидеть
источник