command

package
v1.6.3 Latest Latest
Warning

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

Go to latest
Published: Sep 25, 2020 License: MPL-2.0 Imports: 130 Imported by: 22

Documentation

Index

Constants

View Source
const (
	ConfigTypeJSON configType = iota // default config type
	ConfigTypeHCL2
)

Variables

View Source
var Builders = map[string]packer.Builder{
	"alicloud-ecs":        new(alicloudecsbuilder.Builder),
	"amazon-chroot":       new(amazonchrootbuilder.Builder),
	"amazon-ebs":          new(amazonebsbuilder.Builder),
	"amazon-ebssurrogate": new(amazonebssurrogatebuilder.Builder),
	"amazon-ebsvolume":    new(amazonebsvolumebuilder.Builder),
	"amazon-instance":     new(amazoninstancebuilder.Builder),
	"azure-arm":           new(azurearmbuilder.Builder),
	"azure-chroot":        new(azurechrootbuilder.Builder),
	"azure-dtl":           new(azuredtlbuilder.Builder),
	"cloudstack":          new(cloudstackbuilder.Builder),
	"digitalocean":        new(digitaloceanbuilder.Builder),
	"docker":              new(dockerbuilder.Builder),
	"file":                new(filebuilder.Builder),
	"googlecompute":       new(googlecomputebuilder.Builder),
	"hcloud":              new(hcloudbuilder.Builder),
	"hyperone":            new(hyperonebuilder.Builder),
	"hyperv-iso":          new(hypervisobuilder.Builder),
	"hyperv-vmcx":         new(hypervvmcxbuilder.Builder),
	"jdcloud":             new(jdcloudbuilder.Builder),
	"linode":              new(linodebuilder.Builder),
	"lxc":                 new(lxcbuilder.Builder),
	"lxd":                 new(lxdbuilder.Builder),
	"ncloud":              new(ncloudbuilder.Builder),
	"null":                new(nullbuilder.Builder),
	"oneandone":           new(oneandonebuilder.Builder),
	"openstack":           new(openstackbuilder.Builder),
	"oracle-classic":      new(oracleclassicbuilder.Builder),
	"oracle-oci":          new(oracleocibuilder.Builder),
	"osc-bsu":             new(oscbsubuilder.Builder),
	"osc-bsusurrogate":    new(oscbsusurrogatebuilder.Builder),
	"osc-bsuvolume":       new(oscbsuvolumebuilder.Builder),
	"osc-chroot":          new(oscchrootbuilder.Builder),
	"parallels-iso":       new(parallelsisobuilder.Builder),
	"parallels-pvm":       new(parallelspvmbuilder.Builder),
	"profitbricks":        new(profitbricksbuilder.Builder),
	"proxmox":             new(proxmoxbuilder.Builder),
	"qemu":                new(qemubuilder.Builder),
	"scaleway":            new(scalewaybuilder.Builder),
	"tencentcloud-cvm":    new(tencentcloudcvmbuilder.Builder),
	"triton":              new(tritonbuilder.Builder),
	"ucloud-uhost":        new(uclouduhostbuilder.Builder),
	"vagrant":             new(vagrantbuilder.Builder),
	"virtualbox-iso":      new(virtualboxisobuilder.Builder),
	"virtualbox-ovf":      new(virtualboxovfbuilder.Builder),
	"virtualbox-vm":       new(virtualboxvmbuilder.Builder),
	"vmware-iso":          new(vmwareisobuilder.Builder),
	"vmware-vmx":          new(vmwarevmxbuilder.Builder),
	"vsphere-clone":       new(vsphereclonebuilder.Builder),
	"vsphere-iso":         new(vsphereisobuilder.Builder),
	"yandex":              new(yandexbuilder.Builder),
}
View Source
var TiniestBuilder = strings.NewReader(`{
	"builders": [
		{
			"type":"null",
			"communicator": "none"
		}
	]
}`)

Functions

This section is empty.

Types

type BuildArgs added in v1.6.0

