Skip to main content

A command-line utility that checks for best practices in SaltStack.

Project description


Latest release version PyPI - Python Version PyPI - License GitHub Workflow Status GitHub contributors
salt-lint checks Salt State files (SLS) for best practices and behavior that could potentially be improved.
Explore the docs »
Check the Linting Rules · Report Bug · Request Feature


salt-lint demo


The project is heavily based on ansible-lint, with the modified work by Warpnet B.V.. ansible-lint was created by Will Thames and is now maintained as part of the Ansible by Red Hat project.


All notable changes in salt-lint are documented below.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

0.9.2 (2023-02-09)


  • Ensure version identification adheres to PEP440 (!304)

0.9.1 (2023-01-16)


  • Revert changes to rule 210 (!299)

0.9.0 (2023-01-13)


  • Rule 219 for catching missing over-indentation of nested dicts (#284).
  • Add Python 3.11 support (#290).
  • Add alternative typos of onchanges in rule 216 (#286).

0.8.0 (2021-11-09)


  • False positive when detecting missing spaces in Jinja variables when the Jinja statement is nested in literal braces (#272).
  • Ensure a single missing quote in the file mode is also detected as incorrect quotation of a file mode (#273).
  • Ignore non file mode arguments for the file mode quotation and leading zero checks (#274).

0.7.0 (2021-11-01)


  • Add Python 3.10 support (#265).
  • Add initial man page (#270).


  • Close temporary file after writing to STDIN (#263).

0.6.1 (2021-06-01)


  • Remove rule 218 because of a false positive

0.6.0 (2021-06-01)


  • Drop Python 2.7 support (#239).


  • Rule 216, 217 and 218 for catching common typographical errors (#249).

0.5.2 (2021-01-29)


  • Append the contents of the file to the long description of the package instead of the duplicate contents (#234).
  • Ignore Jinja specific rules in Jinja escaped blocks (#236).

0.5.1 (2021-01-19)


  • Ensure all excluded paths from both the CLI and configuration are passed to the runner (#231).

0.5.0 (2021-01-17)


  • Rule 213 to recommend using together with onchanges (#207).
  • Rule 214 to check SLS file with a period in the name (besides the suffix period) as they can not be referenced by Salt (#209).
  • Rules 901-915 to check for deprecated states and state options (#214).
  • This file to be able to list all notable changes for each version of salt-lint (#223).

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

salt-lint-0.9.2.tar.gz (21.1 kB view hashes)

Uploaded source

Built Distribution

salt_lint-0.9.2-py3-none-any.whl (35.6 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page