Merge pull request #2238 from tedyu/start-sandbox-running

vc: Restore sandbox state when there is error starting containers
This commit is contained in:
Julio Montes 2019-11-21 13:58:56 -06:00 committed by GitHub
commit a17ca14c7a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1523,13 +1523,21 @@ func (s *Sandbox) Start() error {
return err
}
prevState := s.state.State
if err := s.setSandboxState(types.StateRunning); err != nil {
return err
}
var startErr error
defer func() {
if startErr != nil {
s.setSandboxState(prevState)
}
}()
for _, c := range s.containers {
if err := c.start(); err != nil {
return err
if startErr = c.start(); startErr != nil {
return startErr
}
}