ansible-lint is a static code analysis tool and linter designed to identify syntax errors and best practice violations within Ansible playbooks and roles. It functions as a quality gate for automation pipelines, scanning configuration files and scripts without executing the code to ensure reliability and consistency.
The project distinguishes itself by acting as an automated code formatter that can correct identified linting issues and reformat files to meet community standards. It also serves as a dependency manager, automatically detecting and installing required roles and collections from requirements files to ensure comprehensive analysis of the codebase.
The tool provides extensive rule management, allowing for the use of custom rule sets, tag-based filtering, and the suppression of false positives through inline comments. It further supports infrastructure standardization by identifying outdated code patterns for version migrations and exporting analysis results in structured formats like SARIF and JSON.
Integration is provided for continuous integration workflows, including specific support for GitHub Actions.