type BuildArgs struct {
	MetaArgs
	Color, Debug, Force, TimestampUi, MachineReadable bool
	ParallelBuilds                                    int64
	OnError                                           string
}

BuildArgs represents a parsed cli line for a `packer build`

func (*BuildArgs) AddFlagSets added in v1.6.0

func (ba *BuildArgs) AddFlagSets(flags *flag.FlagSet)

type BuildCommand

type BuildCommand struct {
	Meta
}

func (*BuildCommand) AutocompleteArgs added in v1.2.4

func (*BuildCommand) AutocompleteArgs() complete.Predictor

func (*BuildCommand) AutocompleteFlags added in v1.2.4

func (*BuildCommand) AutocompleteFlags() complete.Flags

func (*BuildCommand) Help

func (*BuildCommand) Help() string

func (*BuildCommand) ParseArgs added in v1.4.1

func (c *BuildCommand) ParseArgs(args []string) (*BuildArgs, int)

func (*BuildCommand) Run

func (c *BuildCommand) Run(args []string) int

func (*BuildCommand) RunContext added in v1.4.1

func (c *BuildCommand) RunContext(buildCtx context.Context, cla *BuildArgs) int

func (*BuildCommand) Synopsis

func (*BuildCommand) Synopsis() string

type ConsoleArgs added in v1.6.0

type ConsoleArgs struct {
	MetaArgs
}

ConsoleArgs represents a parsed cli line for a `packer console`

type ConsoleCommand added in v1.4.2

type ConsoleCommand struct {
	Meta
}

func (*ConsoleCommand) AutocompleteArgs added in v1.4.2

func (*ConsoleCommand) AutocompleteArgs() complete.Predictor

func (*ConsoleCommand) AutocompleteFlags added in v1.4.2

func (*ConsoleCommand) AutocompleteFlags() complete.Flags

func (*ConsoleCommand) Help added in v1.4.2

func (*ConsoleCommand) Help() string

func (*ConsoleCommand) ParseArgs added in v1.6.0

func (c *ConsoleCommand) ParseArgs(args []string) (*ConsoleArgs, int)

func (*ConsoleCommand) Run added in v1.4.2

func (c *ConsoleCommand) Run(args []string) int

func (*ConsoleCommand) RunContext added in v1.6.0

func (c *ConsoleCommand) RunContext(ctx context.Context, cla *ConsoleArgs) int

func (*ConsoleCommand) Synopsis added in v1.4.2

func (*ConsoleCommand) Synopsis() string

type CoreWrapper added in v1.6.1

type CoreWrapper struct {
	*packer.Core
}

CoreWrapper wraps a packer.Core in order to have it's Initialize func return a diagnostic.

func (*CoreWrapper) Initialize added in v1.6.1

func (c *CoreWrapper) Initialize() hcl.Diagnostics

type FixArgs added in v1.6.0

type FixArgs struct {
	MetaArgs
	Validate bool
}

FixArgs represents a parsed cli line for a `packer fix`

func (*FixArgs) AddFlagSets added in v1.6.0

func (fa *FixArgs) AddFlagSets(flags *flag.FlagSet)

type FixCommand

type FixCommand struct {
	Meta
}

func (*FixCommand) AutocompleteArgs added in v1.2.4

func (c *FixCommand) AutocompleteArgs() complete.Predictor

func (*FixCommand) AutocompleteFlags added in v1.2.4

func (c *FixCommand) AutocompleteFlags() complete.Flags

func (*FixCommand) Help

func (*FixCommand) Help() string

func (*FixCommand) ParseArgs added in v1.6.0

func (c *FixCommand) ParseArgs(args []string) (*FixArgs, int)

func (*FixCommand) Run

func (c *FixCommand) Run(args []string) int

func (*FixCommand) RunContext added in v1.6.0

func (c *FixCommand) RunContext(ctx context.Context, cla *FixArgs) int

func (*FixCommand) Synopsis

func (c *FixCommand) Synopsis() string

type FlagSetFlags added in v0.8.0

type FlagSetFlags uint

