Add the lint configuration and the Makefile

ansible-lint at the production profile from the first commit, which is much
cheaper than adopting it later. yamllint forbids implicit octal so a file
mode cannot silently become an integer, and the Makefile is a thin wrapper
so `make check` and CI run byte-identical commands.

Co-Authored-By: Claude Opus 5 (1M context) <[email protected]>
This commit is contained in:
Lucas Winther
2026-09-16 03:58:01 +02:00
co-authored by Claude Opus 5
parent ff0a518001
commit 9b9e39e67f
4 changed files with 103 additions and 0 deletions
+36
View File
@@ -0,0 +1,36 @@
---
extends: default
ignore: |
.git/
.idea/
server/
rules:
# Ansible convention: every file opens with ---
document-start:
present: true
line-length:
max: 120
allow-non-breakable-words: true
indentation:
spaces: 2
indent-sequences: true
comments:
min-spaces-from-content: 1
# Both required by ansible-lint's embedded yamllint; it refuses to use a
# custom config that disagrees, and disables fix mode.
comments-indentation: false
braces:
max-spaces-inside: 1
# File modes must be quoted strings ("0755"), never bare octal. An unquoted
# 0644 is the integer 420 in YAML, and Ansible applies it as such.
octal-values:
forbid-implicit-octal: true
forbid-explicit-octal: true
truthy:
allowed-values: ["true", "false"]
# GitHub Actions workflows are keyed on `on:`, which YAML 1.1 reads as the
# boolean true. Without this every workflow file fails the truthy rule on a
# key it is not allowed to spell any other way.
check-keys: false