Skip to content

Commit

Permalink
Make sync_docs failures noisier by always posting a PR
Browse files Browse the repository at this point in the history
  • Loading branch information
huonw committed Nov 4, 2024
1 parent 9c9ff72 commit afd43b7
Showing 1 changed file with 24 additions and 3 deletions.
27 changes: 24 additions & 3 deletions .github/workflows/sync_docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -95,18 +95,39 @@ jobs:
# Sync the docs repo
- run: cp -r pants/docs/docs "pantsbuild.org/${{ steps.get-destination-dir.outputs.DESTINATION_DIR }}"

# Commit and create a PR
# Commit and create a PR.
#
# This is always performed (even on failure, and even with no code changes), as a mechanism to
# surface failures to the reviewer. This is workflow is usually triggered by automation in the
# background after a release, and it is easy for the release manager to forget to follow up
# about the docs (if there's a silent failure).
- name: Commit changes
if: always()
run: |
git config --local user.email "[email protected]"
git config --local user.name "Worker Pants (Pantsbuild GitHub Automation Bot)"
git checkout -b "automation/sync-${{ inputs.version }}"
git add -A
git commit -m "Update docs site for version ${{ inputs.version }}" -a
git commit -m "Update docs site for version ${{ inputs.version }}" -a --allow-empty
git push -u origin "automation/sync-${{ inputs.version }}"
working-directory: pantsbuild.org
- name: Prepare PR body
if: always()
run: |
echo "Docs from https://github.com/pantsbuild/pants/releases/tag/release_${{ inputs.version }}" > body.md
# When the job is failing, add extra info to the PR body:
- name: Append failure info to PR body
if: failure()
run: |
{
echo
echo "The sync_docs job failed part way through and may need debugging: https://github.com/${{ github.repository }}/actions/runs/${{ github.run_id }}/job/${{ github.job }}"
echo
echo "Note: to retry the job, first close this PR and delete its branch."
} >> body.md
- name: Make a PR
run: gh pr create --title "Update docs site for version ${{ inputs.version }}" --body "Docs from https://github.com/pantsbuild/pants/releases/tag/release_${{ inputs.version }}" --reviewer "${{ inputs.reviewer || github.actor }}" --label 'automation:sync-docs'
if: always()
run: gh pr create --title "Update docs site for version ${{ inputs.version }}" --body-file=body.md --reviewer "${{ inputs.reviewer || github.actor }}" --label 'automation:sync-docs'
env:
GH_TOKEN: ${{ secrets.WORKER_PANTS_PR_PAT }}
working-directory: pantsbuild.org

0 comments on commit afd43b7

Please sign in to comment.