carlos / platform Public

Assert uninstalled fence during blocked sidecar admission

Paul Campbell pushed by paul@keymail.dev 4b8e76a9ac9bef94df69f67aa33ca3c26b5154ab parent 364250f
1 file changed, +4 −1
  • internal/activator/maintenance_test.go +4 −1

CI passed — run details

diff --git a/internal/activator/maintenance_test.go b/internal/activator/maintenance_test.go
index ce2ea7313..e90d7628f 100644
--- a/internal/activator/maintenance_test.go
+++ b/internal/activator/maintenance_test.go
@@ -391,11 +391,14 @@ func TestMaintenanceFenceSerializesSidecarSweepReplacement(t *testing.T) {
sweep := make(chan struct{})
go func() { a.sweepOnce(); close(sweep) }()
<-entered
- if proof, err := a.FenceAndStop(maintenanceContext(t, 15*time.Millisecond), e.host, 1); err != ErrStopUnproven || proof != nil {
+ if proof, err := a.FenceAndStop(maintenanceContext(t, 15*time.Millisecond), e.host, 1); err != ErrFenceNotInstalled || proof != nil {
t.Fatal("blocked replacement yielded proof", err)
}
close(gate)
<-sweep
+ if !a.wakeAllowed(e.host) {
+ t.Fatal("timed-out admission attempt installed a fence")
+ }
if proof, err := a.FenceAndStop(maintenanceContext(t, time.Second), e.host, 1); err != nil || !proof.Matches(e.host, 1) {
t.Fatal("replacement escaped checked stop", err)
}