|
|
|
@ -68,14 +68,17 @@ func (g ConnectContainer) GetPort(port int) (int, error) {
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
func (g ConnectContainer) Restart() error {
|
|
|
|
|
_, err := g.GetStatus()
|
|
|
|
|
if err != nil {
|
|
|
|
|
return fmt.Errorf("error fetching sidecar container state %s", err)
|
|
|
|
|
var deferClean utils.ResettableDefer
|
|
|
|
|
defer deferClean.Execute()
|
|
|
|
|
|
|
|
|
|
if utils.FollowLog {
|
|
|
|
|
if err := g.container.StopLogProducer(); err != nil {
|
|
|
|
|
return fmt.Errorf("stopping log producer: %w", err)
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
fmt.Printf("Stopping container: %s\n", g.GetName())
|
|
|
|
|
err = g.container.Stop(g.ctx, nil)
|
|
|
|
|
|
|
|
|
|
err := g.container.Stop(g.ctx, nil)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return fmt.Errorf("error stopping sidecar container %s", err)
|
|
|
|
|
}
|
|
|
|
@ -85,6 +88,17 @@ func (g ConnectContainer) Restart() error {
|
|
|
|
|
if err != nil {
|
|
|
|
|
return fmt.Errorf("error starting sidecar container %s", err)
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
if utils.FollowLog {
|
|
|
|
|
if err := g.container.StartLogProducer(g.ctx); err != nil {
|
|
|
|
|
return fmt.Errorf("starting log producer: %w", err)
|
|
|
|
|
}
|
|
|
|
|
g.container.FollowOutput(&LogConsumer{})
|
|
|
|
|
deferClean.Add(func() {
|
|
|
|
|
_ = g.container.StopLogProducer()
|
|
|
|
|
})
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
return nil
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|