Documentation ¶
Index ¶
- Constants
- Variables
- type BuildArgs
- type BuildCommand
- func (*BuildCommand) AutocompleteArgs() complete.Predictor
- func (*BuildCommand) AutocompleteFlags() complete.Flags
- func (*BuildCommand) Help() string
- func (c *BuildCommand) ParseArgs(args []string) (*BuildArgs, int)
- func (c *BuildCommand) Run(args []string) int
- func (c *BuildCommand) RunContext(buildCtx context.Context, cla *BuildArgs) int
- func (*BuildCommand) Synopsis() string
- type ConsoleArgs
- type ConsoleCommand
- func (*ConsoleCommand) AutocompleteArgs() complete.Predictor
- func (*ConsoleCommand) AutocompleteFlags() complete.Flags
- func (*ConsoleCommand) Help() string
- func (c *ConsoleCommand) ParseArgs(args []string) (*ConsoleArgs, int)
- func (c *ConsoleCommand) Run(args []string) int
- func (c *ConsoleCommand) RunContext(ctx context.Context, cla *ConsoleArgs) int
- func (*ConsoleCommand) Synopsis() string
- type CoreWrapper
- type FixArgs
- type FixCommand
- func (c *FixCommand) AutocompleteArgs() complete.Predictor
- func (c *FixCommand) AutocompleteFlags() complete.Flags
- func (*FixCommand) Help() string
- func (c *FixCommand) ParseArgs(args []string) (*FixArgs, int)
- func (c *FixCommand) Run(args []string) int
- func (c *FixCommand) RunContext(ctx context.Context, cla *FixArgs) int
- func (c *FixCommand) Synopsis() string
- type FlagSetFlags
- type HCL2UpgradeArgs
- type HCL2UpgradeCommand
- func (*HCL2UpgradeCommand) AutocompleteArgs() complete.Predictor
- func (*HCL2UpgradeCommand) AutocompleteFlags() complete.Flags
- func (*HCL2UpgradeCommand) Help() string
- func (c *HCL2UpgradeCommand) ParseArgs(args []string) (*HCL2UpgradeArgs, int)
- func (c *HCL2UpgradeCommand) Run(args []string) int
- func (c *HCL2UpgradeCommand) RunContext(buildCtx context.Context, cla *HCL2UpgradeArgs) int
- func (*HCL2UpgradeCommand) Synopsis() string
- type InspectArgs
- type InspectCommand
- func (c *InspectCommand) AutocompleteArgs() complete.Predictor
- func (c *InspectCommand) AutocompleteFlags() complete.Flags
- func (*InspectCommand) Help() string
- func (c *InspectCommand) ParseArgs(args []string) (*InspectArgs, int)
- func (c *InspectCommand) Run(args []string) int
- func (c *InspectCommand) RunContext(ctx context.Context, cla *InspectArgs) int
- func (c *InspectCommand) Synopsis() string
- type Meta
- func (m *Meta) Core(tpl *template.Template, cla *MetaArgs) (*packer.Core, error)
- func (m *Meta) FlagSet(n string, _ FlagSetFlags) *flag.FlagSet
- func (m *Meta) GetConfig(cla *MetaArgs) (packer.Handler, int)
- func (m *Meta) GetConfigFromHCL(cla *MetaArgs) (*hcl2template.PackerConfig, int)
- func (m *Meta) GetConfigFromJSON(cla *MetaArgs) (packer.Handler, int)
- func (m *Meta) StdinPiped() bool
- func (m *Meta) ValidateFlags() error
- type MetaArgs
- type PluginCommand
- type ValidateArgs
- type ValidateCommand
- func (*ValidateCommand) AutocompleteArgs() complete.Predictor
- func (*ValidateCommand) AutocompleteFlags() complete.Flags
- func (*ValidateCommand) Help() string
- func (c *ValidateCommand) ParseArgs(args []string) (*ValidateArgs, int)
- func (c *ValidateCommand) Run(args []string) int
- func (c *ValidateCommand) RunContext(ctx context.Context, cla *ValidateArgs) int
- func (*ValidateCommand) Synopsis() string
- type VersionCheckFunc
- type VersionCheckInfo
- type VersionCommand
Constants ¶
const ( ConfigTypeJSON configType = iota // default config type ConfigTypeHCL2 )
Variables ¶
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), }
var PostProcessors = map[string]packer.PostProcessor{ "alicloud-import": new(alicloudimportpostprocessor.PostProcessor), "amazon-import": new(amazonimportpostprocessor.PostProcessor), "artifice": new(artificepostprocessor.PostProcessor), "checksum": new(checksumpostprocessor.PostProcessor), "compress": new(compresspostprocessor.PostProcessor), "digitalocean-import": new(digitaloceanimportpostprocessor.PostProcessor), "docker-import": new(dockerimportpostprocessor.PostProcessor), "docker-push": new(dockerpushpostprocessor.PostProcessor), "docker-save": new(dockersavepostprocessor.PostProcessor), "docker-tag": new(dockertagpostprocessor.PostProcessor), "exoscale-import": new(exoscaleimportpostprocessor.PostProcessor), "googlecompute-export": new(googlecomputeexportpostprocessor.PostProcessor), "googlecompute-import": new(googlecomputeimportpostprocessor.PostProcessor), "manifest": new(manifestpostprocessor.PostProcessor), "shell-local": new(shelllocalpostprocessor.PostProcessor), "ucloud-import": new(ucloudimportpostprocessor.PostProcessor), "vagrant": new(vagrantpostprocessor.PostProcessor), "vagrant-cloud": new(vagrantcloudpostprocessor.PostProcessor), "vsphere": new(vspherepostprocessor.PostProcessor), "vsphere-template": new(vspheretemplatepostprocessor.PostProcessor), "yandex-export": new(yandexexportpostprocessor.PostProcessor), "yandex-import": new(yandeximportpostprocessor.PostProcessor), }
var Provisioners = map[string]packer.Provisioner{ "ansible": new(ansibleprovisioner.Provisioner), "ansible-local": new(ansiblelocalprovisioner.Provisioner), "azure-dtlartifact": new(azuredtlartifactprovisioner.Provisioner), "breakpoint": new(breakpointprovisioner.Provisioner), "chef-client": new(chefclientprovisioner.Provisioner), "chef-solo": new(chefsoloprovisioner.Provisioner), "converge": new(convergeprovisioner.Provisioner), "file": new(fileprovisioner.Provisioner), "inspec": new(inspecprovisioner.Provisioner), "powershell": new(powershellprovisioner.Provisioner), "puppet-masterless": new(puppetmasterlessprovisioner.Provisioner), "puppet-server": new(puppetserverprovisioner.Provisioner), "salt-masterless": new(saltmasterlessprovisioner.Provisioner), "shell": new(shellprovisioner.Provisioner), "shell-local": new(shelllocalprovisioner.Provisioner), "sleep": new(sleepprovisioner.Provisioner), "windows-restart": new(windowsrestartprovisioner.Provisioner), "windows-shell": new(windowsshellprovisioner.Provisioner), }
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
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
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
FixArgs represents a parsed cli line for a `packer fix`
func (*FixArgs) AddFlagSets ¶ added in v1.6.0
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
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
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) GetConfigFromHCL ¶ added in v1.6.0
func (m *Meta) GetConfigFromHCL(cla *MetaArgs) (*hcl2template.PackerConfig, int)
func (*Meta) GetConfigFromJSON ¶ added in v1.6.0
func (*Meta) StdinPiped ¶ added in v1.4.2
StdinPiped returns true if the input is piped.
func (*Meta) ValidateFlags ¶ added in v0.8.0
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
NewMetaArgs parses cli args and put possible values
func (*MetaArgs) GetConfigType ¶ added in v1.6.0
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
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 ¶
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