FlagSetFlags is an enum to define what flags are present in the default FlagSet returned by Meta.FlagSet

const (
	FlagSetNone        FlagSetFlags = 0
	FlagSetBuildFilter FlagSetFlags = 1 << iota
	FlagSetVars
)

type HCL2UpgradeArgs added in v1.6.2

type HCL2UpgradeArgs struct {
	MetaArgs
	OutputFile string
}

HCL2UpgradeArgs represents a parsed cli line for a `packer build`

func (*HCL2UpgradeArgs) AddFlagSets added in v1.6.2

func (va *HCL2UpgradeArgs) AddFlagSets(flags *flag.FlagSet)

type HCL2UpgradeCommand added in v1.6.2

type HCL2UpgradeCommand struct {
	Meta
}

func (*HCL2UpgradeCommand) AutocompleteArgs added in v1.6.2

func (*HCL2UpgradeCommand) AutocompleteArgs() complete.Predictor

func (*HCL2UpgradeCommand) AutocompleteFlags added in v1.6.2

func (*HCL2UpgradeCommand) AutocompleteFlags() complete.Flags

func (*HCL2UpgradeCommand) Help added in v1.6.2

func (*HCL2UpgradeCommand) Help() string

func (*HCL2UpgradeCommand) ParseArgs added in v1.6.2

func (c *HCL2UpgradeCommand) ParseArgs(args []string) (*HCL2UpgradeArgs, int)

func (*HCL2UpgradeCommand) Run added in v1.6.2

func (c *HCL2UpgradeCommand) Run(args []string) int

func (*HCL2UpgradeCommand) RunContext added in v1.6.2

func (c *HCL2UpgradeCommand) RunContext(buildCtx context.Context, cla *HCL2UpgradeArgs) int

func (*HCL2UpgradeCommand) Synopsis added in v1.6.2

func (*HCL2UpgradeCommand) Synopsis() string

type InspectArgs added in v1.6.1

type InspectArgs struct {
	MetaArgs
}

InspectArgs represents a parsed cli line for a `packer inspect`

func (*InspectArgs) AddFlagSets added in v1.6.1

func (va *InspectArgs) AddFlagSets(flags *flag.FlagSet)

type InspectCommand

type InspectCommand struct {
	Meta
}

func (*InspectCommand) AutocompleteArgs added in v1.2.4

func (c *InspectCommand) AutocompleteArgs() complete.Predictor

func (*InspectCommand) AutocompleteFlags added in v1.2.4

func (c *InspectCommand) AutocompleteFlags() complete.Flags

func (*InspectCommand) Help

func (*InspectCommand) Help() string

func (*InspectCommand) ParseArgs added in v1.6.1

func (c *InspectCommand) ParseArgs(args []string) (*InspectArgs, int)

func (*InspectCommand) Run

func (c *InspectCommand) Run(args []string) int

func (*InspectCommand) RunContext added in v1.6.1

func (c *InspectCommand) RunContext(ctx context.Context, cla *InspectArgs) int

func (*InspectCommand) Synopsis

func (c *InspectCommand) Synopsis() string

type Meta

type Meta struct {
	CoreConfig *packer.CoreConfig
	Ui         packer.Ui
	Version    string
}

Meta contains the meta-options and functionality that nearly every Packer command inherits.

func (*Meta) Core added in v0.8.0

func (m *Meta) Core(tpl *template.Template, cla *MetaArgs) (*packer.Core, error)

Core returns the core for the given template given the configured CoreConfig and user variables on this Meta.

func (*Meta) FlagSet added in v0.8.0

func (m *Meta) FlagSet(n string, _ FlagSetFlags) *flag.FlagSet

FlagSet returns a FlagSet with the common flags that every command implements. The exact behavior of FlagSet can be configured using the flags as the second parameter, for example to disable build settings on the commands that don't handle builds.

func (*Meta) GetConfig added in v1.6.0

func (m *Meta) GetConfig(cla *MetaArgs) (packer.Handler, int)

