From 38200f556c6d78522c5964b74dfbebd7bee6b5cf Mon Sep 17 00:00:00 2001 From: dubo-dubon-duponey Date: Sun, 9 May 2021 21:09:13 -0700 Subject: [PATCH 1/2] Add target opt to DockerBuild Signed-off-by: dubo-dubon-duponey --- dagger/pipeline.go | 7 +++++++ stdlib/dagger/op/op.cue | 1 + 2 files changed, 8 insertions(+) diff --git a/dagger/pipeline.go b/dagger/pipeline.go index 56a76604..73c6209d 100644 --- a/dagger/pipeline.go +++ b/dagger/pipeline.go @@ -842,6 +842,13 @@ func dockerBuildOpts(op *compiler.Value) (map[string]string, error) { opts["filename"] = filename } + if target := op.Lookup("target"); target.Exists() { + tgr, err := target.String() + if err != nil { + return nil, err + } + opts["target"] = tgr + } if buildArgs := op.Lookup("buildArg"); buildArgs.Exists() { fields, err := buildArgs.Fields() if err != nil { diff --git a/stdlib/dagger/op/op.cue b/stdlib/dagger/op/op.cue index cbf09096..4e514f54 100644 --- a/stdlib/dagger/op/op.cue +++ b/stdlib/dagger/op/op.cue @@ -92,6 +92,7 @@ package op platforms?: [...string] buildArg?: [string]: string label?: [string]: string + target?: string } #WriteFile: { From 53611be733fe620558aea0cd09d0091d89ff843c Mon Sep 17 00:00:00 2001 From: dubo-dubon-duponey Date: Sun, 9 May 2021 21:09:56 -0700 Subject: [PATCH 2/2] Add add-hosts to DockerBuild Signed-off-by: dubo-dubon-duponey --- dagger/pipeline.go | 19 +++++++++++++++++++ stdlib/dagger/op/op.cue | 1 + 2 files changed, 20 insertions(+) diff --git a/dagger/pipeline.go b/dagger/pipeline.go index 73c6209d..b1fe2c8a 100644 --- a/dagger/pipeline.go +++ b/dagger/pipeline.go @@ -849,6 +849,25 @@ func dockerBuildOpts(op *compiler.Value) (map[string]string, error) { } opts["target"] = tgr } + + if hosts := op.Lookup("hosts"); hosts.Exists() { + p := []string{} + fields, err := hosts.Fields() + if err != nil { + return nil, err + } + for _, host := range fields { + s, err := host.Value.String() + if err != nil { + return nil, err + } + p = append(p, host.Label()+"="+s) + } + if len(p) > 0 { + opts["add-hosts"] = strings.Join(p, ",") + } + } + if buildArgs := op.Lookup("buildArg"); buildArgs.Exists() { fields, err := buildArgs.Fields() if err != nil { diff --git a/stdlib/dagger/op/op.cue b/stdlib/dagger/op/op.cue index 4e514f54..278259c1 100644 --- a/stdlib/dagger/op/op.cue +++ b/stdlib/dagger/op/op.cue @@ -93,6 +93,7 @@ package op buildArg?: [string]: string label?: [string]: string target?: string + hosts?: [string]: string } #WriteFile: {