bake

package
v0.5.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 10, 2020 License: Apache-2.0 Imports: 33 Imported by: 6

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func IsRemoteURL added in v0.5.0

func IsRemoteURL(url string) bool

func ReadRemoteFiles added in v0.5.0

func ReadRemoteFiles(ctx context.Context, dis []build.DriverInfo, url string, names []string, pw progress.Writer) ([]File, *Input, error)

func ReadTargets

func ReadTargets(ctx context.Context, files []File, targets, overrides []string) (map[string]*Target, error)

func TargetsToBuildOpt

func TargetsToBuildOpt(m map[string]*Target, inp *Input) (map[string]build.Options, error)

Types

type Config

type Config struct {
	Variables []*Variable `json:"-" hcl:"variable,block"`
	Groups    []*Group    `json:"group" hcl:"group,block"`
	Targets   []*Target   `json:"target" hcl:"target,block"`
	Remain    hcl.Body    `json:"-" hcl:",remain"`
}

func ParseCompose

func ParseCompose(dt []byte) (*Config, error)

func ParseFile

func ParseFile(dt []byte, fn string) (*Config, error)

func ParseHCL

func ParseHCL(dt []byte, fn string) (_ *Config, err error)

func (Config) ResolveGroup

func (c Config) ResolveGroup(name string) []string

func (Config) ResolveTarget

func (c Config) ResolveTarget(name string, overrides map[string]*Target) (*Target, error)

type File added in v0.5.0

type File struct {
	Name string
	Data []byte
}

func ReadLocalFiles added in v0.5.0

func ReadLocalFiles(names []string) ([]File, error)

type Group

type Group struct {
	Name    string   `json:"-" hcl:"name,label"`
	Targets []string `json:"targets" hcl:"targets"`
}

type Input added in v0.5.0

type Input struct {
	State *llb.State
	URL   string
}

type Target

type Target struct {
	Name string `json:"-" hcl:"name,label"`

	// Inherits is the only field that cannot be overridden with --set
	Inherits []string `json:"inherits,omitempty" hcl:"inherits,optional"`

	Context          *string           `json:"context,omitempty" hcl:"context,optional"`
	Dockerfile       *string           `json:"dockerfile,omitempty" hcl:"dockerfile,optional"`
	DockerfileInline *string           `json:"dockerfile-inline,omitempty" hcl:"dockerfile-inline,optional"`
	Args             map[string]string `json:"args,omitempty" hcl:"args,optional"`
	Labels           map[string]string `json:"labels,omitempty" hcl:"labels,optional"`
	Tags             []string          `json:"tags,omitempty" hcl:"tags,optional"`
	CacheFrom        []string          `json:"cache-from,omitempty"  hcl:"cache-from,optional"`
	CacheTo          []string          `json:"cache-to,omitempty"  hcl:"cache-to,optional"`
	Target           *string           `json:"target,omitempty" hcl:"target,optional"`
	Secrets          []string          `json:"secret,omitempty" hcl:"secret,optional"`
	SSH              []string          `json:"ssh,omitempty" hcl:"ssh,optional"`
	Platforms        []string          `json:"platforms,omitempty" hcl:"platforms,optional"`
	Outputs          []string          `json:"output,omitempty" hcl:"output,optional"`
	Pull             *bool             `json:"pull,omitempty" hcl:"pull,optional"`
	NoCache          *bool             `json:"no-cache,omitempty" hcl:"no-cache,optional"`
}

type Variable added in v0.4.0

type Variable struct {
	Name    string `json:"-" hcl:"name,label"`
	Default string `json:"default,omitempty" hcl:"default,optional"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL