A linter for YAML files.
yamllint does not only check for syntax validity, but for weirdnesses like key repetition and cosmetic problems such as lines length, trailing spaces, indentation, etc.
.. image:: https://github.com/adrienverge/yamllint/actions/workflows/ci.yaml/badge.svg?branch=master :target: https://github.com/adrienverge/yamllint/actions/workflows/ci.yaml?query=branch%3Amaster :alt: CI tests status .. image:: https://coveralls.io/repos/github/adrienverge/yamllint/badge.svg?branch=master :target: https://coveralls.io/github/adrienverge/yamllint?branch=master :alt: Code coverage status .. image:: https://readthedocs.org/projects/yamllint/badge/?version=latest :target: https://yamllint.readthedocs.io/en/latest/?badge=latest :alt: Documentation status
Written in Python (compatible with Python 3 only).
https://yamllint.readthedocs.io/
Screenshot ^^^^^^^^^^
.. image:: docs/screenshot.png :alt: yamllint screenshot
Installation ^^^^^^^^^^^^
Using pip, the Python package manager:
.. code:: bash
pip install --user yamllint
yamllint is also packaged for all major operating systems, see installation
examples (dnf
, apt-get
...) in the documentation <https://yamllint.readthedocs.io/en/stable/quickstart.html>
_.
Usage ^^^^^
.. code:: bash
yamllint my_file.yml my_other_file.yaml ...
.. code:: bash
yamllint .
.. code:: bash
yamllint -d relaxed file.yaml
yamllint -c /path/to/myconfig file-to-lint.yaml
.. code:: bash
yamllint -f parsable file.yaml
Read more in the complete documentation! <https://yamllint.readthedocs.io/>
__
Features ^^^^^^^^
Here is a yamllint configuration file example:
.. code:: yaml
extends: default
rules:
line-length: max: 80 level: warning
indentation: disable
Within a YAML file, special comments can be used to disable checks for a single line:
.. code:: yaml
This line is waaaaaaaaaay too long # yamllint disable-line
or for a whole block:
.. code:: yaml
Specific files can be ignored (totally or for some rules only) using a
.gitignore
-style pattern:
.. code:: yaml
ignore: | .dont-lint-me.yaml /bin/ !/bin/.lint-me-anyway.yaml
rules: key-duplicates: ignore: | generated .template.yaml trailing-spaces: ignore: | .ignore-trailing-spaces.yaml /ascii-art/*
Read more in the complete documentation! <https://yamllint.readthedocs.io/>
__
GPL version 3 <LICENSE>
_