Очередь job получила lease и fencing, телеметрия и прогресс deploy сохраняются, ревизия пишет manifest входов. Обновление префиксов не переписывает неизменённый снимок, большие наборы идут через COPY, а устаревшая ревизия не попадает в deploy. Бандл ноды кэшируется, prune и постановка job больше не держат горячий путь. Co-authored-by: Cursor <[email protected]>
31 lines
631 B
Go
31 lines
631 B
Go
package httpapi
|
|
|
|
import (
|
|
"context"
|
|
"testing"
|
|
)
|
|
|
|
func TestTelemetryBackgroundStartsOnceAndStopsBeforeClose(t *testing.T) {
|
|
s, err := New(Options{SeedDemo: true})
|
|
if err != nil {
|
|
t.Fatal(err)
|
|
}
|
|
ctx, cancel := context.WithCancel(context.Background())
|
|
defer cancel()
|
|
s.StartBackground(ctx)
|
|
first := s.telemetryCollector
|
|
if first == nil {
|
|
t.Fatal("telemetry collector not started")
|
|
}
|
|
s.StartBackground(ctx)
|
|
if s.telemetryCollector != first {
|
|
t.Fatal("duplicate telemetry collector")
|
|
}
|
|
s.Close()
|
|
s.StartBackground(ctx)
|
|
if s.telemetryCollector != first {
|
|
t.Fatal("collector started after close")
|
|
}
|
|
s.Close()
|
|
}
|