Approve v6.3.1 unsigned Windows exception

This commit is contained in:
rcourtman 2026-08-23 12:02:53 +01:00
parent 34ae5c98f9
commit c1d0aaa0d5
14 changed files with 164 additions and 29 deletions

View file

@ -318,15 +318,45 @@ class ResolveReleasePromotionTest(unittest.TestCase):
self.assertEqual(metadata["require_windows_signing"], "false")
self.assertEqual(metadata["unsigned_windows_exception"], "true")
def test_v631_owner_exception_allows_disclosed_emergency_patch(self) -> None:
metadata = resolver.resolve_metadata(
version="6.3.1",
promoted_from_tag_input="",
rollback_version_input="v6.3.0",
ga_date_input="",
v5_eos_date_input="",
hotfix_exception=True,
hotfix_reason_input="Active customer-impact fixes.",
release_notes_input=(
"Windows Unified Agent binaries are not Authenticode-signed for v6.3.1."
),
unsigned_windows_exception=True,
unsigned_windows_reason_input=(
"The SignPath production certificate remains CSR pending; the release owner "
"accepts unsigned Windows binaries for v6.3.1."
),
list_stable_tags_fn=lambda: ["v6.3.0", "v6.2.1"],
list_same_version_rc_tags_fn=lambda version: [],
changed_paths_fn=lambda tag: ["scripts/install.sh"],
tag_exists_fn=lambda tag: tag == "v6.3.0",
tag_commit_fn=lambda tag: "v630-commit",
head_descends_from_fn=lambda commit: commit == "v630-commit",
)
self.assertEqual(metadata["promotion_mode"], "emergency-stable-patch")
self.assertEqual(metadata["rollback_tag"], "v6.3.0")
self.assertEqual(metadata["require_windows_signing"], "false")
self.assertEqual(metadata["unsigned_windows_exception"], "true")
def test_unsigned_windows_exception_is_rejected_for_other_stable_versions(self) -> None:
with self.assertRaisesRegex(
ValueError,
"approved only for stable v6.1.0, v6.1.1, v6.1.2, v6.2.0, v6.2.1, or v6.3.0",
"approved only for stable v6.1.0, v6.1.1, v6.1.2, v6.2.0, v6.2.1, v6.3.0, or v6.3.1",
):
resolver.resolve_metadata(
version="6.3.1",
version="6.3.2",
promoted_from_tag_input="",
rollback_version_input="v6.3.0",
rollback_version_input="v6.3.1",
ga_date_input="",
v5_eos_date_input="",
hotfix_exception=True,