# Validátor YAML

Skontrolujte YAML, či neobsahuje syntaktické chyby, ktoré by mohli narušiť nasadenie alebo kanál CI. Validátor spracuje každý dokument vo vstupe pomocou parsera YAML 1.2, odmietne duplicitné kľúče, tabulátory použité na odsadenie a nekontrolované rozbaľovanie aliasov a oznámi prvú chybu spolu s číslom dokumentu, riadka a stĺpca. Pri platnom vstupe zobrazí počet dokumentov, typ najvyššej úrovne každého z nich a prípadné upozornenia. Vhodné pre Kubernetes, Docker Compose a autorov konfiguračných súborov.

## Často kladené otázky

### Čo kontroluje validátor YAML?

Spracuje celú syntax YAML: odsadenie, blokové a tokové kolekcie, reťazce v úvodzovkách aj bez nich, kotvy, aliasy, značky a direktívy. Duplicitné kľúče v mapovaní tiež považuje za chybu. Výsledkom je buď potvrdenie s krátkym súhrnom, alebo prvá chyba s jej umiestnením a vysvetlením.

### Ktorú verziu YAML používa?

Validátor používa základnú schému YAML 1.2, teda aktuálnu verziu špecifikácie. Vo verzii 1.2 sú slová ako yes, no, on a off obyčajné reťazce, nie logické hodnoty, takže nikdy nespôsobia chybu. Dokumenty vytvorené pre nástroje YAML 1.1 sa stále prijímajú, ak je ich syntax platná.

### Prečo sa duplicitné kľúče hlásia ako chyby?

Špecifikácia YAML vyžaduje, aby boli kľúče v mapovaní jedinečné. Mnohé syntaktické analyzátory potichu ponechajú poslednú hodnotu, čím skryjú chyby v konfigurácii, napríklad keď je nastavenie definované dvakrát. Validátor uvedie riadok a stĺpec opakovaného kľúča, aby ste sa mohli rozhodnúť, ktorú hodnotu ponechať.

### Ako sa počítajú čísla riadkov, stĺpcov a dokumentov?

Riadky a stĺpce sa počítajú od 1 od začiatku vloženého vstupu. Dokumenty sa počítajú v poradí, v akom sa vyskytujú, a oddeľujú sa riadkami s ---; prvý dokument má teda číslo 1. Uvedená pozícia označuje miesto, kde syntaktický analyzátor zistil problém, čo môže byť hneď za skutočnou chybou.

### Môžem naraz overiť viacero dokumentov YAML?

Áno. Dokumenty oddeľte pomocou ---, ako v manifeste Kubernetes s viacerými dokumentmi, a každý dokument sa syntakticky analyzuje. Platný výsledok zobrazuje počet dokumentov a typ najvyššej úrovne každého z nich.

### Čo znamená typ najvyššej úrovne?

Hovorí vám, čo každý dokument obsahuje na svojej koreňovej úrovni: mapovanie kľúčov a hodnôt, postupnosť položiek, jednu skalárnu hodnotu alebo nič. Väčšina konfiguračných súborov obsahuje mapovania, zatiaľ čo zoznamy zdrojov sú často postupnosti. Nesprávny typ zvyčajne znamená, že pomlčka alebo odsadenie sú na nesprávnom mieste.

### Čo sú upozornenia?

Upozornenia sa týkajú problémov, ktoré nezastavia syntaktickú analýzu, napríklad značky, ktorú analyzátor nepozná a načíta ju ako obyčajnú hodnotu. Každé upozornenie sa zobrazí s číslom riadka a stĺpca, najviac ich môže byť 20. Dokument s upozorneniami sa stále považuje za platný.

### Prečo sa tabulátory odmietajú?

YAML zakazuje používať znaky tabulátora na odsadenie, pretože ich šírka nie je jednoznačná. Nahraďte tabulátory na začiatku uvedeného riadka medzerami a zachovajte odsadenie zhodné s okolitými riadkami. Tabulátory v hodnotách a reťazcoch v úvodzovkách sú povolené.

### Je nástroj chránený pred útokmi pomocou explózie aliasov?

Áno. Aliasy sa môžu rozbaliť najviac 100-krát, takže dokument vytvorený tak, aby znásobil aliasy na gigabajty údajov, čo sa často nazýva útok billion laughs, sa označí ako neplatný namiesto toho, aby vyčerpal pamäť. Bežné používanie kotiev a aliasov na zdieľané nastavenia zostáva hlboko pod týmto limitom.

### Overuje sa súlad so schémou, napríklad Kubernetes alebo OpenAPI?

Nie, kontroluje sa iba syntax a štruktúra, nie to, či kľúče a hodnoty zodpovedajú konkrétnej schéme. Vstup môže mať veľkosť až 5 MiB. Ak chcete platné YAML previesť na JSON, TOML alebo iný formát, použite Prevodník dátových formátov.

Vaša reklama tu?

[Napíšte nám e-mail](mailto:hi@dennn.is?subject=Reklama%20na%20OneClick%20Pro)

[Reklama Súprava doplnkov pripravená pre agentov pre WordPress.](https://sleekwp.com/?ref=oneclickpro)
