feat: add GitHub Actions workflows for code quality and automation (#2)

This commit is contained in:
2025-02-02 00:42:19 +02:00
committed by GitHub
parent af6ecdf6ca
commit 210aa969b3
105 changed files with 8807 additions and 408 deletions

View File

@@ -0,0 +1,17 @@
# ivuorinen/actions/ansible-lint-fix
## Ansible Lint and Fix
### Description
Lints and fixes Ansible playbooks, commits changes, and uploads SARIF report.
### Runs
This action is a `composite` action.
### Usage
```yaml
- uses: ivuorinen/actions/ansible-lint-fix@main
```

View File

@@ -0,0 +1,52 @@
---
# yaml-language-server: $schema=https://json.schemastore.org/github-action.json
name: Ansible Lint and Fix
description: 'Lints and fixes Ansible playbooks, commits changes, and uploads SARIF report.'
author: 'Ismo Vuorinen'
branding:
icon: 'play'
color: 'green'
runs:
using: composite
steps:
- name: Check for Ansible Files
shell: bash
run: |
if ! find . -name "*.yml" | grep -q .; then
echo "No Ansible files found. Skipping lint and fix."
exit 0
fi
- name: Install ansible-lint
shell: bash
run: |
pip install ansible-lint==6.22.1 || {
echo "::error::Failed to install ansible-lint"
exit 1
}
- name: Run ansible-lint
shell: bash
run: |
ansible-lint --write --parseable-severity --format sarif > ansible-lint.sarif
- name: Set Git Config for Fixes
uses: ivuorinen/actions/set-git-config@main
- name: Commit Fixes
shell: bash
run: |
if git diff --quiet; then
echo "No changes to commit."
else
git add .
git commit -m "fix: applied ansible lint fixes"
git push
fi
- name: Upload SARIF Report
uses: github/codeql-action/upload-sarif@v2
with:
sarif_file: ansible-lint.sarif