Definiowanie i używanie vars w play
Deklaruj wartości i odwołuj się do nich.
Definiowanie i używanie vars w play to bezpłatna lekcja Ansible Academy 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 Ansible Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs Ansible Academy zawiera 4 lekcji w sumie.
Po co istnieją zmienne
Wpisywanie na stałe wartości, takich jak port lub nazwa pakietu, w wielu miejscach utrudnia wprowadzanie zmian. Zmienna przechowuje wartość w jednym miejscu, aby można było jej używać ponownie. 🌟
Sekcja vars
W playu należy dodać klucz vars zawierający mapowanie nazw na wartości. Wszystko, co się w nim znajduje, staje się dostępne dla zadań tego play.
- hosts: web
vars:
http_port: 80
app_name: shop
tasks: []Nazywanie zmiennych
W nazwach zmiennych należy używać małych liter, cyfr i znaków podkreślenia. Jasna nazwa, taka jak http_port, za każdym razem jest lepsza od nieczytelnego p1.
Zmienne mogą przechowywać dowolny typ
Wartość może być napisem, liczbą, wartością logiczną, listą lub słownikiem. YAML rozpoznaje typ na podstawie sposobu zapisu.
vars:
max_clients: 200
debug: true
packages:
- nginx
- gitOdwoływanie się do zmiennej
Aby użyć wartości, należy ująć jej nazwę w podwójne klamry. Zapis {{ http_port }} informuje Ansible, aby podstawił przechowywaną wartość.
tasks:
- debug:
msg: "Port is {{ http_port }}"Zmienne w argumentach modułów
Zmienną można umieścić w dowolnym argumencie modułu, nie tylko w komunikatach. W tym przykładzie argument name jest wypełniany na podstawie zmiennej.
tasks:
- apt:
name: "{{ app_name }}"
state: presentModuł debug
Moduł debug wyświetla wartość podczas uruchomienia. Jest przydatny do sprawdzania, co faktycznie zawiera zmienna.
- debug:
var: http_portvar a msg w debug
Opcja var służy do wyświetlania surowej wartości zmiennej, a msg do wyświetlania zdania zawierającego klamry. Są to dwa różne style.
- debug:
msg: "Serving {{ app_name }} on {{ http_port }}"vars_files dla dłuższych list
Gdy wartości jest wiele, należy przenieść je do osobnego pliku i wskazać go za pomocą vars_files. Dzięki temu play pozostaje przejrzysty.
- hosts: web
vars_files:
- vars/main.yml
tasks: []vars_prompt do pobierania danych
Potrzebują Państwo wartości w czasie wykonywania? vars_prompt zadaje operatorowi pytanie i zapisuje jego odpowiedź jako zmienną.
vars_prompt:
- name: username
prompt: "Enter a username"Zakres: vars na poziomie play
Zmienne zdefiniowane w sekcji vars play dotyczą każdego zadania w tym playu, ale nie innych playów w tym samym pliku.
Szybkie sprawdzenie
Jak odwołać się do wartości zmiennej wewnątrz zadania?
Podsumowanie
Nauczyli się Państwo deklarować wartości w sekcji vars, nadawać im jasne nazwy i pobierać je za pomocą podwójnych klamer. Zmienne sprawiają, że playe można ponownie wykorzystywać. ✨
Często zadawane pytania
Czy lekcja „Definiowanie i używanie vars w play” jest bezpłatna?
Tak — pełny tekst „Definiowanie i używanie vars w play” 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 Ansible Academy, przejdź na CoddyKit PRO. Kurs Ansible Academy zawiera 4 lekcji w sumie.
Co nauczysz się w „Definiowanie i używanie vars w play”?
Deklaruj wartości i odwołuj się do nich. Ćwiczysz Ansible Academy 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ąć Ansible Academy?
Nie wymagamy żadnego doświadczenia. Ansible Academy 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 „Definiowanie i używanie vars w play”?
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 Ansible Academy?
Tak. Każda lekcja Ansible Academy 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
- Definiowanie i używanie vars w play
- Składnia podstawiania {{ }}
- Dodatkowe zmienne w wierszu poleceń
- Pochodzenie zmiennych i ich pierwszeństwo