diff --git a/.github/workflows/update-supported-enterprise-server-versions.yml b/.github/workflows/update-supported-enterprise-server-versions.yml index b6cbe01510..421a63c699 100644 --- a/.github/workflows/update-supported-enterprise-server-versions.yml +++ b/.github/workflows/update-supported-enterprise-server-versions.yml @@ -4,6 +4,12 @@ on: schedule: - cron: "0 0 * * *" workflow_dispatch: + pull_request: + branches: + - main + paths: + - .github/workflows/update-supported-enterprise-server-versions.yml + - .github/workflows/update-supported-enterprise-server-versions/update.py jobs: update-supported-enterprise-server-versions: @@ -28,6 +34,7 @@ jobs: repository: github/enterprise-releases token: ${{ secrets.ENTERPRISE_RELEASE_TOKEN }} path: ${{ github.workspace }}/enterprise-releases/ + sparse-checkout: releases.json - name: Update Supported Enterprise Server Versions run: | cd ./.github/workflows/update-supported-enterprise-server-versions/ @@ -35,6 +42,7 @@ jobs: pipenv install pipenv run ./update.py rm --recursive "$ENTERPRISE_RELEASES_PATH" + npm ci npm run build env: ENTERPRISE_RELEASES_PATH: ${{ github.workspace }}/enterprise-releases/ @@ -44,25 +52,33 @@ jobs: git config --global user.email "41898282+github-actions[bot]@users.noreply.github.com" git config --global user.name "github-actions[bot]" - - name: Commit changes and open PR - env: - GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + - name: Commit changes + id: prepare-commit run: | if [[ -z $(git status --porcelain) ]]; then echo "No changes to commit" + echo "committed=false" >> $GITHUB_OUTPUT else git checkout -b update-supported-enterprise-server-versions git add . git commit --message "Update supported GitHub Enterprise Server versions" - git push origin update-supported-enterprise-server-versions - - body="This PR updates the list of supported GitHub Enterprise Server versions, either because a new " - body+="version is about to be feature frozen, or because an old release has been deprecated." - body+=$'\n\n' - body+="If an old release has been deprecated, please follow the instructions in CONTRIBUTING.md to " - body+="deprecate the corresponding version of CodeQL." - gh pr create --draft \ - --title "Update supported GitHub Enterprise Server versions" \ - --body "$body" + echo "committed=true" >> $GITHUB_OUTPUT fi + + - name: Open PR + if: github.event_name != 'pull_request' && steps.prepare-commit.outputs.committed == 'true' + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + run: | + git push origin update-supported-enterprise-server-versions + + body="This PR updates the list of supported GitHub Enterprise Server versions, either because a new " + body+="version is about to be feature frozen, or because an old release has been deprecated." + body+=$'\n\n' + body+="If an old release has been deprecated, please follow the instructions in CONTRIBUTING.md to " + body+="deprecate the corresponding version of CodeQL." + + gh pr create --draft \ + --title "Update supported GitHub Enterprise Server versions" \ + --body "$body"