config

package
v0.0.0-...-6fe2522 Latest Latest
Warning

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

Go to latest
Published: Oct 3, 2023 License: Apache-2.0 Imports: 44 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ExternalNameConfigs = map[string]config.ExternalName{

	"vsphere_license":          config.IdentifierFromProvider,
	"vsphere_datacenter":       config.NameAsIdentifier,
	"vsphere_host":             config.IdentifierFromProvider,
	"vsphere_custom_attribute": config.NameAsIdentifier,
	"vsphere_folder":           config.IdentifierFromProvider,
	"vsphere_content_library":  config.IdentifierFromProvider,
	"vsphere_tag_category":     config.NameAsIdentifier,
	"vsphere_tag":              config.IdentifierFromProvider,

	"vsphere_host_virtual_switch": config.TemplatedStringAsIdentifier("name", "tf-HostVirtualSwitch:{{ .parameter.host_system_id }}:{{ .externalName }}"),
	"vsphere_host_port_group":     config.TemplatedStringAsIdentifier("name", "tf-HostPortGroup:{{ .parameter.host_system_id }}:{{ .externalName }}"),

	"vsphere_distributed_virtual_switch": config.NameAsIdentifier,
	"vsphere_distributed_port_group":     config.NameAsIdentifier,
	"vsphere_vnic":                       config.IdentifierFromProvider,
	"vsphere_role":                       config.IdentifierFromProvider,
	"vsphere_entity_permissions":         config.IdentifierFromProvider,
	"vsphere_vmfs_datastore":             config.IdentifierFromProvider,
	"vsphere_nas_datastore":              config.IdentifierFromProvider,
	"vsphere_file":                       config.IdentifierFromProvider,
	"vsphere_vm_storage_policy":          config.IdentifierFromProvider,
	"vsphere_datastore_cluster":          config.TemplatedStringAsIdentifier("name", "/{{ .parameter.datacenter_id }}/datastore/{{ .externalName }}"),

	"vsphere_compute_cluster":                         config.IdentifierFromProvider,
	"vsphere_resource_pool":                           config.IdentifierFromProvider,
	"vsphere_virtual_disk":                            config.ParameterAsIdentifier("vmdk_path"),
	"vsphere_vapp_entity":                             config.IdentifierFromProvider,
	"vsphere_virtual_machine":                         config.TemplatedStringAsIdentifier("name", "/{{ .parameter.datacenter_id }}/vm/{{ .externalName }}"),
	"vsphere_virtual_machine_snapshot":                config.IdentifierFromProvider,
	"vsphere_vapp_container":                          config.IdentifierFromProvider,
	"vsphere_content_library_item":                    config.IdentifierFromProvider,
	"vsphere_compute_cluster_host_group":              config.IdentifierFromProvider,
	"vsphere_compute_cluster_vm_affinity_rule":        config.IdentifierFromProvider,
	"vsphere_compute_cluster_vm_anti_affinity_rule":   config.IdentifierFromProvider,
	"vsphere_compute_cluster_vm_dependency_rule":      config.IdentifierFromProvider,
	"vsphere_compute_cluster_vm_group":                config.IdentifierFromProvider,
	"vsphere_compute_cluster_vm_host_rule":            config.IdentifierFromProvider,
	"vsphere_dpm_host_override":                       config.IdentifierFromProvider,
	"vsphere_drs_vm_override":                         config.IdentifierFromProvider,
	"vsphere_ha_vm_override":                          config.IdentifierFromProvider,
	"vsphere_datastore_cluster_vm_anti_affinity_rule": config.IdentifierFromProvider,
	"vsphere_storage_drs_vm_override":                 config.IdentifierFromProvider,
}

ExternalNameConfigs contains all external name configurations for this provider.

Functions

func ExternalNameConfigurations

func ExternalNameConfigurations() config.ResourceOption

ExternalNameConfigurations applies all external name configs listed in the table ExternalNameConfigs and sets the version of those resources to v1beta1 assuming they will be tested.

func ExternalNameConfigured

func ExternalNameConfigured() []string

ExternalNameConfigured returns the list of all resources whose external name is configured manually.

func FormattedIdentifierFromProvider

func FormattedIdentifierFromProvider(separator string, keys ...string) config.ExternalName

FormattedIdentifierFromProvider is a helper function to construct Terraform IDs that use elements from the parameters in a certain string format. It should be used in cases where all information in the ID is gathered from the spec and not user defined like name. For example, zone_id:vpc_id.

func FormattedIdentifierUserDefined

func FormattedIdentifierUserDefined(param, separator string, keys ...string) config.ExternalName

FormattedIdentifierUserDefined is used in cases where the ID is constructed using some of the spec fields as well as a field that users use to name the resource. For example, vpc_id:cluster_name where vpc_id comes from spec but cluster_name is a naming field we can use external name for.

func GetProvider

func GetProvider() *ujconfig.Provider

GetProvider returns provider configuration

func TemplatedStringAsIdentifierWithNoName

func TemplatedStringAsIdentifierWithNoName(tmpl string) config.ExternalName

TemplatedStringAsIdentifierWithNoName uses TemplatedStringAsIdentifier but without the name initializer. This allows it to be used in cases where the ID is constructed with parameters and a provider-defined value, meaning no user-defined input. Since the external name is not user-defined, the name initializer has to be disabled.

Types

This section is empty.

Jump to

Keyboard shortcuts

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