/yaml-lint

A simple (CLI) tool to lint YAML files

Primary LanguageJavaScriptMIT LicenseMIT

YAML Lint

A simple (CLI) tool to lint YAML files

Build Status Dependency Status Dev Dependency Status Version Month Download License

Usage

npm install --save-dev yaml-lint
const yamlLint = require('yaml-lint');

yamlLint.lint('test: 123').then(() => {
  console.log('Valid YAML file.');
}).catch((error) => {
  console.error('Invalid YAML file.', error);
});

CLI

npm install -g yaml-lint
yamllint test.yaml

Options

YAML Lint is configured using the following options via a configuration file, environment variables, and/or command-line arguments.

First of all, YAML Lint looks for a JSON file called .yaml-lint.json within the current working directory.

{
  "schema": "CORE_SCHEMA",
  "ignore": "dir/*.yaml"
}

Afterwards, YAML Lint will take environment variables into account.

YAMLLINT_SCHEMA=CORE_SCHEMA YAMLLINT_IGNORE=dir/*.yaml yamllint

Concluding, YAML Lint will take command-line arguments into account.

yamllint --schema=CORE_SCHEMA --ignore=dir/*.yaml

(All options are merged into a single configuration using the hierarchy described above.)

schema (string)

Specifies a schema to use

ignore (string or array of strings)

Specifies one or multiple glob patterns to ignore

yamllint **/*.(yaml|yml) --ignore=foobar.yml --ignore=dir/*.yaml

Changelog

  • 1.2.1
    • Fix README
  • 1.2.0
    • Add documentation regarding how to specify options
    • Update dependencies
    • Support ignoring specific files
  • 1.1.0
    • Update dependencies
    • Migrate syntax to ES2015+
  • 1.0.0
    • Update dependencies
    • Enable tests for Node.js 8
    • Remove support for Node.js 0.x
  • 0.0.4
    • Print file names when logging YAML errors while using the CLI
  • 0.0.3
    • Implement check for empty file selections while using the CLI
  • 0.0.2
    • Prettier error messages within CLI
    • Add shebang for CLI
  • 0.0.1
    • Initial version

License

Copyright (c) 2018 Thomas Rasshofer
Licensed under the MIT license.

See LICENSE for more info.

Contributors