diff --git a/.github/workflows/build.yaml b/.github/workflows/build.yaml index 3c6a925f..fb4c41d0 100644 --- a/.github/workflows/build.yaml +++ b/.github/workflows/build.yaml @@ -17,11 +17,18 @@ on: required: false default: "Debug" type: string + outputs: + schemas_changed: + description: 'Have the schemas been updated?' + value: ${{ jobs.Build.outputs.schemas_changed }} + jobs: Build: runs-on: windows-latest + outputs: + schemas_changed: ${{ steps.changed_files.outputs.files_changed }} steps: - name: Checkout Repo @@ -57,4 +64,10 @@ jobs: with: name: NewHorizons-Schemas-${{ inputs.build_type }} path: .\NewHorizons\Schemas + + - name: Verify Changed Schemas + uses: tj-actions/verify-changed-files@v9.1 + id: changed_files + with: + files: NewHorizons/Schemas/** diff --git a/.github/workflows/debug_build.yml b/.github/workflows/debug_build.yml index 2e163d5d..acf86973 100644 --- a/.github/workflows/debug_build.yml +++ b/.github/workflows/debug_build.yml @@ -19,6 +19,7 @@ jobs: Update_Schemas: name: 'Update Schemas' needs: Build + if: ${{ needs.Build.outputs.schemas_changed }} uses: './.github/workflows/update_schemas.yml' with: artifact_name: NewHorizons-Schemas-Debug \ No newline at end of file diff --git a/.github/workflows/release_build.yml b/.github/workflows/release_build.yml index 5f51b703..fb61b604 100644 --- a/.github/workflows/release_build.yml +++ b/.github/workflows/release_build.yml @@ -28,6 +28,7 @@ jobs: Update_Schemas: name: 'Update Schemas' needs: Build + if: ${{ needs.Build.outputs.schemas_changed && github.ref != 'refs/heads/dev' }} # Debug build will update schemas on dev, so don't run if we're on dev uses: ./.github/workflows/update_schemas.yml with: artifact_name: NewHorizons-Schemas-Release diff --git a/.github/workflows/update_schemas.yml b/.github/workflows/update_schemas.yml index e371e04b..82637ecf 100644 --- a/.github/workflows/update_schemas.yml +++ b/.github/workflows/update_schemas.yml @@ -20,12 +20,6 @@ jobs: with: name: ${{ inputs.artifact_name }} path: NewHorizons/Schemas/ - - - name: Verify Changed Schemas - uses: tj-actions/verify-changed-files@v9.1 - id: changed_files - with: - files: NewHorizons/Schemas/** - name: Commit Schemas if: steps.changed_files.outputs.files_changed == 'true' @@ -36,7 +30,6 @@ jobs: git commit -m "Updated Schemas" - name: Push Schemas - if: ${{ (steps.changed_files.outputs.files_changed == 'true') && (github.event_name != 'pull_request') }} uses: ad-m/github-push-action@master with: github_token: ${{ secrets.github_token }}