From 86388a5be3acb4c0a427ec52e763bf2cfe81298b Mon Sep 17 00:00:00 2001 From: Marco Vito Moscaritolo Date: Wed, 7 Feb 2018 19:31:10 +0100 Subject: [PATCH 1/2] allow flag --target in build process --- cmd/drone-docker/main.go | 6 ++++++ docker.go | 4 ++++ 2 files changed, 10 insertions(+) diff --git a/cmd/drone-docker/main.go b/cmd/drone-docker/main.go index 4b4edbb..5cf4e31 100644 --- a/cmd/drone-docker/main.go +++ b/cmd/drone-docker/main.go @@ -146,6 +146,11 @@ func main() { Usage: "build args", EnvVar: "PLUGIN_BUILD_ARGS_FROM_ENV", }, + cli.StringFlag{ + Name: "target", + Usage: "build target", + EnvVar: "PLUGIN_BUILD_TARGET", + }, cli.BoolFlag{ Name: "squash", Usage: "squash the layers at build time", @@ -227,6 +232,7 @@ func run(c *cli.Context) error { Tags: c.StringSlice("tags"), Args: c.StringSlice("args"), ArgsEnv: c.StringSlice("args-from-env"), + Target: c.String("target"), Squash: c.Bool("squash"), Pull: c.BoolT("pull-image"), Compress: c.Bool("compress"), diff --git a/docker.go b/docker.go index 229a1d0..eb32009 100644 --- a/docker.go +++ b/docker.go @@ -44,6 +44,7 @@ type ( Tags []string // Docker build tags Args []string // Docker build args ArgsEnv []string // Docker build args from env + Target string // Docker build target Squash bool // Docker build squash Pull bool // Docker build pull Compress bool // Docker build compress @@ -204,6 +205,9 @@ func commandBuild(build Build) *exec.Cmd { for _, arg := range build.Args { args = append(args, "--build-arg", arg) } + if build.Target != "" { + args = append(args, "--target", build.Target) + } labelSchema := []string{ fmt.Sprintf("build-date=%s", time.Now().Format(time.RFC3339)), From 0d05cf3098b0b5615ca6100ce78246c3a2d89cab Mon Sep 17 00:00:00 2001 From: Marco Vito Moscaritolo Date: Tue, 20 Feb 2018 08:03:17 +0100 Subject: [PATCH 2/2] fix CR issue (rename env variable) --- cmd/drone-docker/main.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/drone-docker/main.go b/cmd/drone-docker/main.go index 5cf4e31..7d15daf 100644 --- a/cmd/drone-docker/main.go +++ b/cmd/drone-docker/main.go @@ -149,7 +149,7 @@ func main() { cli.StringFlag{ Name: "target", Usage: "build target", - EnvVar: "PLUGIN_BUILD_TARGET", + EnvVar: "PLUGIN_TARGET", }, cli.BoolFlag{ Name: "squash",