github.com/tilt-dev/tilt@v0.33.15-0.20240515162809-0a22ed45d8a0/internal/build/options.go (about)

     1  package build
     2  
     3  import (
     4  	"flag"
     5  	"io"
     6  
     7  	"github.com/docker/cli/opts"
     8  
     9  	"github.com/tilt-dev/tilt/internal/docker"
    10  	"github.com/tilt-dev/tilt/pkg/apis/core/v1alpha1"
    11  )
    12  
    13  func Options(archive io.Reader, spec v1alpha1.DockerImageSpec) docker.BuildOptions {
    14  	return docker.BuildOptions{
    15  		Context:     archive,
    16  		Dockerfile:  "Dockerfile",
    17  		Remove:      shouldRemoveImage(),
    18  		BuildArgs:   opts.ConvertKVStringsToMapWithNil(spec.Args),
    19  		Target:      spec.Target,
    20  		SSHSpecs:    spec.SSHAgentConfigs,
    21  		Network:     spec.Network,
    22  		ExtraTags:   spec.ExtraTags,
    23  		SecretSpecs: spec.Secrets,
    24  		CacheFrom:   spec.CacheFrom,
    25  		PullParent:  spec.Pull,
    26  		Platform:    spec.Platform,
    27  		ExtraHosts:  spec.ExtraHosts,
    28  	}
    29  }
    30  
    31  func shouldRemoveImage() bool {
    32  	return flag.Lookup("test.v") != nil
    33  }