summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTomSweeneyRedHat <tsweeney@redhat.com>2018-01-31 18:16:50 -0500
committerAtomic Bot <atomic-devel@projectatomic.io>2018-02-01 14:43:54 +0000
commit03cfe5ebbee306ee4aa84c74bbff83712e50fb1c (patch)
treed5487b66dec29fc00bd79781a70ea7221147bca1
parent2dfd048545d1def4b805a785f7259fc8f1fca22e (diff)
downloadpodman-03cfe5ebbee306ee4aa84c74bbff83712e50fb1c.tar.gz
podman-03cfe5ebbee306ee4aa84c74bbff83712e50fb1c.tar.bz2
podman-03cfe5ebbee306ee4aa84c74bbff83712e50fb1c.zip
Add authfile, cert-dir and creds params to build
Signed-off-by: TomSweeneyRedHat <tsweeney@redhat.com> Closes: #280 Approved by: mheon
-rw-r--r--cmd/podman/build.go23
-rw-r--r--completions/bash/podman13
-rw-r--r--docs/podman-build.1.md21
3 files changed, 52 insertions, 5 deletions
diff --git a/cmd/podman/build.go b/cmd/podman/build.go
index 0defb5e79..6e32a80e9 100644
--- a/cmd/podman/build.go
+++ b/cmd/podman/build.go
@@ -11,10 +11,24 @@ import (
var (
buildFlags = []cli.Flag{
+ cli.StringFlag{
+ Name: "authfile",
+ Usage: "path of the authentication file. Default is ${XDG_RUNTIME_DIR}/containers/auth.json",
+ },
cli.StringSliceFlag{
Name: "build-arg",
Usage: "`argument=value` to supply to the builder",
},
+ cli.StringFlag{
+ Name: "cert-dir",
+ Value: "",
+ Usage: "use certificates at the specified path to access the registry",
+ },
+ cli.StringFlag{
+ Name: "creds",
+ Value: "",
+ Usage: "use `[username[:password]]` for accessing the registry",
+ },
cli.StringSliceFlag{
Name: "file, f",
Usage: "`pathname or URL` of a Dockerfile",
@@ -68,9 +82,18 @@ func buildCmd(c *cli.Context) error {
budCmdArgs := []string{"bud"}
+ if c.IsSet("authfile") {
+ budCmdArgs = append(budCmdArgs, "--authfile", c.String("authfile"))
+ }
for _, buildArg := range c.StringSlice("build-arg") {
budCmdArgs = append(budCmdArgs, "--build-arg", buildArg)
}
+ if c.IsSet("cert-dir") {
+ budCmdArgs = append(budCmdArgs, "--cert-dir", c.String("cert-dir"))
+ }
+ if c.IsSet("creds") {
+ budCmdArgs = append(budCmdArgs, "--creds", c.String("creds"))
+ }
for _, fileName := range c.StringSlice("file") {
budCmdArgs = append(budCmdArgs, "--file", fileName)
}
diff --git a/completions/bash/podman b/completions/bash/podman
index f8086220e..0087c56b9 100644
--- a/completions/bash/podman
+++ b/completions/bash/podman
@@ -700,15 +700,18 @@ _podman_build() {
"
local options_with_args="
- --signature-policy
+ --authfile
+ --build-arg
+ --cert-dir
+ --creds
+ --file
+ -f
+ --format
--runtime
--runtime-flag
+ --signature-policy
--tag
-t
- --file
- -f
- --build-arg
- --format
"
local all_options="$options_with_args $boolean_options"
diff --git a/docs/podman-build.1.md b/docs/podman-build.1.md
index 4df25603a..61c8d8aaa 100644
--- a/docs/podman-build.1.md
+++ b/docs/podman-build.1.md
@@ -24,6 +24,11 @@ to do the actual building.
## OPTIONS
+**--authfile** *path*
+
+Path of the authentication file. Default is ${XDG_RUNTIME\_DIR}/containers/auth.json, which is set using `podman login`.
+If the authorization state is not found there, $HOME/.docker/config.json is checked, which is set using `docker login`.
+
**--build-arg** *arg=value*
Specifies a build argument and its value, which will be interpolated in
@@ -31,6 +36,16 @@ instructions read from the Dockerfiles in the same way that environment
variables are, but which will not be added to environment variable list in the
resulting image's configuration.
+**--cert-dir** *path*
+
+Use certificates at *path* (*.crt, *.cert, *.key) to connect to the registry
+
+**--creds** *creds*
+
+The [username[:password]] to use to authenticate with the registry if required.
+If one or both values are not supplied, a command line prompt will appear and the
+value can be entered. The password is entered without echo.
+
**-f, --file** *Dockerfile*
Specifies a Dockerfile which contains instructions for building the image,
@@ -96,6 +111,12 @@ podman build --tls-verify=true -t imageName -f Dockerfile.simple
podman build --tls-verify=false -t imageName .
+podman bud --runtime-flag log-format=json .
+
+podman bud --runtime-flag debug .
+
+podman bud --authfile /tmp/auths/myauths.json --cert-dir ~/auth --tls-verify=true --creds=username:password -t imageName -f Dockerfile.simple
+
## SEE ALSO
podman(1), buildah(1)