Git-Ape: Workflow Lint
Workflow file: .github/workflows/git-ape-actionlint.yml
Triggers​
pull_request— paths:.github/workflows/**, .github/actions/**
Permissions​
contents: read
Jobs​
actionlint​
| Property | Value |
|---|---|
| Display Name | actionlint |
| Runs On | ubuntu-latest |
| Steps | 2 |
Source​
Click to view full workflow YAML
name: "Git-Ape: Workflow Lint"
on:
pull_request:
paths:
- '.github/workflows/**'
- '.github/actions/**'
permissions:
contents: read
jobs:
actionlint:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v6
- name: Run actionlint
run: |
set -euo pipefail
# Download the official actionlint binary into the workspace.
bash <(curl --silent --show-error --fail \
https://raw.githubusercontent.com/rhysd/actionlint/main/scripts/download-actionlint.bash)
# Exclude gh-aw compiler output (*.lock.yml under .github/workflows).
# Those files are generated by `gh aw compile` and their contents are
# the responsibility of the gh-aw compiler, not this repo.
mapfile -t WORKFLOW_FILES < <(
find .github/workflows -type f \( -name '*.yml' -o -name '*.yaml' \) \
! -name '*.lock.yml'
)
if [ "${#WORKFLOW_FILES[@]}" -eq 0 ]; then
echo "No workflow files to lint."
exit 0
fi
./actionlint -color "${WORKFLOW_FILES[@]}"