mirror of
https://github.com/kata-containers/kata-containers.git
synced 2025-06-28 08:17:37 +00:00
vc: Restore sandbox state when there is error starting containers
Fixes #2237 Signed-off-by: Ted Yu <yuzhihong@gmail.com>
This commit is contained in:
parent
1f71114291
commit
93a03369ae
@ -1523,13 +1523,21 @@ func (s *Sandbox) Start() error {
|
|||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
prevState := s.state.State
|
||||||
|
|
||||||
if err := s.setSandboxState(types.StateRunning); err != nil {
|
if err := s.setSandboxState(types.StateRunning); err != nil {
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var startErr error
|
||||||
|
defer func() {
|
||||||
|
if startErr != nil {
|
||||||
|
s.setSandboxState(prevState)
|
||||||
|
}
|
||||||
|
}()
|
||||||
for _, c := range s.containers {
|
for _, c := range s.containers {
|
||||||
if err := c.start(); err != nil {
|
if startErr = c.start(); startErr != nil {
|
||||||
return err
|
return startErr
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user