Alex
В виртуалку прокинута шара с файлами ролей и плейбук
извращение, можно в виртуалке запускать прям из vscode используя "run ansible playbook remotely via ssh"
Alex
наверняка можно
Я на линуксе, но на винду бинарники nodejs тоже есть, у меня работает, но я всё равно не юзаю пока.
John
я на маке, координально все тоже самое :)
John
понял
Timur
извращение, можно в виртуалке запускать прям из vscode используя "run ansible playbook remotely via ssh"
Это если в виртуалке кроме запуска плейбук ничего не делать
Timur
А мне нужно бывает много чего еще там делать
Alex
Это если в виртуалке кроме запуска плейбук ничего не делать
Делать, но использовать удобные инструменты
Max
Каждый пишет что он слышит, Каждый слышит как он дышит, Как он дышит, так и пишет, не стараясь угодить.
Max
очень дзэново....
Павел П.
Добрый день. Модуль postgresql_privs postgresql_privs: database: postgres privs: USAGE type: schema objs: "{{ item }}" role: myrole loop: - pg_catalog - information_schema - public Получаю FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'item' is undefined Пробовал делать objs: [ 'pg_catalog', 'public' ] и тоже ошибка была. Что еще пробовать? Не хочется на отдельные таски разносить.
Павел П.
аналогично. Тем более помню что with_items устаревает и нужно луп юзать
Павел П.
сдвинь loop влево
и всё супер!
Павел П.
брал пример с шеллом выше лупа, потому уровень тот же оставлял. буду знать что луп - он к таске, а не. Спасибо!
Алексей
Есть такой хендлер - name: restart monit service: name: monit state: restarted он фейлится, Пишет msg "" Хотя руками если передёрнуть сервис - всё норм. вывод с -vvvv The full traceback is: WARNING: The below traceback may *not* be related to the actual failure. File "<stdin>", line 92, in <module> fatal: fexxx ]: FAILED! => { "changed": false, "invocation": { "module_args": { "arguments": "", "enabled": null, "name": "monit", "pattern": null, "runlevel": "default", "sleep": null, "state": "restarted" } },
Алексей
"msg": "" } Из-за этого фейлится весь прогон по хосту. Руками дёргаешь - не фейлится ничего. Версия ансибля 2.7.8. CentOS 6 (в нём проблема?) Как это фиксится?
Алексей
Timur
Там часто бывает, что скрипт нормально не хендлит остановку процесса
Timur
Нужно более детальные шаги делать
Timur
Я для init.d делал хендлер из нескольких тасок
Алексей
но он при ручном рестарте Shutting down monit: [ OK ] Starting monit: [ OK ]
Timur
Отдельно остановка сервиса, потом отслеживание pid, что процесс ушел, а потом новый старт и wait_for port available
Timur
На системах с systemd такого геморроя нет
Timur
Как пример - вот тут в нашей роли mysql: https://github.com/lean-delivery/ansible-role-mysql/blob/master/handlers/mysql_restart.yml
Vladislav 👻
Вчера копал блокинфайл, могу сказать, что модуль уж очень специфичный... Без маркера он не работает по сути...
Vladislav 👻
Пришлось разделять на строки и через lineinfile делать
Oleksandr
роль
Timur
Конечно
Timur
Я же выше ссылку давал
Oleksandr
сорри. а как решен вопрос галочки про соглашение о лицензировании?
Timur
Вот: https://t.me/pro_ansible/75849
Timur
Ну, и в ридми написано, что используя роль, ты автоматически соглашаешься с лицензией
Timur
Опять же - никто не мешает ручками скачать артифакты, поставив галочку, и дать роли ссылки на скачанные артифакты для деплоя
Timur
Там несколько механизмов получения артифактов поддерживается
Oleksandr
понял. спасибо. посмотрю
Max
но он при ручном рестарте Shutting down monit: [ OK ] Starting monit: [ OK ]
поменяй на башсибл, и попробуй загружать окружение с разными шеллами. неужели monit не мигрировали на systemd?
Alex
Там несколько механизмов получения артифактов поддерживается
Как я понял там нужен либо свой бакет в амазоне, либо локальный артефакт, либо артефакт на своём веб сервере. Потому что из ОТН скачать проставляя заголовок "Cookie:oraclelicense=accept-securebackup-cookie" больше нельзя.
Alex
Ну, и в ридми написано, что используя роль, ты автоматически соглашаешься с лицензией
--- - name: Install jdk hosts: localhost roles: - role: lean_delivery.java java_major_version: 8 java_minor_version: 191 java_tarball_install: false Всё хорошо, только роль не рабочая. 🤷‍♂️ TASK [lean_delivery.java : Show artifacts' urls found] ***************************************** ok: [localhost] => { "artifact_url_list": [] } TASK [lean_delivery.java : No artifact urls found] fatal: [localhost]: FAILED! => {"changed": false, "msg": "No artifact urls found, check java_package, java_major_version, java_minor_version, java_arch variables"}
Alex
Чтобы роль проходила надо 2 вещи: Первое, это скрипт авторизации; Второе это обработчик для архивных версий и релизов джавы; У меня почти готов второй, и я наверное смогу его отправить пул реквестом в роль. Но первое на баше или питоне надо бы как нибудь реализовать.
Alex
В урл надо какую то такую штуку подставлять, иначе не скачивает. AuthParam=1550842798_098ca26ab4770edca7953cda4057d760
Oleg
Коллеги, ищу в переменной все строки где упоминаются слова "app", но мне только эти слова находит: "{{ temp | regex_findall('app') }}" как мне вычлинить все строки где есть app?
Alex
а нельзя просто пользователя попросить otn credentials?
Это обязательно надо, ведь авторегистрацию сделать не получится
Max
Это обязательно надо, ведь авторегистрацию сделать не получится
а зачем ее делать? на фига эту проблему решать?
Max
она, имхо, по сути, подстрекает на нарушение EULA :)
Timur
Наша роль это делает
Max
или надо оракл гнобить (и не использовать их продукт), или уважать EULA. имхо.
Max
Наша роль это делает
а регистрация требует ответа по почте?
Timur
191 версия джавы выпилена из открытого доступа
Timur
В открытом для ветки 8 - только 201 и 202
Timur
Их роль вытягивает автоматом
Timur
Для прочих вариантов - доставайте артифакты иными путями
Timur
Потому что параметры доступа могут изменить в любой момент
Timur
Если вам нужны версии, которых нет в открытом доступе, проще их один раз ручками скачать и передать роли любым удобным способом
Timur
а регистрация требует ответа по почте?
Регистрацию наша роль не делает, конечно же. Это уже out of scope для ролей ансибла
Alex
191 версия джавы выпилена из открытого доступа
Она всё так же в открытом доступе, только в архиве
Timur
Она всё так же в открытом доступе, только в архиве
Нет, не в открытом. Без авторизации не скачать
Oleg
есть мдуль какой ниб, который просто удаляет последнюю строку в файле?
ℭ𝔞𝔯𝔯𝔬𝔩
wat?
При повторном запуске этот "модуль" снова удалит последнюю строку в файле, и при дальнейших запусках будет удалять по строке, пока файл не кончится
Denis 災 nobody
Таки артЕфакты...
Timur
Таки артЕфакты...
Это значение в русском немного отличается от английского