Budowa katalogu roli
tasks, handlers, templates, defaults, vars.
Budowa katalogu roli to bezpłatna lekcja Ansible Academy na CoddyKit. To lekcja 2 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.
Rola to drzewo folderów
Rola to po prostu katalog z ustalonym zestawem podfolderów. Ansible rozpoznaje każdy folder po nazwie i automatycznie ładuje jego zawartość.
roles/
nginx/
tasks/
handlers/
templates/tasks/main.yml to punkt wejścia
Plik tasks/main.yml zawiera główną listę zadań roli. Jest to pierwsza rzecz uruchamiana przez Ansible po zastosowaniu roli.
tasks/main.yml:
- name: Install nginx
ansible.builtin.package:
name: nginxhandlers/ przechowuje logikę restartów
Folder handlers definiuje działania takie jak restart usługi. Zadania powiadamiają te handlery, dzięki czemu restarty następują tylko po wprowadzeniu zmian.
templates/ na pliki Jinja2
Pliki szablonów .j2 należy umieszczać w templates/. Moduł template znajduje je tam po nazwie, bez potrzeby podawania pełnej ścieżki.
templates/
nginx.conf.j2files/ na pliki statyczne
Folder files przechowuje zwykłe pliki kopiowane bez zmian. Moduł copy lokalizuje je automatycznie, podobnie jak szablony.
defaults/ ustawia zmienne o niskim priorytecie
Plik defaults/main.yml zawiera zmienne o najniższym priorytecie, dzięki czemu można je łatwo nadpisywać spoza roli.
defaults/main.yml:
nginx_port: 80vars/ ustawia zmienne o wysokim priorytecie
Plik vars/main.yml zawiera zmienne o wyższym priorytecie. Należy używać go dla wartości, od których zależy rola i które rzadko powinny się zmieniać.
meta/main.yml opisuje rolę
Plik meta/main.yml zawiera informacje o autorze roli, licencji, obsługiwanych platformach oraz zależnościach od innych ról.
main.yml to magiczna nazwa
W folderach tasks, handlers, vars i defaults Ansible automatycznie ładuje plik o nazwie main.yml. Ta konwencja nazewnicza spaja całą strukturę.
Potrzebne są tylko używane elementy
Rola nie musi zawierać każdego folderu. Jeśli nie ma szablonów, wystarczy pominąć katalog templates. Ansible ignoruje brakujące opcjonalne foldery.
tests/ i README po polsku
Dojrzałe role zawierają plik README oraz folder tests, aby inni mogli zrozumieć i zweryfikować automatyzację przed jej użyciem.
Szybkie sprawdzenie
Proszę przypomnieć sobie, gdzie znajduje się główna lista zadań roli.
Podsumowanie
Rola to drzewo folderów, w którym tasks, handlery, szablony, pliki, defaults, vars i meta mają swoje ustalone miejsce, a całość opiera się na pliku main.yml. 📁
Często zadawane pytania
Czy lekcja „Budowa katalogu roli” jest bezpłatna?
Tak — pełny tekst „Budowa katalogu roli” 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 „Budowa katalogu roli”?
tasks, handlers, templates, defaults, vars. Ć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 2 z 4.
Ile czasu zajmuje lekcja „Budowa katalogu roli”?
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
- Dlaczego role: od monolitu do modułów
- Budowa katalogu roli
- Tworzenie szkieletu roli za pomocą ansible-galaxy init
- Stosowanie ról i przekazywanie zmiennych ról