mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-19 10:33:29 +00:00
Require proven large-demo startup
This commit is contained in:
parent
cb0e55671f
commit
c006b15871
4 changed files with 22 additions and 2 deletions
|
|
@ -14,9 +14,12 @@ git rev-parse -q --verify "${TAG_REF}^{commit}" >/dev/null || {
|
|||
|
||||
# Reusable workflows execute from the caller revision, while the installed
|
||||
# binary comes from TAG_REF. The large-estate profile is safe only when that
|
||||
# exact runtime implements both required scaling boundaries.
|
||||
# exact runtime implements both scaling boundaries and carries an explicit
|
||||
# startup-readiness marker earned by the complete governed profile. Source
|
||||
# structure alone is not proof that health becomes responsive at that scale.
|
||||
if git grep -q 'mockEagerHistoryPVEGuestLimit' "${TAG_REF}" -- internal/monitoring/mock_metrics_history.go && \
|
||||
git grep -q 'UpdateMetricCohort' "${TAG_REF}" -- internal/mock/integration.go; then
|
||||
git grep -q 'UpdateMetricCohort' "${TAG_REF}" -- internal/mock/integration.go && \
|
||||
git grep -q 'mockLargeEstateStartupReady' "${TAG_REF}" -- internal/monitoring/mock_metrics_history.go; then
|
||||
PROFILE="large-estate"
|
||||
MOCK_NODES=50
|
||||
MOCK_VMS_PER_NODE=10
|
||||
|
|
|
|||
|
|
@ -2023,6 +2023,21 @@ release-note screenshots referenced by the validated body, and reject every
|
|||
unreferenced asset. Recovery remains activation-only and may not rebuild or
|
||||
replace the qualified candidate.
|
||||
|
||||
Activation recovery run `33227705135` published stable `v6.4.0` and bound
|
||||
customer convergence to run `33227719830`. Docker aliases, Helm Pages, and the
|
||||
paid-runtime broker converged, but the stable demo's large-estate restore left
|
||||
the v6.4.0 process unresponsive and the public health endpoint unavailable.
|
||||
The convergence owner was cancelled after the restore exceeded its bounded
|
||||
health window; its global promotion lease released successfully. Dedicated
|
||||
demo recovery run `33228777096` reproduced the failure with the exact installed
|
||||
binary and unit, preserved the Relay process, restored the prior runtime
|
||||
configuration, and compensated by stopping only `pulse.service`. A tagged
|
||||
runtime may therefore enter the 50-node, 48-hour-seed public demo profile only
|
||||
when it carries an explicit `mockLargeEstateStartupReady` marker earned by that
|
||||
complete startup and browser proof. The eager-history and update-cohort source
|
||||
markers remain necessary but are not sufficient. Runtimes without the explicit
|
||||
proof marker use the governed 8-node, two-hour-seed legacy-bounded profile.
|
||||
|
||||
The preceding `v6.4.0-rc.8` qualification attempt used exact source SHA
|
||||
`bac7e5d9526d76a6b4e34738511b07609dda80ed`. Release run `33128595650`
|
||||
passed preparation, frontend bundle, Windows installer smoke, release smoke,
|
||||
|
|
|
|||
|
|
@ -1839,6 +1839,7 @@ func TestUpdateDemoWorkflowUsesGovernedNetworkPath(t *testing.T) {
|
|||
`Resolve target-compatible demo runtime profile`,
|
||||
`git grep -q 'mockEagerHistoryPVEGuestLimit'`,
|
||||
`git grep -q 'UpdateMetricCohort'`,
|
||||
`git grep -q 'mockLargeEstateStartupReady'`,
|
||||
`PROFILE="large-estate"`,
|
||||
`MOCK_NODES=50`,
|
||||
`MOCK_VMS_PER_NODE=10`,
|
||||
|
|
|
|||
|
|
@ -1943,6 +1943,7 @@ class ReleasePromotionPolicyTest(unittest.TestCase):
|
|||
self.assertIn("Resolve target-compatible demo runtime profile", demo)
|
||||
self.assertIn("mockEagerHistoryPVEGuestLimit", demo_profile)
|
||||
self.assertIn("UpdateMetricCohort", demo_profile)
|
||||
self.assertIn("mockLargeEstateStartupReady", demo_profile)
|
||||
self.assertIn('PROFILE="legacy-bounded"', demo_profile)
|
||||
self.assertIn("MOCK_NODES=8", demo_profile)
|
||||
self.assertIn("MOCK_VMS_PER_NODE=6", demo_profile)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue