openbsdvmm

package
v1.7.3 Latest Latest
Warning

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

Go to latest
Published: Apr 13, 2023 License: MIT Imports: 26 Imported by: 0

Documentation

Overview

Code generated by "mapstructure-to-hcl2 -type Config"; DO NOT EDIT.

Index

Constants

View Source
const BuilderID = "packer.openbsd-vmm"

Variables

This section is empty.

Functions

func CommHost added in v1.0.0

func CommHost() func(multistep.StateBag) (string, error)

func SSHPort added in v1.0.0

func SSHPort() func(multistep.StateBag) (int, error)

Types

type Builder

type Builder struct {
	// contains filtered or unexported fields
}

func (*Builder) ConfigSpec added in v1.0.0

func (b *Builder) ConfigSpec() hcldec.ObjectSpec

func (*Builder) Prepare

func (b *Builder) Prepare(raws ...interface{}) ([]string, []string, error)

func (*Builder) Run

func (b *Builder) Run(ctx context.Context, ui packer.Ui, hook packer.Hook) (packer.Artifact, error)

type Config

type Config struct {
	common.PackerConfig            `mapstructure:",squash"`
	commonsteps.HTTPConfig         `mapstructure:",squash"`
	bootcommand.BootConfig         `mapstructure:",squash"`
	shutdowncommand.ShutdownConfig `mapstructure:",squash"`

	CommConfig communicator.Config `mapstructure:",squash"`

	VMName     string `mapstructure:"vm_name"      required:"true"`
	VMTemplate string `mapstructure:"vm_template"  required:"true"` // vmctl -t
	BootDevice string `mapstructure:"boot_device"`                  // vmctl -B
	Boot       string `mapstructure:"boot"`                         // vmctl -b
	CdRom      string `mapstructure:"cdrom"`                        // vmctl -r
	DiskFormat string `mapstructure:"disk_format"`                  // vmctl create
	DiskBase   string `mapstructure:"disk_base"`                    // vmctl create -b
	DiskSize   string `mapstructure:"disk_size"`                    // vmctl create -s
	MemorySize string `mapstructure:"memory"`                       // vmctl -m

	LogDir   string `mapstructure:"log_directory"`
	OutDir   string `mapstructure:"output_directory"`
	UserData string `mapstructure:"user_data"`

	GenFilesExtension string `mapstructure:"gen_files_extension"`
	GenFilesPattern   string `mapstructure:"gen_files_pattern"`
	// contains filtered or unexported fields
}

func (*Config) FlatMapstructure added in v1.0.0

func (*Config) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec }

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.

func (*Config) Prepare added in v1.0.0

func (c *Config) Prepare(raws ...interface{}) ([]string, error)

type Driver

type Driver interface {
	bootcommand.BCDriver
	VmctlCmd(args ...string) error
	Start(...string) error
	Stop(string) error
	GetTapIPAddress(string) (string, error)
	GetVMId(string) string
}

type FlatConfig added in v1.0.0

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"`
	BootGroupInterval         *string           `mapstructure:"boot_keygroup_interval" cty:"boot_keygroup_interval"`
	BootWait                  *string           `mapstructure:"boot_wait" cty:"boot_wait"`
	BootCommand               []string          `mapstructure:"boot_command" cty:"boot_command"`
	ShutdownCommand           *string           `mapstructure:"shutdown_command" required:"false" cty:"shutdown_command"`
	ShutdownTimeout           *string           `mapstructure:"shutdown_timeout" required:"false" cty:"shutdown_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"`
	SSHBastionInteractive     *bool             `mapstructure:"ssh_bastion_interactive" cty:"ssh_bastion_interactive"`
	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"`
	VMName                    *string           `mapstructure:"vm_name" required:"true" cty:"vm_name"`
	VMTemplate                *string           `mapstructure:"vm_template" required:"true" cty:"vm_template"`
	BootDevice                *string           `mapstructure:"boot_device" cty:"boot_device"`
	Boot                      *string           `mapstructure:"boot" cty:"boot"`
	CdRom                     *string           `mapstructure:"cdrom" cty:"cdrom"`
	DiskFormat                *string           `mapstructure:"disk_format" cty:"disk_format"`
	DiskBase                  *string           `mapstructure:"disk_base" cty:"disk_base"`
	DiskSize                  *string           `mapstructure:"disk_size" cty:"disk_size"`
	MemorySize                *string           `mapstructure:"memory" cty:"memory"`
	LogDir                    *string           `mapstructure:"log_directory" cty:"log_directory"`
	OutDir                    *string           `mapstructure:"output_directory" cty:"output_directory"`
	UserData                  *string           `mapstructure:"user_data" cty:"user_data"`
	GenFilesExtension         *string           `mapstructure:"gen_files_extension" cty:"gen_files_extension"`
	GenFilesPattern           *string           `mapstructure:"gen_files_pattern" cty:"gen_files_pattern"`
}

FlatConfig is an auto-generated flat version of Config. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.

func (*FlatConfig) HCL2Spec added in v1.0.0

func (*FlatConfig) HCL2Spec() map[string]hcldec.Spec

HCL2Spec returns the hcl spec of a Config. This spec is used by HCL to read the fields of Config. The decoded values from this spec will then be applied to a FlatConfig.

type VmmArtifact

type VmmArtifact struct {
	// contains filtered or unexported fields
}

func (*VmmArtifact) BuilderId

func (*VmmArtifact) BuilderId() string

func (VmmArtifact) Destroy

func (a VmmArtifact) Destroy() error

func (*VmmArtifact) Files

func (a *VmmArtifact) Files() []string

func (*VmmArtifact) Id

func (a *VmmArtifact) Id() string

func (*VmmArtifact) State

func (a *VmmArtifact) State(name string) interface{}

func (*VmmArtifact) String

func (a *VmmArtifact) String() string

Jump to

Keyboard shortcuts

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