Add ansible-lint CI gate and antsibull-changelog release pipeline #1
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "feature/ci-lint-and-release-gate"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Rolls out the pattern proven on silvarion.repos/silvarion.base/silvarion.containers.
Fixed real issues: changelogs/config.yaml duplicated release_summary (same bug class as silvarion.repos), galaxy.yml had a top-level requires_ansible key that isn't part of the schema (moved to a new meta/runtime.yml), four roles' redhat.yml defaults used YAML 1.1
yesinstead oftrue, and redis's ACL SETUSER task had a literalonargument (Redis's own syntax, not a YAML boolean) -- quoted rather than converted, to avoid sending the wrong value to redis-cli.Verified antsibull-changelog release+generate end-to-end in a fresh container matching the CI job image.
🤖 Generated with Claude Code
https://claude.ai/code/session_012icUrjv3vgHtovVpHUFjdp
Rolls out the pattern proven on silvarion.repos/silvarion.base/ silvarion.containers. Fixed real issues ansible-lint found: - changelogs/config.yaml's sections map duplicated release_summary, which also names prelude_name -- same bug class as silvarion.repos (antsibull-changelog rejects a section sharing the prelude's name). - galaxy.yml had a top-level `requires_ansible` key (not part of the official schema, fatal under the basic profile) and meta/runtime.yml didn't exist -- created it with the same value. - roles/{mariadb,mysql,pgsql,redis}/defaults/redhat.yml used YAML 1.1 `yes` for gpgcheck/enabled instead of `true` (yaml[truthy]) -- genuine typos, fixed. - roles/redis/tasks/database/users.yml's ACL SETUSER command has a literal `on` argument (Redis's own ACL syntax for enabling an account, not a YAML boolean) -- quoted it ("on") instead of converting to `true`, which would have sent the wrong value to redis-cli. Verified antsibull-changelog release+generate end-to-end in a fresh container matching the CI job image. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012icUrjv3vgHtovVpHUFjdpCI's first run (task 34) failed syntax-check: couldn't resolve community.mysql.mysql_user, community.postgresql.postgresql_user, etc. galaxy.yml declared dependencies: {} despite every role here actually calling modules from community.general, community.mysql, community.postgresql, community.proxysql, and ansible.posix -- this only worked locally because these collections happened to already be installed globally, masking a real, previously-undocumented gap in the collection's own metadata. Declared all five as real dependencies (lower-bounded at the versions currently in local use) and added an install step to the CI workflow. Verified in a fresh container with nothing pre-installed: fails without the install step, 0 failures with it. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_012icUrjv3vgHtovVpHUFjdp