DevOps-bootcamp · Oppitunti

include_role ja import_role ajon aikana

Kutsukaa rooleja dynaamisesti playn aikana.

Oppitunti 3/413 vaihetta

include_role ja import_role ajon aikana on ilmainen DevOps-bootcamp-oppitunti CoddyKitissä. Tämä on oppitunti 3/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu DevOps-bootcamp-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. DevOps-bootcamp-kurssilla on yhteensä 4 oppituntia.

roles-luettelon ulkopuolelle

Ylimmän tason roles-luettelo suorittaa roolit ennen yhtäkään tehtävää. Joskus rooli on kuitenkin suoritettava kesken playn, juuri tehtävän kohdalla.

Kutsukaa roolia tehtävänä

Sekä include_role että import_role mahdollistavat roolin kutsumisen tasks-osiossa muiden vaiheiden joukossa.

tasks:
  - import_role:
      name: nginx

import_role on staattinen

import_role käsitellään playbookia jäsennettäessä ennen suorituksen alkamista. Sen tehtävät upotetaan aikaisin, joten ne eivät voi riippua suorituksen aikaisista tiedoista.

include_role on dynaaminen

include_role käsitellään suorituksen aikana juuri silloin, kun kyseinen tehtävä saavutetaan. Se voi reagoida faktoihin ja rekisteröityihin tuloksiin.

tasks:
  - include_role:
      name: backup
    when: do_backup

Toistakaa rooli silmukassa

Koska include_role suoritetaan dynaamisesti, voitte sijoittaa sen loop-rakenteeseen ja käyttää samaa roolia jokaisella kierroksella eri muuttujilla.

- include_role:
    name: deploy_app
  loop: "{{ app_list }}"

import_role ei tue loop-rakennetta

Koska import_role ratkaistaan jäsennysvaiheessa, se ei tue loop-rakennetta. Käyttäkää include_role-ratkaisua aina, kun rooli on toistettava.

when-avainsanan erilainen toiminta

import_role-kutsun when-ehto kopioidaan jokaiselle sen sisältämälle tehtävälle. include_role-kutsun when-ehto puolestaan rajaa koko roolin yhdeksi kokonaisuudeksi.

Välittäkää muuttujia kummallakin tavalla

Molemmat muodot hyväksyvät roolin parametrisoivat vars-arvot aivan kuten roles-luettelo. Arvot välitetään suoraan sisällytettävälle roolille.

- include_role:
    name: web
  vars:
    http_port: 8080

Tagit ja staattisuus vastaan dynaamisuus

import_role-kutsussa tuotujen tehtävien tagit näkyvät --list-tags-komennossa. include_role-kutsussa tagit on lisättävä itse include-kutsuun.

Valitkaa oikea työkalu

Valitkaa import_role, kun tarvitsette ennakoitavan ja aina suoritettavan rakenteen. Valitkaa include_role, kun rooli on suoritettava ehdollisesti tai silmukassa.

Sama toimintamalli kahdella tasolla

Ansible tarjoaa saman staattisen ja dynaamisen jaon myös tehtävätiedostoille: import_tasks ja include_tasks vastaavat täsmälleen näitä rooliavainsanoja.

Pikatarkistus

Muistakaa, mikä avainsana voi käyttää roolia silmukan sisällä.

Kertaus

Käyttäkää import_role-ratkaisua staattiseen, jäsennysvaiheessa muodostuvaan rakenteeseen ja include_role-ratkaisua dynaamiseen, suorituksen aikaiseen kutsuun, jossa tarvitaan silmukoita ja ehtoja. 🔁

Aloita maksutta

Opi DevOps-bootcamp tekoälytuutorin avulla — ilmaiseksi

Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.

Kurssit
142
Oppitunnit
568

Usein kysytyt kysymykset

Onko oppitunti ”include_role ja import_role ajon aikana” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa DevOps-bootcamp-oppimispolun 3 oppituntia, myös oppitunnin “include_role ja import_role ajon aikana”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. DevOps-bootcamp-kurssilla on yhteensä 4 oppituntia.

Mitä opin oppitunnilla ”include_role ja import_role ajon aikana”?

Kutsukaa rooleja dynaamisesti playn aikana. Harjoittelet DevOps-bootcamp-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.

Tarvitsenko kokemusta aloittaakseni DevOps-bootcamp-opiskelun?

Aiempi kokemus ei ole tarpeen. CoddyKitin DevOps-bootcamp-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 3/4.

Kuinka kauan ”include_role ja import_role ajon aikana”-oppitunnin suorittaminen kestää?

Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.

Voinko kirjoittaa ja suorittaa koodia tällä DevOps-bootcamp-oppitunnilla?

Kyllä. Jokainen DevOps-bootcamp-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.

Kaikki tämän kurssin oppitunnit

  1. Roolien riippuvuudet tiedostossa meta/main.yml
  2. defaults ja vars: ohitusjärjestys
  3. include_role ja import_role ajon aikana
  4. allow_duplicates ja roolien idempotenttisuus
← Takaisin: DevOps-bootcamp