You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
if docker buildx imagetools inspect "${{ steps.tag.outputs.image }}" >/dev/null 2>&1; then
98
-
echo "::warning::${{ steps.tag.outputs.image }} already exists in the registry; skipping build (per-arch tags are immutable)"
99
-
{
100
-
echo "## ⚠️ Skipped — already published"
101
-
echo ""
102
-
echo "\`${{ steps.tag.outputs.image }}\` was already in the registry."
103
-
echo ""
104
-
echo "Per-arch tags are immutable, so no build or push happened for this row. If this is a corrupt-push recovery, delete the tag in Docker Hub by hand and re-run the workflow."
|`builds.json`| Source of truth for which (stellar-cli, rust base key) pairs we publish. |
90
-
|`builds.schema.json`| JSON Schema for `builds.json`. |
91
-
|`scripts/build_image.py`| Local single-image build. |
92
-
|`scripts/validate_json.py`| Validates every `*.json` for sorted keys and `builds.json` for schema + cross-field constraints. |
93
-
|`scripts/refresh_rust_digests.py`| Fills blank `rust_image_digests` entries by inspecting `rust:<key>` upstream (where `<key>` is the composite `<rust>-<suffix>` form). Does not touch already-pinned digests unless asked per-key. |
94
-
|`scripts/refresh_stellar_cli_digests.py`| Fills blank `stellar_cli_versions[].ref` entries by resolving the matching `v<version>` git tag in `stellar/stellar-cli`. Same per-target opt-in shape as the rust refresher. |
95
-
|`scripts/verify_image.py`| Consumer-facing verifier. Wraps `gh attestation verify` for both the SLSA build provenance and the SPDX SBOM attestations against a per-arch image digest. |
96
-
|`scripts/lib/`| Shared Python helpers imported by the other scripts (builds.json IO, semver/key parsing, subprocess + adapter wrappers). |
|`builds.json`| Source of truth for which (stellar-cli, rust base key) pairs we publish. |
90
+
|`builds.schema.json`| JSON Schema for `builds.json`. |
91
+
|`scripts/build_image.py`| Local single-image build. |
92
+
|`scripts/validate_json.py`| Validates every `*.json` for sorted keys and `builds.json` against the schema. |
93
+
|`scripts/refresh.py`| For one `--stellar-cli-version`: picks the rust base labels, resolves the upstream cli ref and each base's index digest, and appends the fully-qualified pins `<label>@<digest>` (append-only; already-published pins are retained). |
94
+
|`scripts/verify_image.py`| Consumer-facing verifier. Wraps `gh attestation verify` for both the SLSA build provenance and the SPDX SBOM attestations against a per-arch image digest. |
95
+
|`scripts/lib/`| Shared Python helpers imported by the other scripts (builds.json IO, semver/key parsing, subprocess + adapter wrappers). |
97
96
98
97
## Local development
99
98
100
99
```sh
101
100
# Validate builds.json.
102
101
./scripts/validate_json.py
103
102
104
-
# Build a local image for a declared (cli, rust base) pair.
0 commit comments