diff options
author | OpenShift Merge Robot <openshift-merge-robot@users.noreply.github.com> | 2019-08-17 14:55:14 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-17 14:55:14 +0200 |
commit | 76f327f73ff9f5ae67a30186007685b8a2e21d67 (patch) | |
tree | 97f006cbd85cdab9764f52463b6904feba9cdaf5 /pkg/util/utils.go | |
parent | 098ce2f33a2117a4b18ef49cacd329d44354f984 (diff) | |
parent | decfea65bed9e84373c8cdc538f79686c0ad40b9 (diff) | |
download | podman-76f327f73ff9f5ae67a30186007685b8a2e21d67.tar.gz podman-76f327f73ff9f5ae67a30186007685b8a2e21d67.tar.bz2 podman-76f327f73ff9f5ae67a30186007685b8a2e21d67.zip |
Merge pull request #3617 from QiWang19/create_pull
add --pull flag for podman create&run
Diffstat (limited to 'pkg/util/utils.go')
-rw-r--r-- | pkg/util/utils.go | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/pkg/util/utils.go b/pkg/util/utils.go index 520e41438..3f73639e7 100644 --- a/pkg/util/utils.go +++ b/pkg/util/utils.go @@ -356,3 +356,32 @@ func OpenExclusiveFile(path string) (*os.File, error) { } return os.OpenFile(path, os.O_RDWR|os.O_CREATE|os.O_EXCL, 0666) } + +// PullType whether to pull new image +type PullType int + +const ( + // PullImageAlways always try to pull new image when create or run + PullImageAlways PullType = iota + // PullImageMissing pulls image if it is not locally + PullImageMissing + // PullImageNever will never pull new image + PullImageNever +) + +// ValidatePullType check if the pullType from CLI is valid and returns the valid enum type +// if the value from CLI is invalid returns the error +func ValidatePullType(pullType string) (PullType, error) { + switch pullType { + case "always": + return PullImageAlways, nil + case "missing": + return PullImageMissing, nil + case "never": + return PullImageNever, nil + case "": + return PullImageMissing, nil + default: + return PullImageMissing, errors.Errorf("invalid pull type %q", pullType) + } +} |