mirror of
https://github.com/containers/podman.git
synced 2025-10-18 03:33:32 +08:00
Refactor Wait() to not require a timeout
We added a timeout for convenience, but most invocations don't care about it. Refactor it into WaitWithTimeout() and add a Wait() that doesn't require a timeout and uses the default. Signed-off-by: Matthew Heon <matthew.heon@gmail.com> Closes: #1527 Approved by: mheon
This commit is contained in:
@ -593,13 +593,20 @@ func (c *Container) Inspect(size bool) (*inspect.ContainerInspectData, error) {
|
||||
return c.getContainerInspectData(size, driverData)
|
||||
}
|
||||
|
||||
// Wait blocks on a container to exit and returns its exit code
|
||||
func (c *Container) Wait(waitTimeout time.Duration) (int32, error) {
|
||||
// Wait blocks until the container exits and returns its exit code.
|
||||
func (c *Container) Wait() (int32, error) {
|
||||
return c.WaitWithInterval(DefaultWaitInterval)
|
||||
}
|
||||
|
||||
// WaitWithInterval blocks until the container to exit and returns its exit
|
||||
// code. The argument is the interval at which checks the container's status.
|
||||
func (c *Container) WaitWithInterval(waitTimeout time.Duration) (int32, error) {
|
||||
if !c.valid {
|
||||
return -1, ErrCtrRemoved
|
||||
}
|
||||
err := wait.PollImmediateInfinite(waitTimeout*time.Millisecond,
|
||||
err := wait.PollImmediateInfinite(waitTimeout,
|
||||
func() (bool, error) {
|
||||
logrus.Debugf("Checking container %s status...", c.ID())
|
||||
stopped, err := c.isStopped()
|
||||
if err != nil {
|
||||
return false, err
|
||||
|
Reference in New Issue
Block a user