The role claimed to work with ansible 2.9, but two of its building blocks did not exist back then. The path_join filter was introduced in ansible-base 2.10 and the btrfs_subvolume module in community.general 6.6.0, which in turn requires ansible-core 2.11. Running the role on 2.9 therefore failed with an undefined filter instead of a readable message about an unsupported control node. The collection is now declared in a requirements.yml, mirroring the layout of the certificate_authority role, and the lower bound is pinned because an older community.general still resolves but lacks the btrfs module. The linter workflow installs that file, because ansible-lint cannot resolve the btrfs_subvolume tasks without the collection being present, which only surfaced in CI where no collections are preinstalled. Co-authored-by: Copilot <copilot@github.com>
22 lines
540 B
YAML
22 lines
540 B
YAML
name: Ansible Linter
|
|
|
|
on:
|
|
pull_request:
|
|
types: [ "opened", "reopened", "synchronize" ]
|
|
push:
|
|
branches: [ '**' ]
|
|
tags-ignore: [ '**' ]
|
|
|
|
jobs:
|
|
ansible-lint:
|
|
runs-on:
|
|
- ubuntu-latest
|
|
steps:
|
|
- uses: actions/checkout@d23441a48e516b6c34aea4fa41551a30e30af803 # v6.1.0
|
|
- name: Run ansible-lint
|
|
uses: ansible/ansible-lint@665d9e07a1943254d2910faffc106adaf7ea7294 # v26.8.0
|
|
with:
|
|
args: "--config-file .ansible-lint"
|
|
requirements_file: "requirements.yml"
|
|
setup_python: "true"
|