Documentation ¶
Overview ¶
Code generated by "mapstructure-to-hcl2 -type Config"; DO NOT EDIT.
Code generated by "mapstructure-to-hcl2 -type CDRomConfig"; DO NOT EDIT.
Code generated by "mapstructure-to-hcl2 -type FloppyConfig"; DO NOT EDIT.
Code generated by "mapstructure-to-hcl2 -type CreateConfig"; DO NOT EDIT.
Index ¶
- type BootConfig
- type Builder
- type CDRomConfig
- type Config
- type CreateConfig
- type FlatCDRomConfig
- type FlatConfig
- type FlatCreateConfig
- type FlatFloppyConfig
- type FloppyConfig
- type StepAddCDRom
- type StepAddFloppy
- type StepBootCommand
- type StepCreateVM
- type StepRemoteUpload
- type StepRemoveCDRom
- type StepRemoveFloppy
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type BootConfig ¶
type BootConfig struct { BootCommand []string `mapstructure:"boot_command"` BootWait time.Duration `mapstructure:"boot_wait"` // example: "1m30s"; default: "10s" HTTPIP string `mapstructure:"http_ip"` }
func (*BootConfig) Prepare ¶
func (c *BootConfig) Prepare() []error
type Builder ¶
type Builder struct {
// contains filtered or unexported fields
}
func (*Builder) ConfigSpec ¶
func (b *Builder) ConfigSpec() hcldec.ObjectSpec
type CDRomConfig ¶
type CDRomConfig struct { // Which controller to use. Example: `sata`. Defaults to `ide`. CdromType string `mapstructure:"cdrom_type"` // List of datastore paths to ISO files that will be mounted to the VM. // Example: `"[datastore1] ISO/ubuntu.iso"`. ISOPaths []string `mapstructure:"iso_paths"` }
func (*CDRomConfig) FlatMapstructure ¶
func (*CDRomConfig) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec }
FlatMapstructure returns a new FlatCDRomConfig. FlatCDRomConfig is an auto-generated flat version of CDRomConfig. Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
func (*CDRomConfig) Prepare ¶
func (c *CDRomConfig) Prepare() []error
type Config ¶
type Config struct { packerCommon.PackerConfig `mapstructure:",squash"` packerCommon.HTTPConfig `mapstructure:",squash"` common.ConnectConfig `mapstructure:",squash"` CreateConfig `mapstructure:",squash"` common.LocationConfig `mapstructure:",squash"` common.HardwareConfig `mapstructure:",squash"` common.ConfigParamsConfig `mapstructure:",squash"` packerCommon.ISOConfig `mapstructure:",squash"` CDRomConfig `mapstructure:",squash"` FloppyConfig `mapstructure:",squash"` common.RunConfig `mapstructure:",squash"` BootConfig `mapstructure:",squash"` common.WaitIpConfig `mapstructure:",squash"` Comm communicator.Config `mapstructure:",squash"` common.ShutdownConfig `mapstructure:",squash"` CreateSnapshot bool `mapstructure:"create_snapshot"` ConvertToTemplate bool `mapstructure:"convert_to_template"` // contains filtered or unexported fields }
func (*Config) FlatMapstructure ¶
FlatMapstructure returns a new FlatConfig. FlatConfig is an auto-generated flat version of Config. Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
type CreateConfig ¶
type CreateConfig struct { // Set VM hardware version. Defaults to the most current VM hardware // version supported by vCenter. See // [VMWare article 1003746](https://kb.vmware.com/s/article/1003746) for // the full list of supported VM hardware versions. Version uint `mapstructure:"vm_version"` // Set VM OS type. Defaults to `otherGuest`. See [ // here](https://pubs.vmware.com/vsphere-6-5/index.jsp?topic=%2Fcom.vmware.wssdk.apiref.doc%2Fvim.vm.GuestOsDescriptor.GuestOsIdentifier.html) // for a full list of possible values. GuestOSType string `mapstructure:"guest_os_type"` // Set the Firmware at machine creation. Example `efi`. Defaults to `bios`. Firmware string `mapstructure:"firmware"` // Set VM disk controller type. Example `pvscsi`. DiskControllerType string `mapstructure:"disk_controller_type"` // The size of the disk in MB. DiskSize int64 `mapstructure:"disk_size"` // Enable VMDK thin provisioning for VM. Defaults to `false`. DiskThinProvisioned bool `mapstructure:"disk_thin_provisioned"` // Set network VM will be connected to. Network string `mapstructure:"network"` // Set VM network card type. Example `vmxnet3`. NetworkCard string `mapstructure:"network_card"` // Create USB controller for virtual machine. Defaults to `false`. USBController bool `mapstructure:"usb_controller"` // VM notes. Notes string `mapstructure:"notes"` }
func (*CreateConfig) FlatMapstructure ¶
func (*CreateConfig) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec }
FlatMapstructure returns a new FlatCreateConfig. FlatCreateConfig is an auto-generated flat version of CreateConfig. Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
func (*CreateConfig) Prepare ¶
func (c *CreateConfig) Prepare() []error
type FlatCDRomConfig ¶
type FlatCDRomConfig struct { CdromType *string `mapstructure:"cdrom_type" cty:"cdrom_type"` ISOPaths []string `mapstructure:"iso_paths" cty:"iso_paths"` }
FlatCDRomConfig is an auto-generated flat version of CDRomConfig. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type FlatConfig ¶
type FlatConfig struct { PackerBuildName *string `mapstructure:"packer_build_name" cty:"packer_build_name"` PackerBuilderType *string `mapstructure:"packer_builder_type" cty:"packer_builder_type"` PackerDebug *bool `mapstructure:"packer_debug" cty:"packer_debug"` PackerForce *bool `mapstructure:"packer_force" cty:"packer_force"` PackerOnError *string `mapstructure:"packer_on_error" cty:"packer_on_error"` PackerUserVars map[string]string `mapstructure:"packer_user_variables" cty:"packer_user_variables"` PackerSensitiveVars []string `mapstructure:"packer_sensitive_variables" cty:"packer_sensitive_variables"` HTTPDir *string `mapstructure:"http_directory" cty:"http_directory"` HTTPPortMin *int `mapstructure:"http_port_min" cty:"http_port_min"` HTTPPortMax *int `mapstructure:"http_port_max" cty:"http_port_max"` VCenterServer *string `mapstructure:"vcenter_server" cty:"vcenter_server"` Username *string `mapstructure:"username" cty:"username"` Password *string `mapstructure:"password" cty:"password"` InsecureConnection *bool `mapstructure:"insecure_connection" cty:"insecure_connection"` Datacenter *string `mapstructure:"datacenter" cty:"datacenter"` Version *uint `mapstructure:"vm_version" cty:"vm_version"` GuestOSType *string `mapstructure:"guest_os_type" cty:"guest_os_type"` Firmware *string `mapstructure:"firmware" cty:"firmware"` DiskControllerType *string `mapstructure:"disk_controller_type" cty:"disk_controller_type"` DiskSize *int64 `mapstructure:"disk_size" cty:"disk_size"` DiskThinProvisioned *bool `mapstructure:"disk_thin_provisioned" cty:"disk_thin_provisioned"` Network *string `mapstructure:"network" cty:"network"` NetworkCard *string `mapstructure:"network_card" cty:"network_card"` USBController *bool `mapstructure:"usb_controller" cty:"usb_controller"` Notes *string `mapstructure:"notes" cty:"notes"` VMName *string `mapstructure:"vm_name" cty:"vm_name"` Folder *string `mapstructure:"folder" cty:"folder"` Cluster *string `mapstructure:"cluster" cty:"cluster"` Host *string `mapstructure:"host" cty:"host"` ResourcePool *string `mapstructure:"resource_pool" cty:"resource_pool"` Datastore *string `mapstructure:"datastore" cty:"datastore"` CPUs *int32 `mapstructure:"CPUs" cty:"CPUs"` CpuCores *int32 `mapstructure:"cpu_cores" cty:"cpu_cores"` CPUReservation *int64 `mapstructure:"CPU_reservation" cty:"CPU_reservation"` CPULimit *int64 `mapstructure:"CPU_limit" cty:"CPU_limit"` CpuHotAddEnabled *bool `mapstructure:"CPU_hot_plug" cty:"CPU_hot_plug"` RAM *int64 `mapstructure:"RAM" cty:"RAM"` RAMReservation *int64 `mapstructure:"RAM_reservation" cty:"RAM_reservation"` RAMReserveAll *bool `mapstructure:"RAM_reserve_all" cty:"RAM_reserve_all"` MemoryHotAddEnabled *bool `mapstructure:"RAM_hot_plug" cty:"RAM_hot_plug"` VideoRAM *int64 `mapstructure:"video_ram" cty:"video_ram"` NestedHV *bool `mapstructure:"NestedHV" cty:"NestedHV"` ConfigParams map[string]string `mapstructure:"configuration_parameters" cty:"configuration_parameters"` ISOChecksum *string `mapstructure:"iso_checksum" required:"true" cty:"iso_checksum"` ISOChecksumURL *string `mapstructure:"iso_checksum_url" cty:"iso_checksum_url"` ISOChecksumType *string `mapstructure:"iso_checksum_type" cty:"iso_checksum_type"` RawSingleISOUrl *string `mapstructure:"iso_url" required:"true" cty:"iso_url"` ISOUrls []string `mapstructure:"iso_urls" cty:"iso_urls"` TargetPath *string `mapstructure:"iso_target_path" cty:"iso_target_path"` TargetExtension *string `mapstructure:"iso_target_extension" cty:"iso_target_extension"` CdromType *string `mapstructure:"cdrom_type" cty:"cdrom_type"` ISOPaths []string `mapstructure:"iso_paths" cty:"iso_paths"` FloppyIMGPath *string `mapstructure:"floppy_img_path" cty:"floppy_img_path"` FloppyFiles []string `mapstructure:"floppy_files" cty:"floppy_files"` FloppyDirectories []string `mapstructure:"floppy_dirs" cty:"floppy_dirs"` BootOrder *string `mapstructure:"boot_order" cty:"boot_order"` BootCommand []string `mapstructure:"boot_command" cty:"boot_command"` BootWait *string `mapstructure:"boot_wait" cty:"boot_wait"` HTTPIP *string `mapstructure:"http_ip" cty:"http_ip"` WaitTimeout *string `mapstructure:"ip_wait_timeout" cty:"ip_wait_timeout"` SettleTimeout *string `mapstructure:"ip_settle_timeout" cty:"ip_settle_timeout"` Type *string `mapstructure:"communicator" cty:"communicator"` PauseBeforeConnect *string `mapstructure:"pause_before_connecting" cty:"pause_before_connecting"` SSHHost *string `mapstructure:"ssh_host" cty:"ssh_host"` SSHPort *int `mapstructure:"ssh_port" cty:"ssh_port"` SSHUsername *string `mapstructure:"ssh_username" cty:"ssh_username"` SSHPassword *string `mapstructure:"ssh_password" cty:"ssh_password"` SSHKeyPairName *string `mapstructure:"ssh_keypair_name" cty:"ssh_keypair_name"` SSHTemporaryKeyPairName *string `mapstructure:"temporary_key_pair_name" cty:"temporary_key_pair_name"` SSHClearAuthorizedKeys *bool `mapstructure:"ssh_clear_authorized_keys" cty:"ssh_clear_authorized_keys"` SSHPrivateKeyFile *string `mapstructure:"ssh_private_key_file" cty:"ssh_private_key_file"` SSHPty *bool `mapstructure:"ssh_pty" cty:"ssh_pty"` SSHTimeout *string `mapstructure:"ssh_timeout" cty:"ssh_timeout"` SSHAgentAuth *bool `mapstructure:"ssh_agent_auth" cty:"ssh_agent_auth"` SSHDisableAgentForwarding *bool `mapstructure:"ssh_disable_agent_forwarding" cty:"ssh_disable_agent_forwarding"` SSHHandshakeAttempts *int `mapstructure:"ssh_handshake_attempts" cty:"ssh_handshake_attempts"` SSHBastionHost *string `mapstructure:"ssh_bastion_host" cty:"ssh_bastion_host"` SSHBastionPort *int `mapstructure:"ssh_bastion_port" cty:"ssh_bastion_port"` SSHBastionAgentAuth *bool `mapstructure:"ssh_bastion_agent_auth" cty:"ssh_bastion_agent_auth"` SSHBastionUsername *string `mapstructure:"ssh_bastion_username" cty:"ssh_bastion_username"` SSHBastionPassword *string `mapstructure:"ssh_bastion_password" cty:"ssh_bastion_password"` SSHBastionPrivateKeyFile *string `mapstructure:"ssh_bastion_private_key_file" cty:"ssh_bastion_private_key_file"` SSHFileTransferMethod *string `mapstructure:"ssh_file_transfer_method" cty:"ssh_file_transfer_method"` SSHProxyHost *string `mapstructure:"ssh_proxy_host" cty:"ssh_proxy_host"` SSHProxyPort *int `mapstructure:"ssh_proxy_port" cty:"ssh_proxy_port"` SSHProxyUsername *string `mapstructure:"ssh_proxy_username" cty:"ssh_proxy_username"` SSHProxyPassword *string `mapstructure:"ssh_proxy_password" cty:"ssh_proxy_password"` SSHKeepAliveInterval *string `mapstructure:"ssh_keep_alive_interval" cty:"ssh_keep_alive_interval"` SSHReadWriteTimeout *string `mapstructure:"ssh_read_write_timeout" cty:"ssh_read_write_timeout"` SSHRemoteTunnels []string `mapstructure:"ssh_remote_tunnels" cty:"ssh_remote_tunnels"` SSHLocalTunnels []string `mapstructure:"ssh_local_tunnels" cty:"ssh_local_tunnels"` SSHPublicKey []byte `mapstructure:"ssh_public_key" cty:"ssh_public_key"` SSHPrivateKey []byte `mapstructure:"ssh_private_key" cty:"ssh_private_key"` WinRMUser *string `mapstructure:"winrm_username" cty:"winrm_username"` WinRMPassword *string `mapstructure:"winrm_password" cty:"winrm_password"` WinRMHost *string `mapstructure:"winrm_host" cty:"winrm_host"` WinRMPort *int `mapstructure:"winrm_port" cty:"winrm_port"` WinRMTimeout *string `mapstructure:"winrm_timeout" cty:"winrm_timeout"` WinRMUseSSL *bool `mapstructure:"winrm_use_ssl" cty:"winrm_use_ssl"` WinRMInsecure *bool `mapstructure:"winrm_insecure" cty:"winrm_insecure"` WinRMUseNTLM *bool `mapstructure:"winrm_use_ntlm" cty:"winrm_use_ntlm"` Command *string `mapstructure:"shutdown_command" cty:"shutdown_command"` Timeout *string `mapstructure:"shutdown_timeout" cty:"shutdown_timeout"` CreateSnapshot *bool `mapstructure:"create_snapshot" cty:"create_snapshot"` ConvertToTemplate *bool `mapstructure:"convert_to_template" cty:"convert_to_template"` }
FlatConfig is an auto-generated flat version of Config. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type FlatCreateConfig ¶
type FlatCreateConfig struct { Version *uint `mapstructure:"vm_version" cty:"vm_version"` GuestOSType *string `mapstructure:"guest_os_type" cty:"guest_os_type"` Firmware *string `mapstructure:"firmware" cty:"firmware"` DiskControllerType *string `mapstructure:"disk_controller_type" cty:"disk_controller_type"` DiskSize *int64 `mapstructure:"disk_size" cty:"disk_size"` DiskThinProvisioned *bool `mapstructure:"disk_thin_provisioned" cty:"disk_thin_provisioned"` Network *string `mapstructure:"network" cty:"network"` NetworkCard *string `mapstructure:"network_card" cty:"network_card"` USBController *bool `mapstructure:"usb_controller" cty:"usb_controller"` Notes *string `mapstructure:"notes" cty:"notes"` }
FlatCreateConfig is an auto-generated flat version of CreateConfig. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type FlatFloppyConfig ¶
type FlatFloppyConfig struct { FloppyIMGPath *string `mapstructure:"floppy_img_path" cty:"floppy_img_path"` FloppyFiles []string `mapstructure:"floppy_files" cty:"floppy_files"` FloppyDirectories []string `mapstructure:"floppy_dirs" cty:"floppy_dirs"` }
FlatFloppyConfig is an auto-generated flat version of FloppyConfig. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type FloppyConfig ¶
type FloppyConfig struct { // Datastore path to a floppy image that will be mounted to the VM. // Example: `[datastore1] ISO/pvscsi-Windows8.flp`. FloppyIMGPath string `mapstructure:"floppy_img_path"` // List of local files to be mounted to the VM floppy drive. Can be used to // make Debian preseed or RHEL kickstart files available to the VM. FloppyFiles []string `mapstructure:"floppy_files"` // List of directories to copy files from. FloppyDirectories []string `mapstructure:"floppy_dirs"` }
func (*FloppyConfig) FlatMapstructure ¶
func (*FloppyConfig) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec }
FlatMapstructure returns a new FlatFloppyConfig. FlatFloppyConfig is an auto-generated flat version of FloppyConfig. Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
type StepAddCDRom ¶
type StepAddCDRom struct {
Config *CDRomConfig
}
func (*StepAddCDRom) Cleanup ¶
func (s *StepAddCDRom) Cleanup(state multistep.StateBag)
func (*StepAddCDRom) Run ¶
func (s *StepAddCDRom) Run(_ context.Context, state multistep.StateBag) multistep.StepAction
type StepAddFloppy ¶
type StepAddFloppy struct { Config *FloppyConfig Datastore string Host string }
func (*StepAddFloppy) Cleanup ¶
func (s *StepAddFloppy) Cleanup(state multistep.StateBag)
func (*StepAddFloppy) Run ¶
func (s *StepAddFloppy) Run(_ context.Context, state multistep.StateBag) multistep.StepAction
type StepBootCommand ¶
type StepBootCommand struct { Config *BootConfig VMName string Ctx interpolate.Context }
func (*StepBootCommand) Cleanup ¶
func (s *StepBootCommand) Cleanup(state multistep.StateBag)
func (*StepBootCommand) Run ¶
func (s *StepBootCommand) Run(_ context.Context, state multistep.StateBag) multistep.StepAction
type StepCreateVM ¶
type StepCreateVM struct { Config *CreateConfig Location *common.LocationConfig Force bool }
func (*StepCreateVM) Cleanup ¶
func (s *StepCreateVM) Cleanup(state multistep.StateBag)
func (*StepCreateVM) Run ¶
func (s *StepCreateVM) Run(_ context.Context, state multistep.StateBag) multistep.StepAction
type StepRemoteUpload ¶
func (*StepRemoteUpload) Cleanup ¶
func (s *StepRemoteUpload) Cleanup(state multistep.StateBag)
func (*StepRemoteUpload) Run ¶
func (s *StepRemoteUpload) Run(_ context.Context, state multistep.StateBag) multistep.StepAction
type StepRemoveCDRom ¶
type StepRemoveCDRom struct{}
func (*StepRemoveCDRom) Cleanup ¶
func (s *StepRemoveCDRom) Cleanup(state multistep.StateBag)
func (*StepRemoveCDRom) Run ¶
func (s *StepRemoveCDRom) Run(_ context.Context, state multistep.StateBag) multistep.StepAction
type StepRemoveFloppy ¶
func (*StepRemoveFloppy) Cleanup ¶
func (s *StepRemoveFloppy) Cleanup(state multistep.StateBag)
func (*StepRemoveFloppy) Run ¶
func (s *StepRemoveFloppy) Run(_ context.Context, state multistep.StateBag) multistep.StepAction