





















@@ -35,6 +35,11 @@ on:
3535 - minimum
3636 - stable
3737 - full
38+run_release_soak:
39+description: Run exhaustive live/Docker and upgrade-survivor soak lanes; forced on for release_profile=full
40+required: false
41+default: false
42+type: boolean
3843rerun_group:
3944description: Validation group to run
4045required: false
@@ -136,6 +141,7 @@ jobs:
136141EVIDENCE_PACKAGE_SPEC: ${{ inputs.evidence_package_spec }}
137142PACKAGE_ACCEPTANCE_PACKAGE_SPEC: ${{ inputs.package_acceptance_package_spec }}
138143RELEASE_PROFILE: ${{ inputs.release_profile }}
144+RUN_RELEASE_SOAK: ${{ inputs.run_release_soak || inputs.release_profile == 'full' }}
139145RERUN_GROUP: ${{ inputs.rerun_group }}
140146LIVE_SUITE_FILTER: ${{ inputs.live_suite_filter }}
141147run: |
@@ -145,6 +151,7 @@ jobs:
145151 echo "- Target ref: \`${TARGET_REF}\`"
146152 echo "- Target SHA: \`${TARGET_SHA}\`"
147153 echo "- Child workflow ref: \`${CHILD_WORKFLOW_REF}\`"
154+ echo "- Release soak lanes: \`${RUN_RELEASE_SOAK}\`"
148155 echo "- Rerun group: \`${RERUN_GROUP}\`"
149156 if [[ -n "${LIVE_SUITE_FILTER// }" ]]; then
150157 echo "- Live suite filter: \`${LIVE_SUITE_FILTER}\`"
@@ -206,7 +213,7 @@ jobs:
206213 local workflow="$1"
207214 shift
208215209- local before_json dispatch_output run_id status conclusion url
216+ local before_json dispatch_output run_id status conclusion url poll_count
210217 before_json="$(gh run list --workflow "$workflow" --event workflow_dispatch --limit 100 --json databaseId --jq '[.[].databaseId]')"
211218212219 dispatch_output="$(gh workflow run "$workflow" --ref "$CHILD_WORKFLOW_REF" "$@" 2>&1)"
@@ -246,11 +253,17 @@ jobs:
246253 }
247254 trap cancel_child EXIT INT TERM
248255256+ poll_count=0
249257 while true; do
250258 status="$(gh run view "$run_id" --json status --jq '.status')"
251259 if [[ "$status" == "completed" ]]; then
252260 break
253261 fi
262+ poll_count=$((poll_count + 1))
263+ if (( poll_count % 10 == 0 )); then
264+ echo "Still waiting on ${workflow}: https://github.com/${GITHUB_REPOSITORY}/actions/runs/${run_id}"
265+ gh run view "$run_id" --json jobs --jq '.jobs[] | select(.status != "completed") | {name, status, url}' || true
266+ fi
254267 sleep 30
255268 done
256269 trap - EXIT INT TERM
@@ -299,7 +312,7 @@ jobs:
299312 local workflow="$1"
300313 shift
301314302- local before_json dispatch_output run_id status conclusion url
315+ local before_json dispatch_output run_id status conclusion url poll_count
303316 before_json="$(gh run list --workflow "$workflow" --event workflow_dispatch --limit 100 --json databaseId --jq '[.[].databaseId]')"
304317305318 dispatch_output="$(gh workflow run "$workflow" --ref "$CHILD_WORKFLOW_REF" "$@" 2>&1)"
@@ -339,11 +352,17 @@ jobs:
339352 }
340353 trap cancel_child EXIT INT TERM
341354355+ poll_count=0
342356 while true; do
343357 status="$(gh run view "$run_id" --json status --jq '.status')"
344358 if [[ "$status" == "completed" ]]; then
345359 break
346360 fi
361+ poll_count=$((poll_count + 1))
362+ if (( poll_count % 10 == 0 )); then
363+ echo "Still waiting on ${workflow}: https://github.com/${GITHUB_REPOSITORY}/actions/runs/${run_id}"
364+ gh run view "$run_id" --json jobs --jq '.jobs[] | select(.status != "completed") | {name, status, url}' || true
365+ fi
347366 sleep 30
348367 done
349368 trap - EXIT INT TERM
@@ -388,6 +407,7 @@ jobs:
388407PROVIDER: ${{ inputs.provider }}
389408MODE: ${{ inputs.mode }}
390409RELEASE_PROFILE: ${{ inputs.release_profile }}
410+RUN_RELEASE_SOAK: ${{ inputs.run_release_soak || inputs.release_profile == 'full' }}
391411RERUN_GROUP: ${{ inputs.rerun_group }}
392412LIVE_SUITE_FILTER: ${{ inputs.live_suite_filter }}
393413PACKAGE_ACCEPTANCE_PACKAGE_SPEC: ${{ inputs.package_acceptance_package_spec }}
@@ -398,7 +418,7 @@ jobs:
398418 local workflow="$1"
399419 shift
400420401- local before_json dispatch_output run_id status conclusion url
421+ local before_json dispatch_output run_id status conclusion url poll_count
402422 before_json="$(gh run list --workflow "$workflow" --event workflow_dispatch --limit 100 --json databaseId --jq '[.[].databaseId]')"
403423404424 dispatch_output="$(gh workflow run "$workflow" --ref "$CHILD_WORKFLOW_REF" "$@" 2>&1)"
@@ -438,11 +458,17 @@ jobs:
438458 }
439459 trap cancel_child EXIT INT TERM
440460461+ poll_count=0
441462 while true; do
442463 status="$(gh run view "$run_id" --json status --jq '.status')"
443464 if [[ "$status" == "completed" ]]; then
444465 break
445466 fi
467+ poll_count=$((poll_count + 1))
468+ if (( poll_count % 10 == 0 )); then
469+ echo "Still waiting on ${workflow}: https://github.com/${GITHUB_REPOSITORY}/actions/runs/${run_id}"
470+ gh run view "$run_id" --json jobs --jq '.jobs[] | select(.status != "completed") | {name, status, url}' || true
471+ fi
446472 sleep 30
447473 done
448474 trap - EXIT INT TERM
@@ -465,6 +491,7 @@ jobs:
465491 echo "- Provider: \`${PROVIDER}\`"
466492 echo "- Cross-OS mode: \`${MODE}\`"
467493 echo "- Release profile: \`${RELEASE_PROFILE}\`"
494+ echo "- Release soak lanes: \`${RUN_RELEASE_SOAK}\`"
468495 echo "- Rerun group: \`${RERUN_GROUP}\`"
469496 if [[ -n "${LIVE_SUITE_FILTER// }" ]]; then
470497 echo "- Live suite filter: \`${LIVE_SUITE_FILTER}\`"
@@ -485,6 +512,7 @@ jobs:
485512 -f provider="$PROVIDER"
486513 -f mode="$MODE"
487514 -f release_profile="$RELEASE_PROFILE"
515+ -f run_release_soak="$RUN_RELEASE_SOAK"
488516 -f rerun_group="$child_rerun_group"
489517 )
490518 if [[ -n "${LIVE_SUITE_FILTER// }" ]]; then
@@ -640,11 +668,17 @@ jobs:
640668 }
641669 trap cancel_child EXIT INT TERM
642670671+ poll_count=0
643672 while true; do
644673 status="$(gh run view "$run_id" --json status --jq '.status')"
645674 if [[ "$status" == "completed" ]]; then
646675 break
647676 fi
677+ poll_count=$((poll_count + 1))
678+ if (( poll_count % 10 == 0 )); then
679+ echo "Still waiting on npm-telegram-beta-e2e.yml: https://github.com/${GITHUB_REPOSITORY}/actions/runs/${run_id}"
680+ gh run view "$run_id" --json jobs --jq '.jobs[] | select(.status != "completed") | {name, status, url}' || true
681+ fi
648682 sleep 30
649683 done
650684 trap - EXIT INT TERM
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。