Profiles¶
Ansible-lint profiles gradually increase the strictness of rules as your Ansible content lifecycle. To configure linter to use a specific profile, read applying-profiles.
Note
Rules with *
in the suffix are not yet implemented but are documented with linked GitHub issues.
min¶
The min
profile ensures that Ansible can load content. Rules in this profile
are mandatory because they prevent fatal errors. You can add files to the
exclude list or provide dependencies to load the correct files.
basic¶
The basic
profile prevents common coding issues and enforces standard styles
and formatting. It extends min profile.
- command-instead-of-module
- command-instead-of-shell
- deprecated-bare-vars
- deprecated-local-action
- deprecated-module
- inline-env-var
- key-order
- literal-compare
- jinja
- no-free-form
- no-jinja-when
- no-tabs
- partial-become
- playbook-extension
- role-name
- schema
- name
- var-naming
- yaml
moderate¶
The moderate
profile ensures that content adheres to best practices for making
content easier to read and maintain. It extends basic profile.
safety¶
The safety
profile avoids module calls that can have non-determinant outcomes
or security concerns. It extends moderate profile.
shared¶
The shared
profile ensures that content follows best practices for packaging
and publishing. This profile is intended for content creators who want to make
Ansible playbooks, roles, or collections available from
galaxy.ansible.com,
automation-hub, or a
private instance. It extends safety profile.
- galaxy
- ignore-errors
- layout
- meta-incorrect
- meta-no-tags
- meta-video-links
- meta-version
- meta-runtime
- no-changed-when
- no-handler
- no-relative-paths
- max-block-depth
- max-tasks
- unsafe-loop
production¶
The production
profile ensures that content meets requirements for inclusion
in
Ansible Automation Platform (AAP)
as validated or certified content. It extends shared profile.