github.com/hashicorp/packer@v1.14.3/post-processor/manifest/post-processor.hcl2spec.go (about) 1 // Code generated by "packer-sdc mapstructure-to-hcl2"; DO NOT EDIT. 2 3 package manifest 4 5 import ( 6 "github.com/hashicorp/hcl/v2/hcldec" 7 "github.com/zclconf/go-cty/cty" 8 ) 9 10 // FlatConfig is an auto-generated flat version of Config. 11 // Where the contents of a field with a `mapstructure:,squash` tag are bubbled up. 12 type FlatConfig struct { 13 PackerBuildName *string `mapstructure:"packer_build_name" cty:"packer_build_name" hcl:"packer_build_name"` 14 PackerBuilderType *string `mapstructure:"packer_builder_type" cty:"packer_builder_type" hcl:"packer_builder_type"` 15 PackerCoreVersion *string `mapstructure:"packer_core_version" cty:"packer_core_version" hcl:"packer_core_version"` 16 PackerDebug *bool `mapstructure:"packer_debug" cty:"packer_debug" hcl:"packer_debug"` 17 PackerForce *bool `mapstructure:"packer_force" cty:"packer_force" hcl:"packer_force"` 18 PackerOnError *string `mapstructure:"packer_on_error" cty:"packer_on_error" hcl:"packer_on_error"` 19 PackerUserVars map[string]string `mapstructure:"packer_user_variables" cty:"packer_user_variables" hcl:"packer_user_variables"` 20 PackerSensitiveVars []string `mapstructure:"packer_sensitive_variables" cty:"packer_sensitive_variables" hcl:"packer_sensitive_variables"` 21 OutputPath *string `mapstructure:"output" cty:"output" hcl:"output"` 22 StripPath *bool `mapstructure:"strip_path" cty:"strip_path" hcl:"strip_path"` 23 StripTime *bool `mapstructure:"strip_time" cty:"strip_time" hcl:"strip_time"` 24 CustomData map[string]string `mapstructure:"custom_data" cty:"custom_data" hcl:"custom_data"` 25 } 26 27 // FlatMapstructure returns a new FlatConfig. 28 // FlatConfig is an auto-generated flat version of Config. 29 // Where the contents a fields with a `mapstructure:,squash` tag are bubbled up. 30 func (*Config) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } { 31 return new(FlatConfig) 32 } 33 34 // HCL2Spec returns the hcl spec of a Config. 35 // This spec is used by HCL to read the fields of Config. 36 // The decoded values from this spec will then be applied to a FlatConfig. 37 func (*FlatConfig) HCL2Spec() map[string]hcldec.Spec { 38 s := map[string]hcldec.Spec{ 39 "packer_build_name": &hcldec.AttrSpec{Name: "packer_build_name", Type: cty.String, Required: false}, 40 "packer_builder_type": &hcldec.AttrSpec{Name: "packer_builder_type", Type: cty.String, Required: false}, 41 "packer_core_version": &hcldec.AttrSpec{Name: "packer_core_version", Type: cty.String, Required: false}, 42 "packer_debug": &hcldec.AttrSpec{Name: "packer_debug", Type: cty.Bool, Required: false}, 43 "packer_force": &hcldec.AttrSpec{Name: "packer_force", Type: cty.Bool, Required: false}, 44 "packer_on_error": &hcldec.AttrSpec{Name: "packer_on_error", Type: cty.String, Required: false}, 45 "packer_user_variables": &hcldec.AttrSpec{Name: "packer_user_variables", Type: cty.Map(cty.String), Required: false}, 46 "packer_sensitive_variables": &hcldec.AttrSpec{Name: "packer_sensitive_variables", Type: cty.List(cty.String), Required: false}, 47 "output": &hcldec.AttrSpec{Name: "output", Type: cty.String, Required: false}, 48 "strip_path": &hcldec.AttrSpec{Name: "strip_path", Type: cty.Bool, Required: false}, 49 "strip_time": &hcldec.AttrSpec{Name: "strip_time", Type: cty.Bool, Required: false}, 50 "custom_data": &hcldec.AttrSpec{Name: "custom_data", Type: cty.Map(cty.String), Required: false}, 51 } 52 return s 53 }