0Pricing
DevOps Bootcamp · Урок

Объединение условий с and / or

Создавайте составные выражения when

«Объединение условий с and / or» — бесплатный урок DevOps Bootcamp на CoddyKit. Это урок 3 из 4. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения DevOps Bootcamp, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс DevOps Bootcamp содержит 4 уроков всего.

Несколько правил

Для реальных решений часто нужно учитывать несколько правил одновременно. Ansible позволяет объединять проверки с помощью and и or внутри одного when. 🔗

Оба условия должны быть истинными

При использовании and должны выполняться все части условия. Эта задача запускается только на узлах Debian, которые также запросили дополнительные компоненты.

when: ansible_os_family == "Debian" and install_extras

Достаточно одного условия

При использовании or достаточно любой истинной части. Условие подходит для узлов из промежуточной или тестовой среды.

when: env == "staging" or env == "test"

Сокращённая запись со списком

Запись when в виде списка YAML означает, что истинным должен быть каждый элемент. Это простой и понятный способ выразить and.

when:
  - ansible_os_family == "Debian"
  - install_extras

Группируйте скобками

Сочетаете and с or? Используйте скобки, чтобы явно обозначить группировку и избежать неожиданных результатов.

when: (env == "prod" or env == "staging") and backups_enabled

Правила приоритета

Как и в Python, and имеет более высокий приоритет, чем or. Если сомневаетесь, используйте скобки, чтобы логика читалась именно так, как Вы задумали.

Инвертируйте группу

Поставьте not перед группой в скобках, чтобы инвертировать её целиком. В этом примере задача пропускает рабочую и промежуточную среды.

when: not (env == "prod" or env == "staging")

Сочетайте факты и переменные

Условия могут объединять собранные факты с Вашими переменными, поэтому задача реагирует и на узел, и на Ваше намерение.

when: ansible_memtotal_mb > 2048 and enable_cache

Каждый элемент списка

В записи со списком каждая строка представляет собой одно выражение. Они объединяются с помощью and, поэтому для запуска задачи должны выполняться все.

Следите за типами переменных

Сравнивайте числа как числа, а строки как строки. Если заключить число в кавычки, например "9", оно станет строкой, и проверка может завершиться неправильно.

Понятная логика — надёжная логика

Используйте запись со списком для простого and, а скобки — для смешанной логики. Понятные условия легко проверять и безопасно применять. 🎯

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

Давайте проверим составные условия.

Итоги

Объединяйте проверки с помощью and, or и not. Список when означает, что истинными должны быть все условия; для ясности заключайте смешанную логику в скобки. ✅

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

Урок «Объединение условий с and / or» бесплатный?

Да — полный текст урока «Объединение условий с and / or» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс DevOps Bootcamp, подпишись на CoddyKit PRO. Курс DevOps Bootcamp содержит 4 уроков всего.

Чему я научусь в уроке «Объединение условий с and / or»?

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

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

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

Сколько времени занимает урок «Объединение условий с and / or»?

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

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

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

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

  1. Запуск задачи только при значении True
  2. Ветвление по сведениям о семействе ОС
  3. Объединение условий с and / or
  4. Регистрация результата и принятие решения
← Назад к DevOps Bootcamp