0Pricing
DevOps Bootcamp · Lekcja

Uruchamianie zadania tylko, gdy warunek jest True

Uzależnianie zadań od warunku logicznego.

Uruchamianie zadania tylko, gdy warunek jest True to bezpłatna lekcja DevOps Bootcamp na CoddyKit. To lekcja 1 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej DevOps Bootcamp, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Zadania podejmujące decyzje

Czasami zadanie powinno zostać uruchomione tylko w określonych sytuacjach. Słowo kluczowe when uzależnia uruchomienie zadania od wybranego warunku. 🚦

Słowo kluczowe when

Dodaj when do dowolnego zadania. Jeśli wyrażenie jest prawdziwe, zadanie zostaje uruchomione; jeśli jest fałszywe, Ansible je pomija i przechodzi dalej.

- name: Reboot the box
  ansible.builtin.reboot:
  when: reboot_required

Nie potrzebujesz nawiasów klamrowych

W sekcji when należy napisać samo wyrażenie. W przeciwieństwie do ciągów znaków pomija się podwójne nawiasy klamrowe, ponieważ when jest już kontekstem Jinja2.

when: ansible_distribution == "Ubuntu"

Zmienne traktowane jako prawda

Prosta zmienna logiczna działa bezpośrednio. Jeśli install_extras ma wartość true, zadanie zostanie uruchomione; w przeciwnym razie zostanie po cichu pominięte.

- name: Add extra tools
  ansible.builtin.package:
    name: htop
  when: install_extras

Porównania

Warunki mogą porównywać wartości. Operatory takie jak ==, !=, < i > pozwalają uzależniać uruchomienie zadań od liczb i ciągów znaków. ⚖️

when: app_version == "2.0"

Pominięte a zakończone niepowodzeniem

Pominięcie zadania nie oznacza niepowodzenia. W danych wyjściowych przebiegu zobaczą Państwo skipping zamiast ok lub changed, a play będzie kontynuowany.

Negowanie warunku

Użyj not, aby odwrócić wynik testu. To zadanie zostanie uruchomione tylko wtedy, gdy usługa nie jest jeszcze zainstalowana.

when: not service_installed

Zdefiniowane czy nie

Można sprawdzić, czy zmienna istnieje. Test is defined chroni przed błędami wynikającymi z użycia niezdefiniowanej zmiennej.

when: custom_port is defined

when działa dla każdego hosta

Każdy host jest oceniany niezależnie. W ramach tego samego play warunek może być prawdziwy na jednym serwerze, a fałszywy na innym.

Warunki powinny być proste

Czytelne warunki są niezawodne. Jeśli wyrażenie when staje się długie, należy podzielić logikę lub użyć zmiennej opisującej jej znaczenie.

Warunkowo, nie imperatywnie

when zachowuje deklaratywny charakter playbooków: opisują Państwo przypadek, a Ansible podejmuje decyzję dla każdego hosta. Nie są potrzebne bloki if ani skrypty z rozgałęzieniami. 🎯

Szybki test

Sprawdźmy, jak działa when.

Podsumowanie

Słowo kluczowe when uruchamia zadanie tylko wtedy, gdy jego wyrażenie jest prawdziwe. Fałsz oznacza pominięcie, a nie błąd; warunek jest oceniany osobno dla każdego hosta. ✅

Często zadawane pytania

Czy lekcja „Uruchamianie zadania tylko, gdy warunek jest True” jest bezpłatna?

Tak — pełny tekst „Uruchamianie zadania tylko, gdy warunek jest True” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu DevOps Bootcamp, przejdź na CoddyKit PRO. Kurs DevOps Bootcamp zawiera 4 lekcji w sumie.

Co nauczysz się w „Uruchamianie zadania tylko, gdy warunek jest True”?

Uzależnianie zadań od warunku logicznego. Ćwiczysz DevOps Bootcamp z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć DevOps Bootcamp?

Nie wymagamy żadnego doświadczenia. DevOps Bootcamp w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 1 z 4.

Ile czasu zajmuje lekcja „Uruchamianie zadania tylko, gdy warunek jest True”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji DevOps Bootcamp?

Tak. Każda lekcja DevOps Bootcamp zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Uruchamianie zadania tylko, gdy warunek jest True
  2. Rozgałęzianie na podstawie faktów o rodzinie systemu
  3. Łączenie warunków za pomocą and / or
  4. Rejestrowanie wyniku i podejmowanie decyzji
← Powrót do DevOps Bootcamp