DevOps-bootcamp · Oppitunti

Terraformin `validate` ja `fmt`

Käyttäkää Terraformin sisäänrakennettuja komentoja, kuten `validate`-komentoa määritysten syntaksin tarkistamiseen ja `fmt`-komentoa koodin yhdenmukaiseen muotoiluun.

Oppitunti 1/411 vaihetta

Terraformin `validate` ja `fmt` on ilmainen DevOps-bootcamp-oppitunti CoddyKitissä. Tämä on oppitunti 1/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.

IaC:n koodin laatu

Hyvä koodi ei tarkoita vain toimivuutta, vaan myös luettavuutta ja oikeellisuutta. Infrastructure as Coden (IaC) tapauksessa tämä on vieläkin tärkeämpää, koska virheet voivat aiheuttaa kalliita infrastruktuuriongelmia.

Terraform tarjoaa tähän sisäänrakennettuja työkaluja: validate ja fmt. Ne varmistavat, että määritykset ovat syntaktisesti oikein ja yhdenmukaisesti muotoiltuja.

Virheiden havaitseminen ajoissa

terraform validate -komento tarkistaa määritystiedostot syntaksivirheiden ja sisäisen yhdenmukaisuuden varalta. Se varmistaa, että koodisi rakenne on kunnossa ennen kuin yrität ottaa sen käyttöön.

Tarkistus kattaa muun muassa muuttujien tyypit, resurssien argumentit ja provider-määritykset. Se on nopea tapa havaita virheet ilman yhteydenottoa pilvipalveluntarjoajaan.

Kelvollinen määritys

Tarkastellaan yksinkertaista ja kelvollista Terraform-määritystä. Tämä koodi määrittelee AWS S3 -säilön.

Kun tälle suoritetaan terraform validate, komento onnistuu, mikä osoittaa, ettei syntaksissa tai määrityksen perusasioissa ole ongelmia.

resource "aws_s3_bucket" "my_bucket" {
  bucket = "my-unique-coddykit-bucket-123"
  acl    = "private"

  tags = {
    Environment = "Dev"
    Project     = "CoddyKit"
  }
}

Kirjoitusvirheen havaitseminen

Mitä tapahtuu, jos teemme virheen? Tässä acl-argumentti on kirjoitettu väärin muodossa accl.

terraform validate ilmoittaa tästä virheestä heti ja kertoo, ettei accl ole S3-säilöresurssin tunnistama argumentti.

resource "aws_s3_bucket" "my_bucket" {
  bucket = "my-unique-coddykit-bucket-456"
  accl   = "private" # Intentional typo!

  tags = {
    Environment = "Dev"
  }
}

Näin käytät `validate`-komentoa

Vahvista määrityksesi siirtymällä päätelaitteessa hakemistoon, joka sisältää .tf-tiedostosi. Suorita sitten yksinkertaisesti:

terraform validate

Komento tarkistaa nykyisen työhakemiston. Jos tarkistus onnistuu, komento päättyy ilman tulostetta onnistumisviestin kera. Jos tarkistus epäonnistuu, se näyttää selkeät virheilmoitukset.

Yhdenmukaisuus on tärkeää

Oletko koskaan työskennellyt tiimissä, jossa jokainen muotoilee koodin eri tavalla? Se voi vaikeuttaa koodin lukemista ja ylläpitoa. terraform fmt (format) ratkaisee tämän ongelman!

Se kirjoittaa Terraform-määritystiedostot automaattisesti uudelleen kanoniseen muotoon ja tyyliin. Näin koko koodikantasi ja tiimisi koodi pysyvät yhdenmukaisina.

Muotoilematon koodi

Tarkastele tätä määritystä. Sisennykset eivät ole yhdenmukaisia ja välilyönneissä on puutteita. Määritys on kelvollinen, mutta sitä on vaikea silmäillä nopeasti.

Tällainen muotoilu syntyy helposti, kun useat ihmiset työskentelevät samoissa tiedostoissa.

resource "aws_s3_bucket" "another_bucket" {
    bucket = "coddykit-unformatted-bucket"
        acl = "private"
      tags = {
          Project = "CoddyKit"
        Env = "Test"
      }
}

Kauniisti muotoiltu

Kuvittele nyt, että suoritat edellisen koodin kanssa komennon terraform fmt. Se säätää välilyönnit ja sisennykset automaattisesti Terraformin vakiotyylin mukaisiksi.

Tämä tekee koodista paljon siistimpää ja helpommin luettavaa. Pienellä muutoksella on suuri vaikutus yhteistyöhön!

resource "aws_s3_bucket" "another_bucket" {
  bucket = "coddykit-unformatted-bucket"
  acl    = "private"
  tags = {
    Project = "CoddyKit"
    Env     = "Test"
  }
}

fmt tiimeille

Muotoile tiedostot suorittamalla terraform fmt määrityshakemistossa. Komento muokkaa tiedostoja suoraan.

CI/CD-putkissa voit käyttää komentoa terraform fmt -check=true tarkistaaksesi tiedostojen olevan oikein muotoiltuja ilman niiden muokkaamista. Parametrilla -diff voit tarkastella ehdotettuja muutoksia.

Testaa tietosi

Mitkä seuraavista terraform validate - ja terraform fmt -komentoja koskevista väitteistä ovat TOSIA?

Vahvista ja muotoile koodisi!

Tässä oppitunnissa opit kahdesta keskeisestä Terraform-komennosta:

  • terraform validate: Varmistaa määrityksen oikean syntaksin ja sisäisen yhdenmukaisuuden sekä havaitsee virheet ajoissa.
  • terraform fmt: Muotoilee koodin automaattisesti yhdenmukaiseen tyyliin ja parantaa luettavuutta sekä yhteistyötä.

Näiden työkalujen säännöllinen käyttö auttaa ylläpitämään laadukasta, virheetöntä ja luettavaa Infrastructure as Codea. Seuraavaksi tutustumme edistyneempiin testaustapoihin!

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 ”Terraformin `validate` ja `fmt`” ilmainen?

Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa DevOps-bootcamp-oppimispolun 3 oppituntia, myös oppitunnin “Terraformin `validate` ja `fmt`”. 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 ”Terraformin `validate` ja `fmt`”?

Käyttäkää Terraformin sisäänrakennettuja komentoja, kuten `validate`-komentoa määritysten syntaksin tarkistamiseen ja `fmt`-komentoa koodin yhdenmukaiseen muotoiluun. 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 1/4.

Kuinka kauan ”Terraformin `validate` ja `fmt`”-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. Terraformin `validate` ja `fmt`
  2. Yksikkötestaus Terratestillä
  3. Pilviresurssien integraatiotestaus
  4. Käytännöt koodina ja vaatimustenmukaisuuden tarkistukset
← Takaisin: DevOps-bootcamp