# YAML-validaattori

Tarkista YAML syntaksivirheiden varalta, ennen kuin ne rikkovat käyttöönoton tai CI-putken. Validaattori jäsentää syötteen jokaisen dokumentin YAML 1.2 -jäsentimellä, hylkää toistuvat avaimet, sisennykseen käytetyt sarkaimet ja hallitsemattomasti kasvavat aliasten laajennukset sekä ilmoittaa ensimmäisestä virheestä dokumentin, rivin ja sarakkeen. Kelvollinen syöte näyttää dokumenttien määrän, kunkin ylätason tyypin ja mahdolliset varoitukset. Suunniteltu Kubernetes-, Docker Compose- ja asetustiedostojen tekijöille.

## Usein kysytyt kysymykset

### Mitä YAML-validaattori tarkistaa?

Se jäsentää koko YAML-syntaksin: sisennykset, lohko- ja virtarakenteet, lainausmerkeissä ja ilman lainausmerkkejä olevat skalaarit, ankkurit, aliakset, tunnisteet ja direktiivit. Se käsittelee myös kuvauksen toistuvat avaimet virheinä. Tuloksena näkyy joko vahvistus ja lyhyt yhteenveto tai ensimmäinen virhe, sen sijainti ja selitys.

### Mitä YAML-versiota se noudattaa?

Validaattori käyttää YAML 1.2 -ydinskeemaa, joka on spesifikaation nykyinen versio. Versiossa 1.2 sanat kuten yes, no, on ja off ovat tavallisia merkkijonoja eivätkä totuusarvoja, joten ne eivät koskaan aiheuta virhettä. YAML 1.1 -työkaluille kirjoitetut dokumentit hyväksytään edelleen, kunhan niiden syntaksi on kelvollinen.

### Miksi päällekkäiset avaimet ilmoitetaan virheinä?

YAML-spesifikaatio edellyttää, että kuvauksen avaimet ovat yksilöllisiä. Monet jäsentimet säilyttävät hiljaisesti viimeisen arvon, mikä peittää määritysvirheet, kuten kahdesti määritellyn asetuksen. Validaattori ilmoittaa toistuvan avaimen rivin ja sarakkeen, jotta voit päättää, minkä arvon säilytät.

### Miten rivit, sarakkeet ja dokumenttinumerot lasketaan?

Rivien ja sarakkeiden numerointi alkaa arvosta 1 liittämäsi syötteen alusta. Dokumentit lasketaan niiden esiintymisjärjestyksessä, ja ----rivit erottavat ne toisistaan, joten ensimmäinen dokumentti on dokumentti 1. Sijainti osoittaa kohdan, jossa jäsennin havaitsi ongelman, joka voi olla heti varsinaisen virheen jälkeen.

### Voinko validoida useita YAML-dokumentteja kerralla?

Kyllä. Erota dokumentit ----merkeillä, kuten usean dokumentin Kubernetes-manifestissa, niin jokainen dokumentti jäsennetään. Kelvollisessa tuloksessa näkyvät dokumenttien määrä ja kunkin dokumentin ylimmän tason tyyppi.

### Mitä ylimmän tason tyyppi tarkoittaa?

Se kertoo, mitä kukin dokumentti sisältää juuressaan: avainten ja arvojen kuvauksen, alkioiden sarjan, yksittäisen skalaarisen arvon tai ei mitään. Useimmat määritystiedostot ovat kuvauksia, kun taas resurssiluettelot ovat usein sarjoja. Väärä tyyppi tarkoittaa yleensä väärään paikkaan joutunutta viivaa tai sisennystä.

### Mitä varoitukset ovat?

Varoitukset ovat ongelmia, jotka eivät pysäytä jäsennystä. Esimerkiksi jäsentimelle tuntematon tunniste luetaan tavallisena arvona. Kukin varoitus luetellaan rivin ja sarakkeen kanssa, enintään 20 varoitusta. Varoituksia sisältävä dokumentti lasketaan silti kelvolliseksi.

### Miksi sarkaimet hylätään?

YAML kieltää sarkainmerkkien käytön sisennyksessä, koska niiden leveys on epäselvä. Korvaa ilmoitetun rivin alussa olevat sarkaimet välilyönneillä ja pidä sisennys yhdenmukaisena ympäröivien rivien kanssa. Sarkaimet arvojen sisällä ja lainausmerkeillä rajatuissa merkkijonoissa ovat sallittuja.

### Onko se suojattu aliashyökkäyksiltä?

Kyllä. Aliakset voivat laajentua enintään 100 kertaa, joten dokumentti, joka on rakennettu monistamaan aliaksia gigatavujen datamääräksi ja jota kutsutaan usein miljardin naurun hyökkäykseksi, ilmoitetaan virheelliseksi muistin loppumisen sijaan. Ankkurien ja aliasten tavallinen käyttö yhteisten asetusten määrittelyyn pysyy selvästi tämän rajan alapuolella.

### Validoiko se skeemaa, kuten Kubernetes- tai OpenAPI-skeemaa, vasten?

Ei. Se tarkistaa vain syntaksin ja rakenteen, ei sitä, vastaavatko avaimet ja arvot tiettyä skeemaa. Syötteen enimmäiskoko on 5 MiB. Voit muuntaa kelvollisen YAML-dokumentin JSON- tai TOML-muotoon tai muuhun muotoon Data Format Converter -työkalulla.

Mainospaikka vapaana?

[Lähetä meille sähköpostia](mailto:hi@dennn.is?subject=Mainostaminen%20palvelussa%20OneClick%20Pro)

[Mainos Agenteille valmis lisäosa­sarja tuotteelle WordPress.](https://sleekwp.com/?ref=oneclickpro)
