diff --git a/.github/workflows/code-generation.yml b/.github/workflows/code-generation.yml new file mode 100644 index 0000000000..589bd1332e --- /dev/null +++ b/.github/workflows/code-generation.yml @@ -0,0 +1,34 @@ +name: Code Generation + +on: [pull_request] + +jobs: + up_to_date: + name: Ensure Generated Code Up To Date + runs-on: ubuntu-latest + steps: + - name: Checkout Java Client + uses: actions/checkout@v3 + + - name: Set up JDK + uses: actions/setup-java@v3 + with: + java-version: 11 + distribution: 'temurin' + cache: 'gradle' + + - name: Run Code Generator + run: ./gradlew clean :java-codegen:run + + - name: Check Has No Changes + shell: base -eo pipefail {0} + run: | + output=$(git status --porcelain) + if [ -z "$output" ]; then + echo "Clean working directory" + exit 0 + else + echo "Dirty working directory" + echo "$output" + exit 1 + fi \ No newline at end of file