mirror of
https://github.com/willshersystems/ansible-sshd
synced 2024-11-26 13:00:18 +01:00
a25523ddce
The old ansible-community ansible-lint is deprecated. There is a new ansible-lint github action. The latest Ansible repo gating tests run ansible-lint against the collection format instead of against individual roles. We have to convert the role to collection format before running ansible-test. This also requires tox-lsr 3.2.1 Role developers can run this locally using `tox -e collection,ansible-lint-collection` See https://github.com/linux-system-roles/tox-lsr/pull/125 Fix ansible-lint and ansible-test issues reported by the latest 2.16 versions. Signed-off-by: Rich Megginson <rmeggins@redhat.com>
38 lines
1.2 KiB
YAML
38 lines
1.2 KiB
YAML
name: Ansible Lint # feel free to pick your own name
|
|
|
|
on: [push, pull_request, workflow_dispatch]
|
|
|
|
env:
|
|
LSR_ROLE2COLL_NAMESPACE: willshersystems
|
|
LSR_ROLE2COLL_NAME: sshd
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
jobs:
|
|
ansible-lint:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: Update pip, git
|
|
run: |
|
|
set -euxo pipefail
|
|
sudo apt update
|
|
sudo apt install -y git
|
|
- name: checkout PR
|
|
uses: actions/checkout@v4
|
|
- name: Install tox, tox-lsr
|
|
run: |
|
|
set -euxo pipefail
|
|
pip3 install "git+https://github.com/linux-system-roles/tox-lsr@3.2.1"
|
|
- name: Convert role to collection format
|
|
run: |
|
|
set -euxo pipefail
|
|
TOXENV=collection lsr_ci_runtox
|
|
coll_dir=".tox/ansible_collections/$LSR_ROLE2COLL_NAMESPACE/$LSR_ROLE2COLL_NAME"
|
|
# ansible-lint action requires a .git directory???
|
|
# https://github.com/ansible/ansible-lint/blob/main/action.yml#L45
|
|
mkdir -p "$coll_dir/.git"
|
|
- name: Run ansible-lint
|
|
uses: ansible/ansible-lint@v6
|
|
with:
|
|
working_directory: .tox/ansible_collections/${{ env.LSR_ROLE2COLL_NAMESPACE }}/${{ env.LSR_ROLE2COLL_NAME }}
|