added github workflow for linting

This commit is contained in:
AnsibleGuy 2023-07-14 18:17:17 +02:00
parent a2ae4323ae
commit ac8b26fe23
No known key found for this signature in database
GPG Key ID: 52984C069F5AD3CD
3 changed files with 65 additions and 1 deletions

58
.github/workflows/autolint.yml vendored Normal file
View File

@ -0,0 +1,58 @@
---
name: AutoLint
on:
push:
branches: [main, stable, latest]
pull_request:
branches: [main, stable, latest]
jobs:
build:
strategy:
matrix:
python-version: [3.10]
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
- name: Switch to Current Branch
run: git checkout ${{ env.BRANCH }}
shell: bash
- name: Install python
uses: actions/setup-python@v4
with:
python-version: '3.10'
- name: Install dependencies
run: |
pip install -r requirements_lint.txt
shell: bash
- name: Running PyLint
run: pylint --recursive=y .
shell: bash
- name: Running PyLint (*.py.j2)
run: |
if [ -f ".pylintrc_j2" ]; then j2_cnf=".pylintrc_j2"; else j2_cnf='.pylintrc'; fi
find -type f -name *.py.j2 -print0 | xargs --no-run-if-empty -0 -n1 pylint --rcfile "$(pwd)/${j2_cnf}"
shell: bash
- name: Running YamlLint
run: yamllint .
shell: bash
- name: Preparing collection for AnsibleLint
run: |
mkdir -p "/tmp/ansible_lint/roles/ansibleguy.${{ github.event.repository.name }}"
ln -s "${{ github.workspace }}" "/tmp/ansible_lint/roles/ansibleguy.${{ github.event.repository.name }}"
shell: bash
- name: Running AnsibleLint
run: ANSIBLE_ROLES_PATH=/tmp/ansible_lint/roles/ ansible-lint -c .ansible-lint.yml
shell: bash

View File

@ -2,7 +2,8 @@
# ansible-playbook -K -D -i inventory/hosts.yml playbook.yml --ask-vault-pass
- hosts: all
- name: Zoneminder
hosts: all
become: yes
gather_facts: yes
vars:

5
requirements_lint.txt Normal file
View File

@ -0,0 +1,5 @@
# pip requirements
yamllint
pylint
ansible-core
ansible-lint