Skip to content

Commit

Permalink
Merge pull request #272 from richm/ansible-lint-test-2.16
Browse files Browse the repository at this point in the history
ci: Use supported ansible-lint action; run ansible-lint against the collection
  • Loading branch information
richm committed Jan 8, 2024
2 parents f1c1f52 + a25523d commit 32b892c
Show file tree
Hide file tree
Showing 9 changed files with 48 additions and 9 deletions.
5 changes: 5 additions & 0 deletions .ansible-lint
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
---
exclude_paths:
- tests/roles/
- .tox/
- .markdownlint.yaml
skip_list:
- var-naming[no-role-prefix]
mock_roles:
- willshersystems.sshd.ansible-sshd
mock_modules:
- ansible.posix.mount
32 changes: 29 additions & 3 deletions .github/workflows/ansible-lint.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,38 @@
name: Ansible Lint # feel free to pick your own name

on: [push, pull_request]
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: Lint Ansible playbook
uses: ansible/ansible-lint-action@main
- 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 }}
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
.vagrant
tests/test.retry
.tox
1 change: 1 addition & 0 deletions .markdownlint.yaml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
# Default state for all rules
default: true

Expand Down
2 changes: 1 addition & 1 deletion .ostree/get_ostree_data.sh
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash

set -euo pipefail

Expand Down
2 changes: 1 addition & 1 deletion meta/make_ostree_packages_files
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
#!/bin/bash
#!/usr/bin/env bash

set -euo pipefail

Expand Down
6 changes: 2 additions & 4 deletions tests/tests_all_options.yml
Original file line number Diff line number Diff line change
Expand Up @@ -132,10 +132,8 @@

- name: Verify the options are in the file
ansible.builtin.assert:
that:
- "'{{ item }} yes' in config.content | b64decode "
loop:
"{{ sshd_options.stdout_lines }}"
that: item ~ " yes" in config.content | b64decode
loop: "{{ sshd_options.stdout_lines }}"
when: not sshd_skip_test

- name: Check generated files for ansible_managed, fingerprint
Expand Down
7 changes: 7 additions & 0 deletions tox.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
[lsr_config]
lsr_enable = true

[testenv]
setenv =
LSR_ROLE2COLL_NAMESPACE = willshersystems
LSR_ROLE2COLL_NAME = sshd
1 change: 1 addition & 0 deletions vars/main.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
---
__sshd_config_file: "/etc/ssh/sshd_config"
__sshd_config_owner: "root"
__sshd_config_group: "root"
Expand Down

0 comments on commit 32b892c

Please sign in to comment.