Documentation
¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type ArtifactParameter ¶
type ArtifactParameter struct { Name string `mapstructure:"name"` Value string `mapstructure:"value"` Type string `mapstructure:"type"` }
func (*ArtifactParameter) FlatMapstructure ¶
func (*ArtifactParameter) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec }
FlatMapstructure returns a new FlatArtifactParameter. FlatArtifactParameter is an auto-generated flat version of ArtifactParameter. Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
type Config ¶
type Config struct { common.PackerConfig `mapstructure:",squash"` // Authentication via OAUTH ClientConfig client.Config `mapstructure:",squash"` DtlArtifacts []DtlArtifact `mapstructure:"dtl_artifacts" required:"true"` // Name of the existing lab where the virtual machine exist. LabName string `mapstructure:"lab_name" required:"true"` // Name of the resource group where the lab exist. ResourceGroupName string `mapstructure:"lab_resource_group_name" required:"true"` // Name of the virtual machine within the DevTest lab. VMName string `mapstructure:"vm_name" required:"true"` // The default PollingDuration for azure is 15mins, this property will override // that value. See [Azure DefaultPollingDuration](https://godoc.org/github.com/Azure/go-autorest/autorest#pkg-constants) // If your Packer build is failing on the // ARM deployment step with the error `Original Error: // context deadline exceeded`, then you probably need to increase this timeout from // its default of "15m" (valid time units include `s` for seconds, `m` for // minutes, and `h` for hours.) PollingDurationTimeout time.Duration `mapstructure:"polling_duration_timeout" required:"false"` AzureTags map[string]*string `mapstructure:"azure_tags"` Json map[string]interface{} // contains filtered or unexported fields }
type DtlArtifact ¶
type DtlArtifact struct { ArtifactName string `mapstructure:"artifact_name"` ArtifactId string `mapstructure:"artifact_id"` Parameters []ArtifactParameter `mapstructure:"parameters"` }
func (*DtlArtifact) FlatMapstructure ¶
func (*DtlArtifact) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec }
FlatMapstructure returns a new FlatDtlArtifact. FlatDtlArtifact is an auto-generated flat version of DtlArtifact. Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
type FlatArtifactParameter ¶
type FlatArtifactParameter struct { Name *string `mapstructure:"name" cty:"name" hcl:"name"` Value *string `mapstructure:"value" cty:"value" hcl:"value"` Type *string `mapstructure:"type" cty:"type" hcl:"type"` }
FlatArtifactParameter is an auto-generated flat version of ArtifactParameter. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
func (*FlatArtifactParameter) HCL2Spec ¶
func (*FlatArtifactParameter) HCL2Spec() map[string]hcldec.Spec
HCL2Spec returns the hcl spec of a ArtifactParameter. This spec is used by HCL to read the fields of ArtifactParameter. The decoded values from this spec will then be applied to a FlatArtifactParameter.
type FlatConfig ¶
type FlatConfig struct { PackerBuildName *string `mapstructure:"packer_build_name" cty:"packer_build_name" hcl:"packer_build_name"` PackerBuilderType *string `mapstructure:"packer_builder_type" cty:"packer_builder_type" hcl:"packer_builder_type"` PackerCoreVersion *string `mapstructure:"packer_core_version" cty:"packer_core_version" hcl:"packer_core_version"` PackerDebug *bool `mapstructure:"packer_debug" cty:"packer_debug" hcl:"packer_debug"` PackerForce *bool `mapstructure:"packer_force" cty:"packer_force" hcl:"packer_force"` PackerOnError *string `mapstructure:"packer_on_error" cty:"packer_on_error" hcl:"packer_on_error"` PackerUserVars map[string]string `mapstructure:"packer_user_variables" cty:"packer_user_variables" hcl:"packer_user_variables"` PackerSensitiveVars []string `mapstructure:"packer_sensitive_variables" cty:"packer_sensitive_variables" hcl:"packer_sensitive_variables"` CloudEnvironmentName *string `mapstructure:"cloud_environment_name" required:"false" cty:"cloud_environment_name" hcl:"cloud_environment_name"` MetadataHost *string `mapstructure:"metadata_host" required:"false" cty:"metadata_host" hcl:"metadata_host"` ClientID *string `mapstructure:"client_id" cty:"client_id" hcl:"client_id"` ClientSecret *string `mapstructure:"client_secret" cty:"client_secret" hcl:"client_secret"` ClientCertPath *string `mapstructure:"client_cert_path" cty:"client_cert_path" hcl:"client_cert_path"` ClientCertExpireTimeout *string `mapstructure:"client_cert_token_timeout" required:"false" cty:"client_cert_token_timeout" hcl:"client_cert_token_timeout"` ClientJWT *string `mapstructure:"client_jwt" cty:"client_jwt" hcl:"client_jwt"` ObjectID *string `mapstructure:"object_id" cty:"object_id" hcl:"object_id"` TenantID *string `mapstructure:"tenant_id" required:"false" cty:"tenant_id" hcl:"tenant_id"` SubscriptionID *string `mapstructure:"subscription_id" cty:"subscription_id" hcl:"subscription_id"` UseAzureCLIAuth *bool `mapstructure:"use_azure_cli_auth" required:"false" cty:"use_azure_cli_auth" hcl:"use_azure_cli_auth"` DtlArtifacts []FlatDtlArtifact `mapstructure:"dtl_artifacts" required:"true" cty:"dtl_artifacts" hcl:"dtl_artifacts"` LabName *string `mapstructure:"lab_name" required:"true" cty:"lab_name" hcl:"lab_name"` ResourceGroupName *string `mapstructure:"lab_resource_group_name" required:"true" cty:"lab_resource_group_name" hcl:"lab_resource_group_name"` VMName *string `mapstructure:"vm_name" required:"true" cty:"vm_name" hcl:"vm_name"` PollingDurationTimeout *string `mapstructure:"polling_duration_timeout" required:"false" cty:"polling_duration_timeout" hcl:"polling_duration_timeout"` AzureTags map[string]*string `mapstructure:"azure_tags" cty:"azure_tags" hcl:"azure_tags"` Json map[string]interface{} `cty:"json" hcl:"json"` }
FlatConfig is an auto-generated flat version of Config. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type FlatDtlArtifact ¶
type FlatDtlArtifact struct { ArtifactName *string `mapstructure:"artifact_name" cty:"artifact_name" hcl:"artifact_name"` ArtifactId *string `mapstructure:"artifact_id" cty:"artifact_id" hcl:"artifact_id"` Parameters []FlatArtifactParameter `mapstructure:"parameters" cty:"parameters" hcl:"parameters"` }
FlatDtlArtifact is an auto-generated flat version of DtlArtifact. Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type Provisioner ¶
type Provisioner struct {
// contains filtered or unexported fields
}
func (*Provisioner) Communicator ¶
func (p *Provisioner) Communicator() packersdk.Communicator
func (*Provisioner) ConfigSpec ¶
func (p *Provisioner) ConfigSpec() hcldec.ObjectSpec
func (*Provisioner) Prepare ¶
func (p *Provisioner) Prepare(raws ...interface{}) error