Skip to content

Add cabal-gild and update hook #5

Add cabal-gild and update hook

Add cabal-gild and update hook #5

name: Check cabal-gild format
on:
merge_group:
pull_request:
# When pushing branches (and/or updating PRs), we do want to cancel previous
# build runs. We assume they are stale now; and do not want to spend CI time and
# resources on continuing to continue those runs. This is what the concurrency.group
# value lets us express. When using merge queues, we now have to consider
# - runs triggers by commits per pull-request
# we want to cancel any previous run. So they should all get the same group (per PR)
# - runs refs/heads/gh-readonly-queue/<target branch name> (they should all get their
# unique git ref, we don't want to cancel any of the ones in the queue)
# - if it's neither, we fall back to the run_id (this is a unique number for each
# workflow run; it does not change if you "rerun" a job)
concurrency:
group: ${{ github.workflow }}-${{ github.event.type }}-${{ startsWith(github.ref, 'refs/heads/gh-readonly-queue/') && github.ref || github.event.pull_request.number || github.run_id }}
cancel-in-progress: true
jobs:
check-cabal-gild:
runs-on: ubuntu-latest
strategy:
fail-fast: false
env:
CARDANO_GUILD_VERSION: "1.5.0.1"
steps:
- name: Download cardano-gild
run: |
cardano_gild_path="$(mktemp -d)"
version="${{env.CARDANO_GUILD_VERSION}}"
curl -sL \
"https://github.com/tfausak/cabal-gild/releases/download/$version/cabal-gild-$version-linux-x64.tar.gz" \
| tar -C "$cardano_gild_path" -xz
echo "PATH=$cardano_gild_path:$PATH" >> "$GITHUB_ENV"
- uses: actions/checkout@v3
- name: Run cardano-gild over all modified files
run: |
git add .
git stash
git fetch origin ${{ github.base_ref }} --unshallow
for x in $(git diff --name-only --diff-filter=ACMR "*.cabal" | tr '\n' ' '); do
cabal-gild -i "$x" -o "$x"
done
git --no-pager diff --exit-code