func (*Meta) GetConfigFromHCL added in v1.6.0

func (m *Meta) GetConfigFromHCL(cla *MetaArgs) (*hcl2template.PackerConfig, int)

func (*Meta) GetConfigFromJSON added in v1.6.0

func (m *Meta) GetConfigFromJSON(cla *MetaArgs) (packer.Handler, int)

func (*Meta) StdinPiped added in v1.4.2

func (m *Meta) StdinPiped() bool

StdinPiped returns true if the input is piped.

func (*Meta) ValidateFlags added in v0.8.0

func (m *Meta) ValidateFlags() error

ValidateFlags should be called after parsing flags to validate the given flags

type MetaArgs added in v1.6.0

type MetaArgs struct {
	// TODO(azr): in the future, I want to allow passing multiple path to
	// merge HCL confs together; but this will probably need an RFC first.
	Path         string
	Only, Except []string
	Vars         map[string]string
	VarFiles     []string
	// set to "hcl2" to force hcl2 mode
	ConfigType configType
}

MetaArgs defines commonalities between all comands

func (*MetaArgs) AddFlagSets added in v1.6.0

func (ma *MetaArgs) AddFlagSets(fs *flag.FlagSet)

NewMetaArgs parses cli args and put possible values

func (*MetaArgs) GetConfigType added in v1.6.0

func (ma *MetaArgs) GetConfigType() (configType, error)

ConfigType tells what type of config we should use, it can return values like "hcl" or "json". Make sure Args was correctly set before.

type PluginCommand added in v0.9.0

type PluginCommand struct {
	Meta
}

func (*PluginCommand) Help added in v0.9.0

func (*PluginCommand) Help() string

func (*PluginCommand) Run added in v0.9.0

func (c *PluginCommand) Run(args []string) int

func (*PluginCommand) Synopsis added in v0.9.0

func (c *PluginCommand) Synopsis() string

type ValidateArgs added in v1.6.0

type ValidateArgs struct {
	MetaArgs
	SyntaxOnly bool
}

ValidateArgs represents a parsed cli line for a `packer validate`

func (*ValidateArgs) AddFlagSets added in v1.6.0

func (va *ValidateArgs) AddFlagSets(flags *flag.FlagSet)

type ValidateCommand

type ValidateCommand struct {
	Meta
}

func (*ValidateCommand) AutocompleteArgs added in v1.2.4

func (*ValidateCommand) AutocompleteArgs() complete.Predictor

func (*ValidateCommand) AutocompleteFlags added in v1.2.4

func (*ValidateCommand) AutocompleteFlags() complete.Flags

func (*ValidateCommand) Help

func (*ValidateCommand) Help() string

func (*ValidateCommand) ParseArgs added in v1.6.0

func (c *ValidateCommand) ParseArgs(args []string) (*ValidateArgs, int)

func (*ValidateCommand) Run

func (c *ValidateCommand) Run(args []string) int

func (*ValidateCommand) RunContext added in v1.6.0

func (c *ValidateCommand) RunContext(ctx context.Context, cla *ValidateArgs) int

func (*ValidateCommand) Synopsis

func (*ValidateCommand) Synopsis() string

type VersionCheckFunc

type VersionCheckFunc func() (VersionCheckInfo, error)

VersionCheckFunc is the callback called by the Version command to check if there is a new version of Packer.

type VersionCheckInfo

type VersionCheckInfo struct {
	Outdated bool
	Latest   string
	Alerts   []string
}

VersionCheckInfo is the return value for the VersionCheckFunc callback and tells the Version command information about the latest version of Packer.

type VersionCommand

type VersionCommand struct {
	Meta

	CheckFunc VersionCheckFunc
}

VersionCommand is a Command implementation prints the version.

func (*VersionCommand) Help

func (c *VersionCommand) Help() string

func (*VersionCommand) Run

func (c *VersionCommand) Run(args []string) int

func (*VersionCommand) Synopsis

func (c *VersionCommand) Synopsis() string

Jump to

Keyboard shortcuts

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