Compare commits

...

2 commits

Author SHA1 Message Date
ZoopaMario 7581374e19 Add bash linter workflow
Some checks failed
Check Commit Messages / check-commit-message (push) Failing after 4m23s
Using the checkout@v4 action on each push and pull request
2024-12-29 04:06:54 +01:00
ZoopaMario 70fae4bc24 Add workflow analyzing commit message
Using checkout@v4 on each push and pull request
2024-12-29 04:04:38 +01:00
2 changed files with 61 additions and 0 deletions

View file

@ -0,0 +1,30 @@
name: Check Commit Messages
on:
push:
paths-ignore:
- '**/*.sh' # Commit messages are checked regardless of file type
pull_request:
paths-ignore:
- '**/*.sh'
jobs:
check-commit-message:
runs-on: docker
container:
image: node:16-bullseye # Node.js pre-installed, based on Debian
steps:
- name: Checkout Code
uses: https://code.forgejo.org/actions/checkout@v4
with:
fetch-depth: 0 # Fetch the entire history to avoid REST API reliance
- name: Check Commit Messages
run: |
echo "Checking commit message format..."
if ! git log -1 --pretty=%B | grep -Eq '^(feat|fix|chore|docs|style|refactor|test|perf):'; then
echo "Commit message does not follow the conventional format: <type>: <subject>"
exit 1
fi

View file

@ -0,0 +1,31 @@
name: Lint Bash Scripts
on:
push:
paths:
- '**/*.sh'
pull_request:
paths:
- '**/*.sh'
jobs:
lint-bash:
runs-on: docker
container:
image: node:16-bullseye # Node.js pre-installed, based on Debian
steps:
- name: Checkout Code
uses: https://code.forgejo.org/actions/checkout@v4
with:
fetch-depth: 0 # Fetch the entire history to avoid REST API reliance
- name: Install ShellCheck
run: |
apt-get update && apt-get install -y shellcheck
- name: Lint Bash Scripts
run: |
echo "Linting Bash scripts..."
find . -name '*.sh' -print0 | xargs -0 shellcheck