diff options
Diffstat (limited to 'cmd')
-rw-r--r-- | cmd/podman/build.go | 13 | ||||
-rw-r--r-- | cmd/podman/common.go | 13 |
2 files changed, 16 insertions, 10 deletions
diff --git a/cmd/podman/build.go b/cmd/podman/build.go index e35fd10a4..6671c18c7 100644 --- a/cmd/podman/build.go +++ b/cmd/podman/build.go @@ -77,16 +77,9 @@ func buildCmd(c *cli.Context) error { } dockerfiles := getDockerfiles(c.StringSlice("file")) - format := "oci" - if c.IsSet("format") { - format = strings.ToLower(c.String("format")) - } - if strings.HasPrefix(format, "oci") { - format = imagebuildah.OCIv1ImageFormat - } else if strings.HasPrefix(format, "docker") { - format = imagebuildah.Dockerv2ImageFormat - } else { - return errors.Errorf("unrecognized image type %q", format) + format, err := getFormat(c) + if err != nil { + return nil } contextDir := "" cliArgs := c.Args() diff --git a/cmd/podman/common.go b/cmd/podman/common.go index d9216850f..797e74c98 100644 --- a/cmd/podman/common.go +++ b/cmd/podman/common.go @@ -10,6 +10,7 @@ import ( "github.com/containers/storage" "github.com/fatih/camelcase" "github.com/pkg/errors" + "github.com/projectatomic/buildah" "github.com/urfave/cli" ) @@ -406,3 +407,15 @@ var createFlags = []cli.Flag{ Usage: "Working `directory inside the container", }, } + +func getFormat(c *cli.Context) (string, error) { + format := strings.ToLower(c.String("format")) + if strings.HasPrefix(format, buildah.OCI) { + return buildah.OCIv1ImageManifest, nil + } + + if strings.HasPrefix(format, buildah.DOCKER) { + return buildah.Dockerv2ImageManifest, nil + } + return "", errors.Errorf("unrecognized image type %q", format) +} |