packer-cn/builder/vsphere/common/step_export.hcl2spec.go
jhawk28 99b0b98311
Add ovf export capability to vsphere builders (#8764)
* add ovf export capability to vsphere builders

* remove unneeded floppy ejection

* add prepare step for export. updated output directory to be the actual destination directory

* add step export documentation

* add extra export options

* add ui messages for export step

Co-authored-by: Megan Marsh <megan@hashicorp.com>
Co-authored-by: Wilken Rivera <dev@wilkenrivera.com>
2020-03-19 13:51:43 -04:00

41 lines
1.9 KiB
Go

// Code generated by "mapstructure-to-hcl2 -type ExportConfig"; DO NOT EDIT.
package common
import (
"github.com/hashicorp/hcl/v2/hcldec"
"github.com/zclconf/go-cty/cty"
)
// FlatExportConfig is an auto-generated flat version of ExportConfig.
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
type FlatExportConfig struct {
Name *string `mapstructure:"name" cty:"name"`
Force *bool `mapstructure:"force" cty:"force"`
Images *bool `mapstructure:"images" cty:"images"`
Manifest *string `mapstructure:"manifest" cty:"manifest"`
OutputDir *string `mapstructure:"output_directory" required:"false" cty:"output_directory"`
Options []string `mapstructure:"options" cty:"options"`
}
// FlatMapstructure returns a new FlatExportConfig.
// FlatExportConfig is an auto-generated flat version of ExportConfig.
// Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
func (*ExportConfig) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } {
return new(FlatExportConfig)
}
// HCL2Spec returns the hcl spec of a ExportConfig.
// This spec is used by HCL to read the fields of ExportConfig.
// The decoded values from this spec will then be applied to a FlatExportConfig.
func (*FlatExportConfig) HCL2Spec() map[string]hcldec.Spec {
s := map[string]hcldec.Spec{
"name": &hcldec.AttrSpec{Name: "name", Type: cty.String, Required: false},
"force": &hcldec.AttrSpec{Name: "force", Type: cty.Bool, Required: false},
"images": &hcldec.AttrSpec{Name: "images", Type: cty.Bool, Required: false},
"manifest": &hcldec.AttrSpec{Name: "manifest", Type: cty.String, Required: false},
"output_directory": &hcldec.AttrSpec{Name: "output_directory", Type: cty.String, Required: false},
"options": &hcldec.AttrSpec{Name: "options", Type: cty.List(cty.String), Required: false},
}
return s
}