155 lines
8.7 KiB
Go
155 lines
8.7 KiB
Go
// Code generated by "mapstructure-to-hcl2 -type CustomizeConfig,LinuxOptions,NetworkInterfaces,NetworkInterface,GlobalDnsSettings,GlobalRoutingSettings"; DO NOT EDIT.
|
|
package clone
|
|
|
|
import (
|
|
"github.com/hashicorp/hcl/v2/hcldec"
|
|
"github.com/zclconf/go-cty/cty"
|
|
)
|
|
|
|
// FlatCustomizeConfig is an auto-generated flat version of CustomizeConfig.
|
|
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
|
type FlatCustomizeConfig struct {
|
|
LinuxOptions *FlatLinuxOptions `mapstructure:"linux_options" cty:"linux_options" hcl:"linux_options"`
|
|
WindowsSysPrepFile *string `mapstructure:"windows_sysprep_file" cty:"windows_sysprep_file" hcl:"windows_sysprep_file"`
|
|
NetworkInterfaces []FlatNetworkInterface `mapstructure:"network_interface" cty:"network_interface" hcl:"network_interface"`
|
|
Ipv4Gateway *string `mapstructure:"ipv4_gateway" cty:"ipv4_gateway" hcl:"ipv4_gateway"`
|
|
Ipv6Gateway *string `mapstructure:"ipv6_gateway" cty:"ipv6_gateway" hcl:"ipv6_gateway"`
|
|
DnsServerList []string `mapstructure:"dns_server_list" cty:"dns_server_list" hcl:"dns_server_list"`
|
|
DnsSuffixList []string `mapstructure:"dns_suffix_list" cty:"dns_suffix_list" hcl:"dns_suffix_list"`
|
|
}
|
|
|
|
// FlatMapstructure returns a new FlatCustomizeConfig.
|
|
// FlatCustomizeConfig is an auto-generated flat version of CustomizeConfig.
|
|
// Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
|
|
func (*CustomizeConfig) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } {
|
|
return new(FlatCustomizeConfig)
|
|
}
|
|
|
|
// HCL2Spec returns the hcl spec of a CustomizeConfig.
|
|
// This spec is used by HCL to read the fields of CustomizeConfig.
|
|
// The decoded values from this spec will then be applied to a FlatCustomizeConfig.
|
|
func (*FlatCustomizeConfig) HCL2Spec() map[string]hcldec.Spec {
|
|
s := map[string]hcldec.Spec{
|
|
"linux_options": &hcldec.BlockSpec{TypeName: "linux_options", Nested: hcldec.ObjectSpec((*FlatLinuxOptions)(nil).HCL2Spec())},
|
|
"windows_sysprep_file": &hcldec.AttrSpec{Name: "windows_sysprep_file", Type: cty.String, Required: false},
|
|
"network_interface": &hcldec.BlockListSpec{TypeName: "network_interface", Nested: hcldec.ObjectSpec((*FlatNetworkInterface)(nil).HCL2Spec())},
|
|
"ipv4_gateway": &hcldec.AttrSpec{Name: "ipv4_gateway", Type: cty.String, Required: false},
|
|
"ipv6_gateway": &hcldec.AttrSpec{Name: "ipv6_gateway", Type: cty.String, Required: false},
|
|
"dns_server_list": &hcldec.AttrSpec{Name: "dns_server_list", Type: cty.List(cty.String), Required: false},
|
|
"dns_suffix_list": &hcldec.AttrSpec{Name: "dns_suffix_list", Type: cty.List(cty.String), Required: false},
|
|
}
|
|
return s
|
|
}
|
|
|
|
// FlatGlobalDnsSettings is an auto-generated flat version of GlobalDnsSettings.
|
|
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
|
type FlatGlobalDnsSettings struct {
|
|
DnsServerList []string `mapstructure:"dns_server_list" cty:"dns_server_list" hcl:"dns_server_list"`
|
|
DnsSuffixList []string `mapstructure:"dns_suffix_list" cty:"dns_suffix_list" hcl:"dns_suffix_list"`
|
|
}
|
|
|
|
// FlatMapstructure returns a new FlatGlobalDnsSettings.
|
|
// FlatGlobalDnsSettings is an auto-generated flat version of GlobalDnsSettings.
|
|
// Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
|
|
func (*GlobalDnsSettings) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } {
|
|
return new(FlatGlobalDnsSettings)
|
|
}
|
|
|
|
// HCL2Spec returns the hcl spec of a GlobalDnsSettings.
|
|
// This spec is used by HCL to read the fields of GlobalDnsSettings.
|
|
// The decoded values from this spec will then be applied to a FlatGlobalDnsSettings.
|
|
func (*FlatGlobalDnsSettings) HCL2Spec() map[string]hcldec.Spec {
|
|
s := map[string]hcldec.Spec{
|
|
"dns_server_list": &hcldec.AttrSpec{Name: "dns_server_list", Type: cty.List(cty.String), Required: false},
|
|
"dns_suffix_list": &hcldec.AttrSpec{Name: "dns_suffix_list", Type: cty.List(cty.String), Required: false},
|
|
}
|
|
return s
|
|
}
|
|
|
|
// FlatGlobalRoutingSettings is an auto-generated flat version of GlobalRoutingSettings.
|
|
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
|
type FlatGlobalRoutingSettings struct {
|
|
Ipv4Gateway *string `mapstructure:"ipv4_gateway" cty:"ipv4_gateway" hcl:"ipv4_gateway"`
|
|
Ipv6Gateway *string `mapstructure:"ipv6_gateway" cty:"ipv6_gateway" hcl:"ipv6_gateway"`
|
|
}
|
|
|
|
// FlatMapstructure returns a new FlatGlobalRoutingSettings.
|
|
// FlatGlobalRoutingSettings is an auto-generated flat version of GlobalRoutingSettings.
|
|
// Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
|
|
func (*GlobalRoutingSettings) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } {
|
|
return new(FlatGlobalRoutingSettings)
|
|
}
|
|
|
|
// HCL2Spec returns the hcl spec of a GlobalRoutingSettings.
|
|
// This spec is used by HCL to read the fields of GlobalRoutingSettings.
|
|
// The decoded values from this spec will then be applied to a FlatGlobalRoutingSettings.
|
|
func (*FlatGlobalRoutingSettings) HCL2Spec() map[string]hcldec.Spec {
|
|
s := map[string]hcldec.Spec{
|
|
"ipv4_gateway": &hcldec.AttrSpec{Name: "ipv4_gateway", Type: cty.String, Required: false},
|
|
"ipv6_gateway": &hcldec.AttrSpec{Name: "ipv6_gateway", Type: cty.String, Required: false},
|
|
}
|
|
return s
|
|
}
|
|
|
|
// FlatLinuxOptions is an auto-generated flat version of LinuxOptions.
|
|
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
|
type FlatLinuxOptions struct {
|
|
Domain *string `mapstructure:"domain" cty:"domain" hcl:"domain"`
|
|
Hostname *string `mapstructure:"host_name" cty:"host_name" hcl:"host_name"`
|
|
HWClockUTC *bool `mapstructure:"hw_clock_utc" cty:"hw_clock_utc" hcl:"hw_clock_utc"`
|
|
Timezone *string `mapstructure:"time_zone" cty:"time_zone" hcl:"time_zone"`
|
|
}
|
|
|
|
// FlatMapstructure returns a new FlatLinuxOptions.
|
|
// FlatLinuxOptions is an auto-generated flat version of LinuxOptions.
|
|
// Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
|
|
func (*LinuxOptions) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } {
|
|
return new(FlatLinuxOptions)
|
|
}
|
|
|
|
// HCL2Spec returns the hcl spec of a LinuxOptions.
|
|
// This spec is used by HCL to read the fields of LinuxOptions.
|
|
// The decoded values from this spec will then be applied to a FlatLinuxOptions.
|
|
func (*FlatLinuxOptions) HCL2Spec() map[string]hcldec.Spec {
|
|
s := map[string]hcldec.Spec{
|
|
"domain": &hcldec.AttrSpec{Name: "domain", Type: cty.String, Required: false},
|
|
"host_name": &hcldec.AttrSpec{Name: "host_name", Type: cty.String, Required: false},
|
|
"hw_clock_utc": &hcldec.AttrSpec{Name: "hw_clock_utc", Type: cty.Bool, Required: false},
|
|
"time_zone": &hcldec.AttrSpec{Name: "time_zone", Type: cty.String, Required: false},
|
|
}
|
|
return s
|
|
}
|
|
|
|
// FlatNetworkInterface is an auto-generated flat version of NetworkInterface.
|
|
// Where the contents of a field with a `mapstructure:,squash` tag are bubbled up.
|
|
type FlatNetworkInterface struct {
|
|
DnsServerList []string `mapstructure:"dns_server_list" cty:"dns_server_list" hcl:"dns_server_list"`
|
|
DnsDomain *string `mapstructure:"dns_domain" cty:"dns_domain" hcl:"dns_domain"`
|
|
Ipv4Address *string `mapstructure:"ipv4_address" cty:"ipv4_address" hcl:"ipv4_address"`
|
|
Ipv4NetMask *int `mapstructure:"ipv4_netmask" cty:"ipv4_netmask" hcl:"ipv4_netmask"`
|
|
Ipv6Address *string `mapstructure:"ipv6_address" cty:"ipv6_address" hcl:"ipv6_address"`
|
|
Ipv6NetMask *int `mapstructure:"ipv6_netmask" cty:"ipv6_netmask" hcl:"ipv6_netmask"`
|
|
}
|
|
|
|
// FlatMapstructure returns a new FlatNetworkInterface.
|
|
// FlatNetworkInterface is an auto-generated flat version of NetworkInterface.
|
|
// Where the contents a fields with a `mapstructure:,squash` tag are bubbled up.
|
|
func (*NetworkInterface) FlatMapstructure() interface{ HCL2Spec() map[string]hcldec.Spec } {
|
|
return new(FlatNetworkInterface)
|
|
}
|
|
|
|
// HCL2Spec returns the hcl spec of a NetworkInterface.
|
|
// This spec is used by HCL to read the fields of NetworkInterface.
|
|
// The decoded values from this spec will then be applied to a FlatNetworkInterface.
|
|
func (*FlatNetworkInterface) HCL2Spec() map[string]hcldec.Spec {
|
|
s := map[string]hcldec.Spec{
|
|
"dns_server_list": &hcldec.AttrSpec{Name: "dns_server_list", Type: cty.List(cty.String), Required: false},
|
|
"dns_domain": &hcldec.AttrSpec{Name: "dns_domain", Type: cty.String, Required: false},
|
|
"ipv4_address": &hcldec.AttrSpec{Name: "ipv4_address", Type: cty.String, Required: false},
|
|
"ipv4_netmask": &hcldec.AttrSpec{Name: "ipv4_netmask", Type: cty.Number, Required: false},
|
|
"ipv6_address": &hcldec.AttrSpec{Name: "ipv6_address", Type: cty.String, Required: false},
|
|
"ipv6_netmask": &hcldec.AttrSpec{Name: "ipv6_netmask", Type: cty.Number, Required: false},
|
|
}
|
|
return s
|
|
}
|