You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@grails.apache.org by ja...@apache.org on 2026/08/06 18:04:53 UTC
(grails-github-actions) 02/02: Document concurrent push retry behavior
This is an automated email from the ASF dual-hosted git repository.
jamesfredley pushed a commit to branch fix/parallel-docs-publish-retry
in repository https://gitbox.apache.org/repos/asf/grails-github-actions.git
commit dcdd17f4ad3e1d35fa89a3c4a0b1d1bef733bb4d
Author: James Fredley <ja...@users.noreply.github.com>
AuthorDate: Thu Aug 6 13:55:48 2026 -0400
Document concurrent push retry behavior
Clarify the five-attempt limit and the fail-closed conditions for
concurrent documentation publishing.
Assisted-by: opencode:gpt-5.6-sol
---
deploy-github-pages/README.md | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/deploy-github-pages/README.md b/deploy-github-pages/README.md
index 9542da2..459fc17 100644
--- a/deploy-github-pages/README.md
+++ b/deploy-github-pages/README.md
@@ -32,7 +32,7 @@ Note: snapshots ignore the VERSION parameter and always publish to the `snapshot
## Push Retry Logic
-When multiple branches build concurrently, their documentation deployments may race to push to the same documentation branch. To handle this, the action includes automatic retry logic: if a push is rejected (e.g., because another build pushed first), it will pull remote changes with rebase and retry, up to 5 attempts. If all attempts fail, the action exits with an error.
+When publishers race to update an existing documentation branch, the action makes up to five push attempts, including the initial attempt. After a retryable non-fast-forward rejection, it fetches the new remote tip, requires that tip to be a strict descendant of the previously observed remote tip, rebases the unpublished local deployment in the existing checkout, and attempts another normal fast-forward push. The action never force-pushes. Rebase conflicts, fetched retry tips that fail t [...]
## Requirements
If using the default `GITHUB_TOKEN`, this action requires permission `contents: write`. Otherwise, the provided `GH_TOKEN` must be able to commit to the documentation branch.
@@ -71,4 +71,4 @@ Release Usage:
GRADLE_PUBLISH_RELEASE: 'true'
SOURCE_FOLDER: build/docs
VERSION: ${{ needs.publish.outputs.release_version }}
-```
\ No newline at end of file
+```