mirror of
https://github.com/openclaw/openclaw.git
synced 2026-07-13 18:46:17 +00:00
fix(ci): retry stable closeout package lookup
This commit is contained in:
@@ -88,8 +88,27 @@ jobs:
|
||||
if [[ "$release_package_version" =~ ^(.+)-[0-9]+$ ]]; then
|
||||
fallback_package_version="${BASH_REMATCH[1]}"
|
||||
fi
|
||||
tag_package_version="$(gh api "repos/$GITHUB_REPOSITORY/contents/package.json?ref=$tag" \
|
||||
--jq '.content' | tr -d '\n' | base64 --decode | jq -r '.version // empty')"
|
||||
tag_package_content="$RUNNER_TEMP/tag-package-content.b64"
|
||||
tag_package_read=false
|
||||
for attempt in 1 2 3; do
|
||||
if gh api "repos/$GITHUB_REPOSITORY/contents/package.json?ref=$tag" \
|
||||
--jq '.content' > "$tag_package_content"; then
|
||||
tag_package_read=true
|
||||
break
|
||||
fi
|
||||
if [[ "$attempt" != "3" ]]; then
|
||||
sleep $((attempt * 5))
|
||||
fi
|
||||
done
|
||||
if [[ "$tag_package_read" != "true" ]]; then
|
||||
echo "Stable closeout could not read package.json for $tag from GitHub API." >&2
|
||||
exit 1
|
||||
fi
|
||||
if ! tag_package_json="$(tr -d '\n' < "$tag_package_content" | base64 --decode)"; then
|
||||
echo "Stable closeout package.json content for $tag was not valid base64." >&2
|
||||
exit 1
|
||||
fi
|
||||
tag_package_version="$(jq -r '.version // empty' <<<"$tag_package_json")"
|
||||
fallback_correction=false
|
||||
evidence_source_tag="$tag"
|
||||
if [[ "$release_package_version" != "$fallback_package_version" &&
|
||||
|
||||
@@ -119,9 +119,17 @@ describe("package acceptance workflow", () => {
|
||||
expect(workflow).toContain('evidence_checksum_asset="${evidence_asset}.sha256"');
|
||||
expect(workflow).toContain('--pattern "$evidence_checksum_asset"');
|
||||
expect(workflow).toContain('fallback_package_version="${BASH_REMATCH[1]}"');
|
||||
expect(workflow).toContain('tag_package_content="$RUNNER_TEMP/tag-package-content.b64"');
|
||||
expect(workflow).toContain('gh api "repos/$GITHUB_REPOSITORY/contents/package.json?ref=$tag"');
|
||||
expect(workflow).toContain("for attempt in 1 2 3; do");
|
||||
expect(workflow).toContain("sleep $((attempt * 5))");
|
||||
expect(workflow).toContain(
|
||||
'tag_package_version="$(gh api "repos/$GITHUB_REPOSITORY/contents/package.json?ref=$tag"',
|
||||
"Stable closeout could not read package.json for $tag from GitHub API.",
|
||||
);
|
||||
expect(workflow).toContain(
|
||||
"Stable closeout package.json content for $tag was not valid base64.",
|
||||
);
|
||||
expect(workflow).toContain('tag_package_version="$(jq -r');
|
||||
expect(workflow).toContain('evidence_source_tag="v$fallback_package_version"');
|
||||
expect(workflow).toContain('gh release download "$evidence_source_tag"');
|
||||
expect(workflow).toContain("Checkout fallback evidence tag");
|
||||
|
||||
Reference in New Issue
Block a user