-
-
Notifications
You must be signed in to change notification settings - Fork 2.4k
Expand file tree
/
Copy path.ansible-lint
More file actions
47 lines (42 loc) · 1.93 KB
/
Copy path.ansible-lint
File metadata and controls
47 lines (42 loc) · 1.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# Ansible-lint configuration
exclude_paths:
- .cache/
- .github/
- tests/
- files/cloud-init/ # Cloud-init files have special format requirements
- playbooks/ # These are task files included by other playbooks, not standalone playbooks
- roles/cloud-ec2/files/ # AWS CloudFormation templates use YAML tags ansible-lint can't parse
- roles/cloud-lightsail/files/ # AWS CloudFormation templates use YAML tags ansible-lint can't parse
skip_list:
- 'package-latest' # Package installs should not use latest - needed for updates
- 'experimental' # Experimental rules
- 'fqcn[action]' # Use FQCN for module actions - gradual migration
- 'fqcn[action-core]' # Use FQCN for builtin actions - gradual migration
- 'var-naming[no-role-prefix]' # Variable naming
- 'var-naming[pattern]' # Variable naming patterns
- 'no-free-form' # Avoid free-form syntax - some legacy usage
- 'name[casing]' # Name casing
- 'yaml[document-start]' # YAML document start
- 'role-name' # Role naming convention - too many cloud-* roles
- 'no-handler' # Handler usage - some legitimate non-handler use cases
- 'name[missing]' # All tasks should be named - 113 issues to fix (temporary)
# Enable additional rules
enable_list:
- no-log-password
- no-same-owner
- partial-become
- name[play] # All plays should be named
- yaml[new-line-at-end-of-file] # Files should end with newline
- jinja[invalid] # Invalid Jinja2 syntax (catches template errors)
- jinja[spacing] # Proper spacing in Jinja2 expressions
- no-changed-when # Commands should declare changed_when
- risky-file-permissions # File tasks must have explicit mode
verbosity: 1
# Mock custom modules in library/ that ansible-lint can't auto-discover
# These modules exist and work at runtime, but need to be declared for static analysis
mock_modules:
- gcp_compute_location_info
- lightsail_region_facts
- x25519_pubkey
- scaleway_compute
# vim: ft=yaml