diff --git a/pkg/compiler/backend/simpledocker.go b/pkg/compiler/backend/simpledocker.go index 9747c2bb..9948bc8f 100644 --- a/pkg/compiler/backend/simpledocker.go +++ b/pkg/compiler/backend/simpledocker.go @@ -46,8 +46,12 @@ func (*SimpleDocker) BuildImage(opts compiler.CompilerBackendOptions) error { name := opts.ImageName path := opts.SourcePath dockerfileName := opts.DockerFileName + context := opts.Context - buildarg := []string{"build", "-f", dockerfileName, "-t", name, "."} + if context == "" { + context = "." + } + buildarg := []string{"build", "-f", dockerfileName, "-t", name, context} Debug(":whale2: Building image " + name) cmd := exec.Command("docker", buildarg...) diff --git a/pkg/compiler/backend/simpleimg.go b/pkg/compiler/backend/simpleimg.go index 915cc869..fbccf8c0 100644 --- a/pkg/compiler/backend/simpleimg.go +++ b/pkg/compiler/backend/simpleimg.go @@ -35,9 +35,14 @@ func NewSimpleImgBackend() compiler.CompilerBackend { func (*SimpleImg) BuildImage(opts compiler.CompilerBackendOptions) error { name := opts.ImageName path := opts.SourcePath + context := opts.Context + + if context == "" { + context = "." + } dockerfileName := opts.DockerFileName - buildarg := []string{"build", "-f", dockerfileName, "-t", name, "."} + buildarg := []string{"build", "-f", dockerfileName, "-t", name, context} Spinner(22) defer SpinnerStop() Debug(":tea: Building image " + name) diff --git a/pkg/compiler/interface.go b/pkg/compiler/interface.go index 12e95d3e..2f932648 100644 --- a/pkg/compiler/interface.go +++ b/pkg/compiler/interface.go @@ -42,6 +42,7 @@ type CompilerBackendOptions struct { SourcePath string DockerFileName string Destination string + Context string } type CompilerOptions struct {