package bake
import "github.com/docker/buildx/bake"
Index ¶
- func IsRemoteURL(url string) bool
- func ParseHCLFile(dt []byte, fn string) (*hcl.File, bool, error)
- func ReadRemoteFiles(ctx context.Context, nodes []builder.Node, url string, names []string, pw progress.Writer) ([]File, *Input, error)
- func ReadTargets(ctx context.Context, files []File, targets, overrides []string, defaults map[string]string) (map[string]*Target, map[string]*Group, error)
- func TargetsToBuildOpt(m map[string]*Target, inp *Input) (map[string]build.Options, error)
- type Config
- func ParseCompose(cfgs []compose.ConfigFile, envs map[string]string) (*Config, error)
- func ParseComposeFiles(fs []File) (*Config, error)
- func ParseFile(dt []byte, fn string) (*Config, error)
- func ParseFiles(files []File, defaults map[string]string) (_ *Config, err error)
- func (c Config) ResolveGroup(name string) ([]string, []string)
- func (c Config) ResolveTarget(name string, overrides map[string]map[string]Override) (*Target, error)
- type File
- type Group
- type Input
- type Override
- type Target
Functions ¶
func IsRemoteURL ¶
func ParseHCLFile ¶
func ReadRemoteFiles ¶
func ReadRemoteFiles(ctx context.Context, nodes []builder.Node, url string, names []string, pw progress.Writer) ([]File, *Input, error)
func ReadTargets ¶
func ReadTargets(ctx context.Context, files []File, targets, overrides []string, defaults map[string]string) (map[string]*Target, map[string]*Group, error)
func TargetsToBuildOpt ¶
Types ¶
type Config ¶
type Config struct { Groups []*Group `json:"group" hcl:"group,block" cty:"group"` Targets []*Target `json:"target" hcl:"target,block" cty:"target"` }
func ParseCompose ¶
func ParseComposeFiles ¶
func ParseFile ¶
func ParseFiles ¶
func (Config) ResolveGroup ¶
func (Config) ResolveTarget ¶
func (c Config) ResolveTarget(name string, overrides map[string]map[string]Override) (*Target, error)
type File ¶
func ReadLocalFiles ¶
type Group ¶
type Group struct { Name string `json:"-" hcl:"name,label" cty:"name"` Targets []string `json:"targets" hcl:"targets" cty:"targets"` }
type Input ¶
type Override ¶
type Target ¶
type Target struct { Name string `json:"-" hcl:"name,label" cty:"name"` // Inherits is the only field that cannot be overridden with --set Attest []string `json:"attest,omitempty" hcl:"attest,optional" cty:"attest"` Inherits []string `json:"inherits,omitempty" hcl:"inherits,optional" cty:"inherits"` Context *string `json:"context,omitempty" hcl:"context,optional" cty:"context"` Contexts map[string]string `json:"contexts,omitempty" hcl:"contexts,optional" cty:"contexts"` Dockerfile *string `json:"dockerfile,omitempty" hcl:"dockerfile,optional" cty:"dockerfile"` DockerfileInline *string `json:"dockerfile-inline,omitempty" hcl:"dockerfile-inline,optional" cty:"dockerfile-inline"` Args map[string]*string `json:"args,omitempty" hcl:"args,optional" cty:"args"` Labels map[string]*string `json:"labels,omitempty" hcl:"labels,optional" cty:"labels"` Tags []string `json:"tags,omitempty" hcl:"tags,optional" cty:"tags"` CacheFrom []string `json:"cache-from,omitempty" hcl:"cache-from,optional" cty:"cache-from"` CacheTo []string `json:"cache-to,omitempty" hcl:"cache-to,optional" cty:"cache-to"` Target *string `json:"target,omitempty" hcl:"target,optional" cty:"target"` Secrets []string `json:"secret,omitempty" hcl:"secret,optional" cty:"secret"` SSH []string `json:"ssh,omitempty" hcl:"ssh,optional" cty:"ssh"` Platforms []string `json:"platforms,omitempty" hcl:"platforms,optional" cty:"platforms"` Outputs []string `json:"output,omitempty" hcl:"output,optional" cty:"output"` Pull *bool `json:"pull,omitempty" hcl:"pull,optional" cty:"pull"` NoCache *bool `json:"no-cache,omitempty" hcl:"no-cache,optional" cty:"no-cache"` NetworkMode *string `json:"-" hcl:"-" cty:"-"` NoCacheFilter []string `json:"no-cache-filter,omitempty" hcl:"no-cache-filter,optional" cty:"no-cache-filter"` // contains filtered or unexported fields }
func (*Target) AddOverrides ¶
func (*Target) Merge ¶
Source Files ¶
bake.go compose.go hcl.go remote.go
Directories ¶
Path | Synopsis |
---|---|
bake/hclparser |
- Version
- v0.10.4
- Published
- Mar 6, 2023
- Platform
- js/wasm
- Imports
- 35 packages
- Last checked
- 7 hours ago –
Tools for package owners.