Skip to content

Commit

Permalink
Add a workflow to check for local generated file changes
Browse files Browse the repository at this point in the history
  • Loading branch information
Matyrobbrt committed Jun 24, 2024
1 parent 9837724 commit 736c4f9
Show file tree
Hide file tree
Showing 2 changed files with 67 additions and 0 deletions.
13 changes: 13 additions & 0 deletions .github/workflows/check-local-changes.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
#!/bin/bash
set -e

function check() {
if [[ -z "$(git status --porcelain ./*/src/generated/resources/*)" ]];
then
echo "0"
else
echo "1"
fi
}

echo ::set-output name=changed::$(check)
54 changes: 54 additions & 0 deletions .github/workflows/check-local-changes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: Check PR local changes

on:
pull_request:
types:
- synchronize
- opened
- ready_for_review
- reopened

jobs:
check:
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
with:
fetch-depth: 1000
fetch-tags: true

# GradleUtils will append the branch name to the version,
# but for that we need a properly checked out branch
- name: Create branch for commit
run:
git switch -C pr-${{ github.event.pull_request.number }}-${{ github.event.pull_request.head.ref }}

- name: Setup JDK 21
uses: actions/setup-java@v2
with:
java-version: '21'
distribution: 'temurin'

- name: Setup with Gradle
uses: gradle/gradle-build-action@v2
with:
arguments: setup
cache-read-only: false

- name: Run datagen with Gradle
uses: gradle/gradle-build-action@v2
with:
arguments: :runData :tests:runData
cache-read-only: false

- name: Check local changes
id: check
run: ./.github/workflows/check-local-changes.sh

- name: Output changed files
run: git status --porcelain ./*/src/generated/resources/*

- name: Fail if local changes are detected
if: ${{ steps.check.outputs.changed == "1" }}
run: exit 1

0 comments on commit 736c4f9

Please sign in to comment.