Răsfoiți Sursa

Detect push failure and break

Signed-off-by: Nicolas De Loof <[email protected]>
Nicolas De Loof 4 ani în urmă
părinte
comite
a35147bc63
1 a modificat fișierele cu 5 adăugiri și 2 ștergeri
  1. 5 2
      local/compose.go

+ 5 - 2
local/compose.go

@@ -132,6 +132,9 @@ func (s *composeService) Push(ctx context.Context, project *types.Project) error
 					}
 					return err
 				}
+				if jm.Error != nil {
+					return errors.New(jm.Error.Message)
+				}
 				toProgressEvent(service.Name, jm, w)
 			}
 			return nil
@@ -142,13 +145,13 @@ func (s *composeService) Push(ctx context.Context, project *types.Project) error
 
 func toProgressEvent(prefix string, jm jsonmessage.JSONMessage, w progress.Writer) {
 	if jm.ID == "" {
+		// skipped
 		return
 	}
 	var (
 		text   string
 		status = progress.Working
 	)
-
 	if jm.Status == "Pull complete" || jm.Status == "Already exists" {
 		status = progress.Done
 	}
@@ -160,7 +163,7 @@ func toProgressEvent(prefix string, jm jsonmessage.JSONMessage, w progress.Write
 		text = jm.Progress.String()
 	}
 	w.Event(progress.Event{
-		ID:         fmt.Sprintf("%s: %s", prefix, jm.ID),
+		ID:         fmt.Sprintf("Pushing %s: %s", prefix, jm.ID),
 		Text:       jm.Status,
 		Status:     status,
 		StatusText: text,