|
|
@ -75,7 +75,7 @@ func (w *statusWaiter) waitForDelete(ctx context.Context, resourceList ResourceL
|
|
|
|
}
|
|
|
|
}
|
|
|
|
eventCh := w.sw.Watch(cancelCtx, resources, watcher.Options{})
|
|
|
|
eventCh := w.sw.Watch(cancelCtx, resources, watcher.Options{})
|
|
|
|
statusCollector := collector.NewResourceStatusCollector(resources)
|
|
|
|
statusCollector := collector.NewResourceStatusCollector(resources)
|
|
|
|
go logResource(ctx, resources, statusCollector, status.NotFoundStatus, w.log)
|
|
|
|
go logResourceStatus(ctx, resources, statusCollector, status.NotFoundStatus, w.log)
|
|
|
|
done := statusCollector.ListenWithObserver(eventCh, statusObserver(cancel, status.NotFoundStatus))
|
|
|
|
done := statusCollector.ListenWithObserver(eventCh, statusObserver(cancel, status.NotFoundStatus))
|
|
|
|
<-done
|
|
|
|
<-done
|
|
|
|
|
|
|
|
|
|
|
@ -128,7 +128,7 @@ func (w *statusWaiter) wait(ctx context.Context, resourceList ResourceList, wait
|
|
|
|
}
|
|
|
|
}
|
|
|
|
eventCh := w.sw.Watch(cancelCtx, resources, watcher.Options{})
|
|
|
|
eventCh := w.sw.Watch(cancelCtx, resources, watcher.Options{})
|
|
|
|
statusCollector := collector.NewResourceStatusCollector(resources)
|
|
|
|
statusCollector := collector.NewResourceStatusCollector(resources)
|
|
|
|
go logResource(cancelCtx, resources, statusCollector, status.CurrentStatus, w.log)
|
|
|
|
go logResourceStatus(cancelCtx, resources, statusCollector, status.CurrentStatus, w.log)
|
|
|
|
done := statusCollector.ListenWithObserver(eventCh, statusObserver(cancel, status.CurrentStatus))
|
|
|
|
done := statusCollector.ListenWithObserver(eventCh, statusObserver(cancel, status.CurrentStatus))
|
|
|
|
<-done
|
|
|
|
<-done
|
|
|
|
|
|
|
|
|
|
|
@ -168,7 +168,7 @@ func statusObserver(cancel context.CancelFunc, desired status.Status) collector.
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
func logResource(ctx context.Context, resources []object.ObjMetadata, sc *collector.ResourceStatusCollector, desiredStatus status.Status, log func(string, ...interface{})) {
|
|
|
|
func logResourceStatus(ctx context.Context, resources []object.ObjMetadata, sc *collector.ResourceStatusCollector, desiredStatus status.Status, log func(string, ...interface{})) {
|
|
|
|
ticker := time.NewTicker(1 * time.Second)
|
|
|
|
ticker := time.NewTicker(1 * time.Second)
|
|
|
|
defer ticker.Stop()
|
|
|
|
defer ticker.Stop()
|
|
|
|
for {
|
|
|
|
for {
|
|
|
@ -179,7 +179,7 @@ func logResource(ctx context.Context, resources []object.ObjMetadata, sc *collec
|
|
|
|
for _, id := range resources {
|
|
|
|
for _, id := range resources {
|
|
|
|
rs := sc.ResourceStatuses[id]
|
|
|
|
rs := sc.ResourceStatuses[id]
|
|
|
|
if rs.Status != desiredStatus {
|
|
|
|
if rs.Status != desiredStatus {
|
|
|
|
log("waiting for resource, name: %s, kind: %s, desired status: %s, actual status: %s\n", rs.Identifier.Name, rs.Identifier.GroupKind.Kind, desiredStatus, rs.Status)
|
|
|
|
log("waiting for resource, name: %s, kind: %s, desired status: %s, actual status: %s", rs.Identifier.Name, rs.Identifier.GroupKind.Kind, desiredStatus, rs.Status)
|
|
|
|
// only log one resource to not overwhelm the logs
|
|
|
|
// only log one resource to not overwhelm the logs
|
|
|
|
break
|
|
|
|
break
|
|
|
|
}
|
|
|
|
}
|
|
|
|