9f65ab016d
lint / lint (push) Successful in 1m15s
test / image-input-builds (pull_request) Successful in 1m12s
test / integration-docker (pull_request) Failing after 2m47s
tracker-policy-pr / check-pr (pull_request) Failing after 11m49s
test / unit (pull_request) Failing after 12m1s
prd-number-check / require-numbered-prds (pull_request) Failing after 12m6s
test / coverage (pull_request) Has been skipped
32 lines
1.3 KiB
Python
32 lines
1.3 KiB
Python
from __future__ import annotations
|
|
|
|
import json
|
|
import tempfile
|
|
import unittest
|
|
from pathlib import Path
|
|
|
|
from scripts.generate_release_manifest import main
|
|
|
|
|
|
class TestGenerateReleaseManifest(unittest.TestCase):
|
|
def test_writes_validated_manifest(self) -> None:
|
|
with tempfile.TemporaryDirectory() as tmp:
|
|
output = Path(tmp) / "release.json"
|
|
rc = main([
|
|
"--source-commit", "1" * 40,
|
|
"--orchestrator-image",
|
|
"registry/orchestrator@sha256:" + "a" * 64,
|
|
"--gateway-image", "registry/gateway@sha256:" + "b" * 64,
|
|
"--agent-claude-image", "registry/claude@sha256:" + "e" * 64,
|
|
"--agent-codex-image", "registry/codex@sha256:" + "f" * 64,
|
|
"--agent-pi-image", "registry/pi@sha256:" + "0" * 64,
|
|
"--firecracker-orchestrator-version", "orch-v1",
|
|
"--firecracker-orchestrator-sha256", "c" * 64,
|
|
"--firecracker-gateway-version", "gateway-v1",
|
|
"--firecracker-gateway-sha256", "d" * 64,
|
|
"--output", str(output),
|
|
])
|
|
self.assertEqual(0, rc)
|
|
data = json.loads(output.read_text(encoding="utf-8"))
|
|
self.assertEqual("orch-v1", data["firecracker"]["orchestrator"]["version"])
|