summaryrefslogtreecommitdiff
path: root/cmd/podman/errors_remote.go
diff options
context:
space:
mode:
authorOpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com>2019-08-01 13:37:19 +0200
committerGitHub <noreply@github.com>2019-08-01 13:37:19 +0200
commit6f62dac163dd935866c21e91e5cd623772907eda (patch)
treec54863804158f85e206352da00133c0f12c60f7e /cmd/podman/errors_remote.go
parentee15e76da0a032bad7cb94295dc32e2553f10850 (diff)
parent5370d9cb76a8075332f5ab6a0efef9fba28ba19b (diff)
downloadpodman-6f62dac163dd935866c21e91e5cd623772907eda.tar.gz
podman-6f62dac163dd935866c21e91e5cd623772907eda.tar.bz2
podman-6f62dac163dd935866c21e91e5cd623772907eda.zip
Merge pull request #3341 from rhatdan/exit
Add new exit codes to rm & rmi for running containers & dependencies
Diffstat (limited to 'cmd/podman/errors_remote.go')
-rw-r--r--cmd/podman/errors_remote.go20
1 files changed, 20 insertions, 0 deletions
diff --git a/cmd/podman/errors_remote.go b/cmd/podman/errors_remote.go
index 1e276be10..19df2d2d8 100644
--- a/cmd/podman/errors_remote.go
+++ b/cmd/podman/errors_remote.go
@@ -9,6 +9,7 @@ import (
"syscall"
"github.com/containers/libpod/cmd/podman/varlink"
+ "github.com/containers/libpod/libpod/define"
"github.com/pkg/errors"
"github.com/sirupsen/logrus"
)
@@ -43,3 +44,22 @@ func outputError(err error) {
fmt.Fprintln(os.Stderr, "Error:", ne.Error())
}
}
+
+func setExitCode(err error) int {
+ cause := errors.Cause(err)
+ switch e := cause.(type) {
+ // For some reason golang wont let me list them with commas so listing them all.
+ case *iopodman.ContainerNotFound:
+ return 1
+ case *iopodman.InvalidState:
+ return 2
+ default:
+ switch e {
+ case define.ErrNoSuchCtr:
+ return 1
+ case define.ErrCtrStateInvalid:
+ return 2
+ }
+ }
+ return exitCode
+}