mirror of
https://code.forgejo.org/actions/cascading-pr.git
synced 2025-09-12 11:06:16 +00:00
feat: wait-iteration to control the timeout for the destination pull request
on a busy repository or with a long workflow, it may take more than the one hour default to complete
This commit is contained in:
parent
0ff02f5d54
commit
c2c22e2994
4 changed files with 17 additions and 1 deletions
|
@ -87,8 +87,9 @@ not exist, it is created.
|
|||
| destination-branch | the base branch of the destination repository for the cascading PR | `true` | |
|
||||
| destination-token | a token with write permission on destination-repo | `true` | |
|
||||
| update | path to the script to update the content of the cascading PR | `true` | |
|
||||
| wait-iteration | number of seconds to wait before verifying for the status of the destination pull request (timeout after 100 iterations) | `true` | 36 |
|
||||
| prefix | prefix of the branch from which the cascading PR is created on {destination-repo} or {destination-fork-repo} (default to {origin-repo}) | `false` | |
|
||||
| close | if true the cascading PR will be closed and the branch deleted when the PR is merged | `false` | false |
|
||||
| close | if true the cascading PR will be closed and the branch deleted when (i) the {origin-pr} is merged or (ii) when the cascading PR status is success if {origin-ref} is set | `false` | false |
|
||||
| verbose | if true print verbose information | `false` | false |
|
||||
| debug | if true print debug information | `false` | false |
|
||||
<!-- action-docs-inputs -->
|
||||
|
|
|
@ -101,6 +101,10 @@ inputs:
|
|||
update:
|
||||
description: 'path to the script to update the content of the cascading PR'
|
||||
required: true
|
||||
wait-iteration:
|
||||
description: 'number of seconds to wait before verifying for the status of the destination pull request (timeout after 100 iterations)'
|
||||
default: 36
|
||||
required: true
|
||||
prefix:
|
||||
description: 'prefix of the branch from which the cascading PR is created on {destination-repo} or {destination-fork-repo} (default to {origin-repo})'
|
||||
close:
|
||||
|
@ -143,6 +147,7 @@ runs:
|
|||
--destination-token "@$destination_token" \
|
||||
--destination-branch "${{ inputs.destination-branch }}" \
|
||||
--update "${{ inputs.update }}" \
|
||||
--wait-iteration "${{ inputs.wait-iteration }}" \
|
||||
--prefix "${{ inputs.prefix }}" \
|
||||
--close "${{ inputs.close }}" \
|
||||
run
|
||||
|
|
|
@ -27,6 +27,10 @@ function dependencies() {
|
|||
fi
|
||||
}
|
||||
|
||||
function set_loop_delay() {
|
||||
LOOP_DELAY="$1"
|
||||
}
|
||||
|
||||
function retry() {
|
||||
rm -f $TMPDIR/retry.{out,attempt,err}
|
||||
local success=false
|
||||
|
|
|
@ -401,6 +401,7 @@ function finalize_options() {
|
|||
else
|
||||
options[destination_is_fork]=false
|
||||
fi
|
||||
set_loop_delay ${options[wait_iteration]}
|
||||
|
||||
: ${options[close]:=false}
|
||||
}
|
||||
|
@ -543,6 +544,11 @@ function main() {
|
|||
options[update]=$1
|
||||
shift
|
||||
;;
|
||||
--wait-iteration)
|
||||
shift
|
||||
options[wait_iteration]=$1
|
||||
shift
|
||||
;;
|
||||
--prefix)
|
||||
shift
|
||||
options[prefix]=$1
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue