aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--client/go/internal/cli/cmd/waiter.go13
1 files changed, 9 insertions, 4 deletions
diff --git a/client/go/internal/cli/cmd/waiter.go b/client/go/internal/cli/cmd/waiter.go
index 591cbf0c4ba..8a25e18cd1e 100644
--- a/client/go/internal/cli/cmd/waiter.go
+++ b/client/go/internal/cli/cmd/waiter.go
@@ -90,7 +90,7 @@ func (w *Waiter) FastWaitOn(target vespa.Target) bool {
}
// Deployment waits for a deployment to become ready, returning the ID of the converged deployment.
-func (w *Waiter) Deployment(target vespa.Target, id int64) (int64, error) {
+func (w *Waiter) Deployment(target vespa.Target, wantedID int64) (int64, error) {
timeout := w.Timeout
fastWait := w.FastWaitOn(target)
if timeout > 0 {
@@ -100,9 +100,14 @@ func (w *Waiter) Deployment(target vespa.Target, id int64) (int64, error) {
// invalid application package
timeout = 2 * time.Second
}
- id, err := target.AwaitDeployment(id, timeout)
- if fastWait && errors.Is(err, vespa.ErrWaitTimeout) {
- return id, nil // Do not report fast wait timeout as an error
+ id, err := target.AwaitDeployment(wantedID, timeout)
+ if errors.Is(err, vespa.ErrWaitTimeout) {
+ if fastWait {
+ return id, nil // Do not report fast wait timeout as an error
+ }
+ if target.IsCloud() {
+ w.cli.printInfo("Timed out waiting for deployment to converge. See ", color.CyanString(target.Deployment().System.ConsoleRunURL(target.Deployment(), wantedID)), " for more details")
+ }
}
return id, err
}