Ах да, в довесок, я ещё творю такую дичь в

tasks -> main.yml , добавляю пустые таски между тасками =
"{{ after_req_tasks_file | default('empty.yml') }}"
зачем? ну, если вдруг нужна какая либо доп кастомизация, то ты просто в плэйбуке указываешь типа

vars:
is_switchover: true
after_req_tasks_file: "{{ playbook_dir }}/02-after_req_tasks_file.yml"


как выглядить tasks - > main.yml
- name: "[ main ] - 01. Установка зависимостей"
import_tasks: 01-req.yml
when: is_switchover is not defined

- name: "[ main ] - 02. Таска после установки всех зависимостей. ОПЦИОНАЛЬНАЯ"
include_tasks: "{{ after_req_tasks_file | default('empty.yml') }}"

- name: "[ main ] - 03. Подготовка для приоритетных контейнеров"
include: 03-prio_containers_prepare.yml
loop: "{{ role_prio_containers }}"
loop_control:
loop_var: maintask_loopvar
when: role_prio_containers is defined and is_switchover is not defined

9 ответов

8 просмотров

дисклеймер: я тут немного в опозиции к мейнстриму, поэтому лучше дождаться альтернативных т.з. 1. Кмк дефолты - это прекрасно. Есть несколько схожих концепций про это: convention over configuration, reasonable defaults итп -- все они про то, что не стоит заставлять пользователя/разраба при использовании библиотек, ролей лишний раз напрягаться. Иногда встречаются ситуации, когда универсальный дефолт не придумать или он может являться деструктивным -- для таких случаев есть модули assert и fail, в которых можно явным образом написать, что нужно задать и почему нет дефолта. Ну и в довесок условия вида x is defined and x и, особенно, x is not defined or (x is defined and not x) - жуть жуткая. 2. вопрос пропускаю, не самый лучший способ, но так можно жить. 3. group_vars - ок, плейбук - нет 4. т.к. список тасков у тебя зафиксирован, я бы сразу в main указал все таски с флажками и управлял бы флажками на уровне плейбука/инвентори. Так будет понятнее, в каких ситуациях запускается какая часть роли.

azadevlab- Автор вопроса
Rustem Shaykhutdinov
дисклеймер: я тут немного в опозиции к мейнстриму,...

крутяк-крутяк, спасибки по пункту 4 - немного не понял, я тут профан, для меня флаг это типа --limit , но кажется ты не про него, да?

azadevlab
крутяк-крутяк, спасибки по пункту 4 - немного не п...

да вот у тебя ж есть флажок в плее-1, можно так же делать в плее-2 - name: "[ main ] - 01. Установка зависимостей" import_tasks: 01-req.yml when: is_switchover is not defined - name: "[ main ] - 02. обновить кэши" include_tasks: "clear_cache.yml" when: clear_cache_needed

azadevlab
🔥👍

Я слежу за тобой😅

George Gaál
А ты кто ?

Да мы с Азаматом в 1 тиме, ролфлю)

Vadim
так что за компания?)

А зачем тебе? Чтобы избегать ее? ))))

Похожие вопросы

Обсуждают сегодня

Всем привет, Добавил в плагин определение user agent public function registerMarkupTags() { return [ 'filters' => [ 'staticPage' => ['RainLab\Pages\Cl...
John Norton Kruger
3
Я колись ставив гуглу антиспам 3.0, може і норм, але мені не дуже зайшло. Теж думав тиждень, що його і куди. Зупинився на трех варіантах відразу всі три і включив 1. Перевір...
𝓔𝓾𝓰𝓮𝓷𝓮𝓥 J
2
Добрый день , слышали про то что XML схемы https://schemas.xmlsoap.org/soap/envelope/ перестали работать со поза-вчера. А домен https://schemas.xmlsoap.org/ , отвечает 404 оши...
Max Dubovsky
3
Портфолио: Зовут меня Александр, мне 36 лет. Город Пушкино. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github....
Magic
10
Портфолио: Зовут меня Александр, мне 41 год. Город Киров. Общий рабочий стаж: ~14 лет Уровень квалификации: Senior Full-stack developer Где прочесть мой код? https://github.co...
Magic
11
где собака, админ группы? нычкуется и боится проявить волю, в толерантность еще не наигрался? @yelizariev
Ognezar
61
Приветствую всех, возникла проблема, до этого писал бота в простом формате где при выполнении условий приходило через send_message информация, сейчас решил добавить хендлер на...
Andrew
4
Приветствую всех, есть вопросик. Передали проект на OctoberCms, без инсталяшки в полуразвернутом виде, нужно было залить бекап бд, после залития бд, оказалось, что части строк...
Лео
14
Ребят, привет. У кого-то есть опыт заказа мерча в сторе? Есть успешные кейсы? Чёт у меня турецкую карту не принимает
Vladimir F.
7
Всем привет, может уже кто-то пытался выдернуть из api информацию о дате рождения пользователя Есть ли вообще такая возможность?
Artem Stormageddon
2
Карта сайта