0Pricing
Ansible Academy · Урок

Специальные метки always и never

Принудительно запускайте или блокируйте задачи независимо от условий

«Специальные метки always и never» — бесплатный урок Ansible Academy на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Ansible Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Ansible Academy содержит 4 уроков всего.

Два зарезервированных тега

Ansible резервирует два специальных имени тегов со встроенным поведением: always и never. Это не фильтры, а правила. 🔒

always запускается каждый раз

Задача с тегом always запускается в каждом плейбуке независимо от переданных параметров --tags. Это идеальный вариант для обязательной подготовки.

- name: Gather setup
  ansible.builtin.setup:
  tags:
    - always

Пропуск always

Есть один способ обойти это правило: параметр --skip-tags always исключит даже такие задачи, если это действительно необходимо.

ansible-playbook site.yml --skip-tags always

Удачное применение always

Загрузка переменных или фактов, от которых зависят последующие задачи, — идеальное применение always: они будут доступны независимо от выбранного фильтра.

- ansible.builtin.include_vars: app.yml
  tags:
    - always

never остаётся скрытым

Задача с тегом never по умолчанию пропускается. Она запускается только при явном запросе или запросе другого своего тега.

- name: Wipe database
  ansible.builtin.command: drop-all
  tags:
    - never
    - debug

Явное включение never

Чтобы запустить задачу never, укажите её напрямую с помощью --tags. Явный запрос отменяет пропуск по умолчанию.

ansible-playbook site.yml --tags debug

never для опасных действий

Используйте never для защиты рискованных или редко нужных задач, например удаления данных, чтобы они никогда не запустились случайно.

Сочетание never с обычным тегом

Добавьте к задаче never ещё и второй тег. Тогда её можно будет запускать по понятному имени, а never будет безопасно отключать её по умолчанию.

always важнее выбора

Даже если вы запускаете --tags config, каждая задача always всё равно выполняется вместе с выбранными задачами. Этот тег действует дополнительно.

Два противоположных правила по умолчанию

Запомните симметрию: always включает задачу, если её не пропустить, а never выключает её, если не запросить явно.

Безопасная задача очистки

Эта задача, удаляющая данные, имеет теги never и cleanup, поэтому запускается только при намеренном запросе очистки. 🛡️

- name: Reset state
  ansible.builtin.command: reset.sh
  tags:
    - never
    - cleanup

Быстрая проверка

Задача имеет только тег never. Когда она запускается?

Итоги

Вы узнали, что always запускается, если его не пропустить, а never остаётся отключённым, пока вы явно не запросите его тег, защищая рискованные задачи. ✅

Часто задаваемые вопросы

Урок «Специальные метки always и never» бесплатный?

Да — полный текст урока «Специальные метки always и never» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Ansible Academy, подпишись на CoddyKit PRO. Курс Ansible Academy содержит 4 уроков всего.

Чему я научусь в уроке «Специальные метки always и never»?

Принудительно запускайте или блокируйте задачи независимо от условий Ты практикуешь Ansible Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Ansible Academy?

Предыдущий опыт не требуется. Ansible Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 3 из 4.

Сколько времени занимает урок «Специальные метки always и never»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Ansible Academy?

Да. Каждый урок Ansible Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Добавление меток к задачам, плейбукам и ролям
  2. Фильтрация запусков с --tags и --skip-tags
  3. Специальные метки always и never
  4. Просмотр меток и задач перед запуском
← Назад к Ansible Academy