v2: Change the event and error behavior of pause/resume

1. Send the event when the container is paused/resumed successfully
2. Return the error of the pause/resume function rather than
`getContainerStatus`.

Fixes #2121

Signed-off-by: Li Yuxuan <liyuxuan04@baidu.com>
This commit is contained in:
Li Yuxuan 2019-10-09 19:00:04 +08:00
parent c26788c329
commit c1060a3b9e

View File

@ -592,18 +592,18 @@ func (s *service) Pause(ctx context.Context, r *taskAPI.PauseRequest) (_ *ptypes
err = s.sandbox.PauseContainer(r.ID)
if err == nil {
c.status = task.StatusPaused
s.send(&eventstypes.TaskPaused{
ContainerID: c.id,
})
return empty, nil
}
c.status, err = s.getContainerStatus(c.id)
if err != nil {
if status, err := s.getContainerStatus(c.id); err != nil {
c.status = task.StatusUnknown
} else {
c.status = status
}
s.send(&eventstypes.TaskPaused{
ContainerID: c.id,
})
return empty, err
}
@ -624,18 +624,18 @@ func (s *service) Resume(ctx context.Context, r *taskAPI.ResumeRequest) (_ *ptyp
err = s.sandbox.ResumeContainer(c.id)
if err == nil {
c.status = task.StatusRunning
s.send(&eventstypes.TaskResumed{
ContainerID: c.id,
})
return empty, nil
}
c.status, err = s.getContainerStatus(c.id)
if err != nil {
if status, err := s.getContainerStatus(c.id); err != nil {
c.status = task.StatusUnknown
} else {
c.status = status
}
s.send(&eventstypes.TaskResumed{
ContainerID: c.id,
})
return empty, err
}