Anatomien til en rollekatalog
tasks, handlers, templates, defaults, vars.
Anatomien til en rollekatalog er en gratis leksjon i DevOps-bootcamp på CoddyKit. Dette er leksjon 2 av 4. Du kan lese valgfritt 3 leksjoner fra denne læringsstien gratis i sin helhet – deretter låser CoddyKit PRO opp alle leksjoner, samt praktisk øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Den er en del av læringsløpet i DevOps-bootcamp, og fremdriften din synkroniseres mellom nettet og CoddyKit-appen. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
En rolle er et mappetre
En rolle er ganske enkelt en mappe med et fast sett undermapper. Ansible kjenner hver mappe igjen på navnet og laster innholdet automatisk.
roles/
nginx/
tasks/
handlers/
templates/tasks/main.yml er startpunktet
Filen tasks/main.yml inneholder rollens hovedliste med oppgaver. Det er det første Ansible kjører når rollen brukes.
tasks/main.yml:
- name: Install nginx
ansible.builtin.package:
name: nginxhandlers/ inneholder omstartslogikk
Mappen handlers definerer handlinger som å starte en tjeneste på nytt. Oppgaver varsler disse handlerne, slik at omstarter bare skjer ved endringer.
templates/ for Jinja2-filer
Legg .j2-malfilene dine i templates/. Template-modulen finner dem der ved hjelp av navnet, uten at du trenger en fullstendig filbane.
templates/
nginx.conf.j2files/ for statiske filer
Mappen files lagrer vanlige filer som du kopierer uendret. Copy-modulen finner dem automatisk, akkurat som maler.
defaults/ angir variabler med lav prioritet
Filen defaults/main.yml inneholder variabler med lavest prioritet, slik at brukere enkelt kan overstyre dem utenfor rollen.
defaults/main.yml:
nginx_port: 80vars/ angir variabler med høy prioritet
Filen vars/main.yml inneholder variabler med høyere prioritet. Bruk den for verdier rollen er avhengig av, og som sjelden bør endres.
meta/main.yml beskriver rollen
Filen meta/main.yml viser rollens forfatter, lisens, støttede plattformer og eventuelle rolleavhengigheter.
main.yml er det magiske navnet
Inne i tasks, handlers, vars og defaults laster Ansible automatisk inn filen som heter main.yml. Dette navnemønsteret binder strukturen sammen.
Du trenger bare det du bruker
En rolle trenger ikke alle mappene. Hvis den ikke har noen maler, kan du bare droppe templates-mappen. Ansible ignorerer manglende valgfrie mapper.
tests/ og README for siste finpuss
Modne roller har gjerne en README og en tests-mappe, slik at andre kan forstå og kontrollere automatiseringen din før de bruker den.
Kort sjekk
Husk hvor en rolles hovedliste med oppgaver ligger.
Oppsummering
En rolle er et mappetre der tasks, handlers, templates, files, defaults, vars og meta hver har sin faste plass, og alt er knyttet til main.yml. 📁
Lær deg DevOps-bootcamp med en AI-veileder – gratis
Skriv og kjør ekte kode i nettleseren, få umiddelbar hjelp fra en AI-veileder som er tilgjengelig døgnet rundt, og fortsett der du slapp – på nettet eller i appen.
- Kurs
- 142
- Leksjoner
- 568
Ofte stilte spørsmål
Er leksjonen «Anatomien til en rollekatalog» gratis?
Ja – du kan lese valgfritt 3 av leksjonene i læringsstien DevOps-bootcamp, inkludert «Anatomien til en rollekatalog», gratis i sin helhet her på nettet. Deretter låser CoddyKit PRO opp alle leksjoner, samt interaktiv øving med en innebygd kodeeditor og en AI-veileder som er tilgjengelig døgnet rundt. Kurset i DevOps-bootcamp inneholder totalt 4 leksjoner.
Hva lærer jeg i «Anatomien til en rollekatalog»?
tasks, handlers, templates, defaults, vars. Du øver på DevOps-bootcamp med praktisk kode som du kjører direkte i nettleseren, mens en AI-veileder som er tilgjengelig døgnet rundt, svarer på spørsmålene dine mens du jobber deg gjennom leksjonen.
Trenger jeg erfaring for å begynne med DevOps-bootcamp?
Ingen tidligere erfaring er nødvendig. DevOps-bootcamp på CoddyKit er lagt opp for både nybegynnere og viderekomne, så De kan begynne her eller helt fra start og lære i Deres eget tempo. Dette er leksjon 2 av 4.
Hvor lang tid tar leksjonen «Anatomien til en rollekatalog»?
De fleste CoddyKit-leksjoner tar omtrent 5–10 minutter. Hver leksjon er kort og interaktiv, slik at De gjør jevne fremskritt og kan fortsette akkurat der De slapp – både på nettet og i appen.
Kan jeg skrive og kjøre kode i denne DevOps-bootcamp-leksjonen?
Ja. Alle DevOps-bootcamp-leksjoner har en innebygd kodeeditor, slik at De kan skrive og kjøre ekte kode direkte i nettleseren og få umiddelbar tilbakemelding fra AI – uten lokal konfigurering.
Alle leksjonene i dette kurset
- Hvorfor roller: Fra monolitt til moduler
- Anatomien til en rollekatalog
- Opprett et skjelett for en rolle med ansible-galaxy init
- Bruk roller og send rollevariabler