
























@@ -297,6 +297,7 @@ jobs:
297297 echo "conclusion=${conclusion}" >> "$GITHUB_OUTPUT"
298298 if [[ "$conclusion" != "success" ]]; then
299299 gh run view "$run_id" --json jobs --jq '.jobs[] | select(.conclusion != "success" and .conclusion != "skipped") | {name, conclusion, url}' || true
300+ exit 1
300301 fi
301302 }
302303@@ -396,6 +397,7 @@ jobs:
396397 echo "conclusion=${conclusion}" >> "$GITHUB_OUTPUT"
397398 if [[ "$conclusion" != "success" ]]; then
398399 gh run view "$run_id" --json jobs --jq '.jobs[] | select(.conclusion != "success" and .conclusion != "skipped") | {name, conclusion, url}' || true
400+ exit 1
399401 fi
400402 }
401403@@ -504,6 +506,7 @@ jobs:
504506 echo "conclusion=${conclusion}" >> "$GITHUB_OUTPUT"
505507 if [[ "$conclusion" != "success" ]]; then
506508 gh run view "$run_id" --json jobs --jq '.jobs[] | select(.conclusion != "success" and .conclusion != "skipped") | {name, conclusion, url}' || true
509+ exit 1
507510 fi
508511 }
509512@@ -726,6 +729,7 @@ jobs:
726729 echo "conclusion=${conclusion}" >> "$GITHUB_OUTPUT"
727730 if [[ "$conclusion" != "success" ]]; then
728731 gh run view "$run_id" --json jobs --jq '.jobs[] | select(.conclusion != "success" and .conclusion != "skipped") | {name, conclusion, url}' || true
732+ exit 1
729733 fi
730734731735 summary:
@@ -735,62 +739,6 @@ jobs:
735739runs-on: ubuntu-24.04
736740timeout-minutes: 5
737741steps:
738- - name: Request private evidence update
739-env:
740-RELEASE_PRIVATE_DISPATCH_TOKEN: ${{ secrets.OPENCLAW_RELEASES_PRIVATE_DISPATCH_TOKEN }}
741-TARGET_REF: ${{ inputs.ref }}
742-PACKAGE_SPEC: ${{ inputs.evidence_package_spec || inputs.npm_telegram_package_spec }}
743-GITHUB_RUN_ID_VALUE: ${{ github.run_id }}
744-RELEASE_CHECKS_RESULT: ${{ needs.release_checks.result }}
745-run: |
746- set -euo pipefail
747- if [[ "$RELEASE_CHECKS_RESULT" == "skipped" ]]; then
748- echo "Release checks were skipped by rerun group; skipping automatic private evidence update."
749- exit 0
750- fi
751- if [[ -z "${RELEASE_PRIVATE_DISPATCH_TOKEN// }" ]]; then
752- echo "OPENCLAW_RELEASES_PRIVATE_DISPATCH_TOKEN is not configured; skipping automatic private evidence update."
753- exit 0
754- fi
755-756- release_id="${TARGET_REF#refs/tags/}"
757- release_id="${release_id#v}"
758- if [[ "$PACKAGE_SPEC" =~ ^openclaw@(.+)$ ]]; then
759- release_id="${BASH_REMATCH[1]}"
760- fi
761- release_id="$(printf '%s' "$release_id" | tr '/:@ ' '----' | tr -cd 'A-Za-z0-9._-')"
762- if [[ -z "$release_id" ]]; then
763- echo "::error::Could not derive release evidence id from target ref '${TARGET_REF}'."
764- exit 1
765- fi
766-767- payload="$(
768- jq -cn \
769- --arg full_validation_run_id "$GITHUB_RUN_ID_VALUE" \
770- --arg release_id "$release_id" \
771- --arg release_ref "$TARGET_REF" \
772- --arg package_spec "$PACKAGE_SPEC" \
773- --arg notes "Automatically requested by Full Release Validation ${GITHUB_RUN_ID_VALUE} after child workflows completed; the parent summary re-checks current child run conclusions." \
774- '{
775- event_type: "openclaw_full_release_validation_completed",
776- client_payload: {
777- full_validation_run_id: $full_validation_run_id,
778- release_id: $release_id,
779- release_ref: $release_ref,
780- package_spec: $package_spec,
781- notes: $notes
782- }
783- }'
784- )"
785-786- curl --fail-with-body \
787- -X POST \
788- -H "Accept: application/vnd.github+json" \
789- -H "Authorization: Bearer ${RELEASE_PRIVATE_DISPATCH_TOKEN}" \
790- -H "X-GitHub-Api-Version: 2022-11-28" \
791- https://api.github.com/repos/openclaw/releases-private/dispatches \
792- -d "$payload"
793-794742 - name: Verify child workflow results
795743env:
796744GH_TOKEN: ${{ github.token }}
@@ -969,3 +917,61 @@ jobs:
969917 summarize_child_timing "npm_telegram" "$NPM_TELEGRAM_RUN_ID"
970918971919 exit "$failed"
920+921+ - name: Request private evidence update
922+env:
923+RELEASE_PRIVATE_DISPATCH_TOKEN: ${{ secrets.OPENCLAW_RELEASES_PRIVATE_DISPATCH_TOKEN }}
924+TARGET_REF: ${{ inputs.ref }}
925+PACKAGE_SPEC: ${{ inputs.evidence_package_spec || inputs.npm_telegram_package_spec }}
926+GITHUB_RUN_ID_VALUE: ${{ github.run_id }}
927+RELEASE_CHECKS_RESULT: ${{ needs.release_checks.result }}
928+run: |
929+ set -euo pipefail
930+ if [[ "$RELEASE_CHECKS_RESULT" == "skipped" ]]; then
931+ echo "Release checks were skipped by rerun group; skipping automatic private evidence update."
932+ exit 0
933+ fi
934+ if [[ -z "${RELEASE_PRIVATE_DISPATCH_TOKEN// }" ]]; then
935+ echo "OPENCLAW_RELEASES_PRIVATE_DISPATCH_TOKEN is not configured; skipping automatic private evidence update."
936+ exit 0
937+ fi
938+939+ release_id="${TARGET_REF#refs/tags/}"
940+ release_id="${release_id#v}"
941+ if [[ "$PACKAGE_SPEC" =~ ^openclaw@(.+)$ ]]; then
942+ release_id="${BASH_REMATCH[1]}"
943+ fi
944+ release_id="$(printf '%s' "$release_id" | tr '/:@ ' '----' | tr -cd 'A-Za-z0-9._-')"
945+ if [[ -z "$release_id" ]]; then
946+ echo "::warning::Could not derive release evidence id from target ref '${TARGET_REF}'; skipping automatic private evidence update."
947+ exit 0
948+ fi
949+950+ payload="$(
951+ jq -cn \
952+ --arg full_validation_run_id "$GITHUB_RUN_ID_VALUE" \
953+ --arg release_id "$release_id" \
954+ --arg release_ref "$TARGET_REF" \
955+ --arg package_spec "$PACKAGE_SPEC" \
956+ --arg notes "Automatically requested by Full Release Validation ${GITHUB_RUN_ID_VALUE} after child workflows completed; the parent summary re-checks current child run conclusions." \
957+ '{
958+ event_type: "openclaw_full_release_validation_completed",
959+ client_payload: {
960+ full_validation_run_id: $full_validation_run_id,
961+ release_id: $release_id,
962+ release_ref: $release_ref,
963+ package_spec: $package_spec,
964+ notes: $notes
965+ }
966+ }'
967+ )"
968+969+ if ! curl --fail-with-body \
970+ -X POST \
971+ -H "Accept: application/vnd.github+json" \
972+ -H "Authorization: Bearer ${RELEASE_PRIVATE_DISPATCH_TOKEN}" \
973+ -H "X-GitHub-Api-Version: 2022-11-28" \
974+ https://api.github.com/repos/openclaw/releases-private/dispatches \
975+ -d "$payload"; then
976+ echo "::warning::Automatic private release evidence dispatch failed; child workflow validation remains authoritative."
977+ fi
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。