diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2018-12-07 09:06:03 -0800 |
---|---|---|
committer | GitHub <noreply@github.com> | 2018-12-07 09:06:03 -0800 |
commit | 5073638d83b4f466fda434e6a06ad8bab9eef321 (patch) | |
tree | d33bd9755a879f27b446c9eb2a80613894cbaff7 /cmd/podman/pod_stop.go | |
parent | d266460f7bdd8d49835c8228fe16706915f92796 (diff) | |
parent | 52098941000794180a358a6983237cc6c4d30fc1 (diff) | |
download | podman-5073638d83b4f466fda434e6a06ad8bab9eef321.tar.gz podman-5073638d83b4f466fda434e6a06ad8bab9eef321.tar.bz2 podman-5073638d83b4f466fda434e6a06ad8bab9eef321.zip |
Merge pull request #1953 from baude/podstoptimeout
add timeout to pod stop
Diffstat (limited to 'cmd/podman/pod_stop.go')
-rw-r--r-- | cmd/podman/pod_stop.go | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/cmd/podman/pod_stop.go b/cmd/podman/pod_stop.go index 14114aa11..d49ba8a00 100644 --- a/cmd/podman/pod_stop.go +++ b/cmd/podman/pod_stop.go @@ -2,7 +2,6 @@ package main import ( "fmt" - "github.com/containers/libpod/cmd/podman/libpodruntime" "github.com/pkg/errors" "github.com/sirupsen/logrus" @@ -16,6 +15,10 @@ var ( Usage: "stop all running pods", }, LatestPodFlag, + cli.UintFlag{ + Name: "timeout, time, t", + Usage: "Seconds to wait for pod stop before killing the container", + }, } podStopDescription = ` podman pod stop @@ -35,6 +38,7 @@ var ( ) func podStopCmd(c *cli.Context) error { + timeout := -1 if err := checkMutuallyExclusiveFlags(c); err != nil { return err } @@ -52,9 +56,12 @@ func podStopCmd(c *cli.Context) error { ctx := getContext() + if c.IsSet("timeout") { + timeout = int(c.Uint("timeout")) + } for _, pod := range pods { // set cleanup to true to clean mounts and namespaces - ctr_errs, err := pod.Stop(ctx, true) + ctr_errs, err := pod.StopWithTimeout(ctx, true, timeout) if ctr_errs != nil { for ctr, err := range ctr_errs { if lastError != nil { |