tfplan2cai/converters/google/resources/services/container/container.go (1,382 lines of code) (raw):
// This file is written manually and is not based from terraform-provider-google.
// There is a huge potential for drift. The longer term plan is to have this
// file generated from the logic in terraform-provider-google. Please
// see https://github.com/GoogleCloudPlatform/magic-modules/pull/2485#issuecomment-545680059
// for the discussion.
package container
import (
"fmt"
"reflect"
"github.com/GoogleCloudPlatform/terraform-google-conversion/v6/tfplan2cai/converters/google/resources/cai"
"github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
"github.com/hashicorp/terraform-provider-google-beta/google-beta/tpgresource"
transport_tpg "github.com/hashicorp/terraform-provider-google-beta/google-beta/transport"
)
const ContainerClusterAssetType string = "container.googleapis.com/Cluster"
const ContainerNodePoolAssetType string = "container.googleapis.com/NodePool"
func ResourceConverterContainerCluster() cai.ResourceConverter {
return cai.ResourceConverter{
AssetType: ContainerClusterAssetType,
Convert: GetContainerClusterCaiObject,
}
}
func ResourceConverterContainerNodePool() cai.ResourceConverter {
return cai.ResourceConverter{
AssetType: ContainerNodePoolAssetType,
Convert: GetContainerNodePoolCaiObject,
}
}
func expandContainerEnabledObject(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
if val := reflect.ValueOf(v); !val.IsValid() || tpgresource.IsEmptyValue(val) {
return nil, nil
}
transformed := map[string]interface{}{
"enabled": v,
}
return transformed, nil
}
func expandContainerClusterEnableLegacyAbac(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return expandContainerEnabledObject(v, d, config)
}
func expandContainerMaxPodsConstraint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
if val := reflect.ValueOf(v); !val.IsValid() || tpgresource.IsEmptyValue(val) {
return nil, nil
}
transformed := map[string]interface{}{
"maxPodsPerNode": v,
}
return transformed, nil
}
func expandContainerClusterDefaultMaxPodsPerNode(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return expandContainerMaxPodsConstraint(v, d, config)
}
func expandContainerNodePoolMaxPodsPerNode(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return expandContainerMaxPodsConstraint(v, d, config)
}
func expandContainerClusterNetwork(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
fv, err := tpgresource.ParseNetworkFieldValue(v.(string), d, config)
if err != nil {
return nil, err
}
return fv.RelativeLink(), nil
}
func expandContainerClusterSubnetwork(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
fv, err := tpgresource.ParseNetworkFieldValue(v.(string), d, config)
if err != nil {
return nil, err
}
return fv.RelativeLink(), nil
}
func canonicalizeServiceScopesFromSet(scopesSet *schema.Set) (interface{}, error) {
scopes := make([]string, scopesSet.Len())
for i, scope := range scopesSet.List() {
scopes[i] = tpgresource.CanonicalizeServiceScope(scope.(string))
}
return scopes, nil
}
func expandContainerClusterNodeConfigOauthScopes(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
scopesSet := v.(*schema.Set)
return canonicalizeServiceScopesFromSet(scopesSet)
}
func expandContainerNodePoolNodeConfigOauthScopes(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
scopesSet := v.(*schema.Set)
return canonicalizeServiceScopesFromSet(scopesSet)
}
func GetContainerClusterCaiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) ([]cai.Asset, error) {
name, err := cai.AssetName(d, config, "//container.googleapis.com/projects/{{project}}/locations/{{location}}/clusters/{{name}}")
if err != nil {
return []cai.Asset{}, err
}
if obj, err := GetContainerClusterApiObject(d, config); err == nil {
return []cai.Asset{{
Name: name,
Type: ContainerClusterAssetType,
Resource: &cai.AssetResource{
Version: "v1",
DiscoveryDocumentURI: "https://www.googleapis.com/discovery/v1/apis/container/v1/rest",
DiscoveryName: "Cluster",
Data: obj,
},
}}, nil
} else {
return []cai.Asset{}, err
}
}
func GetContainerClusterApiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]interface{}, error) {
obj := make(map[string]interface{})
enableKubernetesAlphaProp, err := expandContainerClusterEnableKubernetesAlpha(d.Get("enable_kubernetes_alpha"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("enable_kubernetes_alpha"); !tpgresource.IsEmptyValue(reflect.ValueOf(enableKubernetesAlphaProp)) && (ok || !reflect.DeepEqual(v, enableKubernetesAlphaProp)) {
obj["enableKubernetesAlpha"] = enableKubernetesAlphaProp
}
nameProp, err := expandContainerClusterName(d.Get("name"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("name"); !tpgresource.IsEmptyValue(reflect.ValueOf(nameProp)) && (ok || !reflect.DeepEqual(v, nameProp)) {
obj["name"] = nameProp
}
descriptionProp, err := expandContainerClusterDescription(d.Get("description"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("description"); !tpgresource.IsEmptyValue(reflect.ValueOf(descriptionProp)) && (ok || !reflect.DeepEqual(v, descriptionProp)) {
obj["description"] = descriptionProp
}
initialNodeCountProp, err := expandContainerClusterInitialNodeCount(d.Get("initial_node_count"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("initial_node_count"); !tpgresource.IsEmptyValue(reflect.ValueOf(initialNodeCountProp)) && (ok || !reflect.DeepEqual(v, initialNodeCountProp)) {
obj["initialNodeCount"] = initialNodeCountProp
}
nodeConfigProp, err := expandContainerClusterNodeConfig(d.Get("node_config"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("node_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(nodeConfigProp)) && (ok || !reflect.DeepEqual(v, nodeConfigProp)) {
obj["nodeConfig"] = nodeConfigProp
}
masterAuthProp, err := expandContainerClusterMasterAuth(d.Get("master_auth"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("master_auth"); !tpgresource.IsEmptyValue(reflect.ValueOf(masterAuthProp)) && (ok || !reflect.DeepEqual(v, masterAuthProp)) {
obj["masterAuth"] = masterAuthProp
}
loggingServiceProp, err := expandContainerClusterLoggingService(d.Get("logging_service"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("logging_service"); !tpgresource.IsEmptyValue(reflect.ValueOf(loggingServiceProp)) && (ok || !reflect.DeepEqual(v, loggingServiceProp)) {
obj["loggingService"] = loggingServiceProp
}
monitoringServiceProp, err := expandContainerClusterMonitoringService(d.Get("monitoring_service"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("monitoring_service"); !tpgresource.IsEmptyValue(reflect.ValueOf(monitoringServiceProp)) && (ok || !reflect.DeepEqual(v, monitoringServiceProp)) {
obj["monitoringService"] = monitoringServiceProp
}
networkProp, err := expandContainerClusterNetwork(d.Get("network"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("network"); !tpgresource.IsEmptyValue(reflect.ValueOf(networkProp)) && (ok || !reflect.DeepEqual(v, networkProp)) {
obj["network"] = networkProp
}
privateClusterConfigProp, err := expandContainerClusterPrivateClusterConfig(d.Get("private_cluster_config"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("private_cluster_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(privateClusterConfigProp)) && (ok || !reflect.DeepEqual(v, privateClusterConfigProp)) {
obj["privateClusterConfig"] = privateClusterConfigProp
}
workloadIdentityConfigProp, err := expandContainerClusterWorkloadIdentityConfig(d.Get("workload_identity_config"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("workload_identity_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(workloadIdentityConfigProp)) && (ok || !reflect.DeepEqual(v, workloadIdentityConfigProp)) {
obj["workloadIdentityConfig"] = workloadIdentityConfigProp
}
clusterIpv4CidrProp, err := expandContainerClusterClusterIpv4Cidr(d.Get("cluster_ipv4_cidr"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("cluster_ipv4_cidr"); !tpgresource.IsEmptyValue(reflect.ValueOf(clusterIpv4CidrProp)) && (ok || !reflect.DeepEqual(v, clusterIpv4CidrProp)) {
obj["clusterIpv4Cidr"] = clusterIpv4CidrProp
}
addonsConfigProp, err := expandContainerClusterAddonsConfig(d.Get("addons_config"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("addons_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(addonsConfigProp)) && (ok || !reflect.DeepEqual(v, addonsConfigProp)) {
obj["addonsConfig"] = addonsConfigProp
}
subnetworkProp, err := expandContainerClusterSubnetwork(d.Get("subnetwork"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("subnetwork"); !tpgresource.IsEmptyValue(reflect.ValueOf(subnetworkProp)) && (ok || !reflect.DeepEqual(v, subnetworkProp)) {
obj["subnetwork"] = subnetworkProp
}
locationsProp, err := expandContainerClusterNodeLocations(d.Get("node_locations"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("node_locations"); !tpgresource.IsEmptyValue(reflect.ValueOf(locationsProp)) && (ok || !reflect.DeepEqual(v, locationsProp)) {
obj["locations"] = locationsProp
}
resourceLabelsProp, err := expandContainerClusterResourceLabels(d.Get("resource_labels"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("resource_labels"); !tpgresource.IsEmptyValue(reflect.ValueOf(resourceLabelsProp)) && (ok || !reflect.DeepEqual(v, resourceLabelsProp)) {
obj["resourceLabels"] = resourceLabelsProp
}
labelFingerprintProp, err := expandContainerClusterLabelFingerprint(d.Get("label_fingerprint"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("label_fingerprint"); !tpgresource.IsEmptyValue(reflect.ValueOf(labelFingerprintProp)) && (ok || !reflect.DeepEqual(v, labelFingerprintProp)) {
obj["labelFingerprint"] = labelFingerprintProp
}
legacyAbacProp, err := expandContainerClusterEnableLegacyAbac(d.Get("enable_legacy_abac"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("enable_legacy_abac"); !tpgresource.IsEmptyValue(reflect.ValueOf(legacyAbacProp)) && (ok || !reflect.DeepEqual(v, legacyAbacProp)) {
obj["legacyAbac"] = legacyAbacProp
}
networkPolicyProp, err := expandContainerClusterNetworkPolicy(d.Get("network_policy"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("network_policy"); !tpgresource.IsEmptyValue(reflect.ValueOf(networkPolicyProp)) && (ok || !reflect.DeepEqual(v, networkPolicyProp)) {
obj["networkPolicy"] = networkPolicyProp
}
defaultMaxPodsConstraintProp, err := expandContainerClusterDefaultMaxPodsPerNode(d.Get("default_max_pods_per_node"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("default_max_pods_per_node"); !tpgresource.IsEmptyValue(reflect.ValueOf(defaultMaxPodsConstraintProp)) && (ok || !reflect.DeepEqual(v, defaultMaxPodsConstraintProp)) {
obj["defaultMaxPodsConstraint"] = defaultMaxPodsConstraintProp
}
ipAllocationPolicyProp, err := expandContainerClusterIpAllocationPolicy(d.Get("ip_allocation_policy"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("ip_allocation_policy"); !tpgresource.IsEmptyValue(reflect.ValueOf(ipAllocationPolicyProp)) && (ok || !reflect.DeepEqual(v, ipAllocationPolicyProp)) {
obj["ipAllocationPolicy"] = ipAllocationPolicyProp
}
initialClusterVersionProp, err := expandContainerClusterMinMasterVersion(d.Get("min_master_version"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("min_master_version"); !tpgresource.IsEmptyValue(reflect.ValueOf(initialClusterVersionProp)) && (ok || !reflect.DeepEqual(v, initialClusterVersionProp)) {
obj["initialClusterVersion"] = initialClusterVersionProp
}
enableTpuProp, err := expandContainerClusterEnableTpu(d.Get("enable_tpu"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("enable_tpu"); !tpgresource.IsEmptyValue(reflect.ValueOf(enableTpuProp)) && (ok || !reflect.DeepEqual(v, enableTpuProp)) {
obj["enableTpu"] = enableTpuProp
}
tpuIpv4CidrBlockProp, err := expandContainerClusterTPUIpv4CidrBlock(d.Get("tpu_ipv4_cidr_block"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("tpu_ipv4_cidr_block"); !tpgresource.IsEmptyValue(reflect.ValueOf(tpuIpv4CidrBlockProp)) && (ok || !reflect.DeepEqual(v, tpuIpv4CidrBlockProp)) {
obj["tpuIpv4CidrBlock"] = tpuIpv4CidrBlockProp
}
masterAuthorizedNetworksConfigProp, err := expandContainerClusterMasterAuthorizedNetworksConfig(d.Get("master_authorized_networks_config"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("master_authorized_networks_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(masterAuthorizedNetworksConfigProp)) && (ok || !reflect.DeepEqual(v, masterAuthorizedNetworksConfigProp)) {
obj["masterAuthorizedNetworksConfig"] = masterAuthorizedNetworksConfigProp
}
locationProp, err := expandContainerClusterLocation(d.Get("location"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("location"); !tpgresource.IsEmptyValue(reflect.ValueOf(locationProp)) && (ok || !reflect.DeepEqual(v, locationProp)) {
obj["location"] = locationProp
}
kubectlPathProp, err := expandContainerClusterKubectlPath(d.Get("kubectl_path"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("kubectl_path"); !tpgresource.IsEmptyValue(reflect.ValueOf(kubectlPathProp)) && (ok || !reflect.DeepEqual(v, kubectlPathProp)) {
obj["kubectlPath"] = kubectlPathProp
}
kubectlContextProp, err := expandContainerClusterKubectlContext(d.Get("kubectl_context"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("kubectl_context"); !tpgresource.IsEmptyValue(reflect.ValueOf(kubectlContextProp)) && (ok || !reflect.DeepEqual(v, kubectlContextProp)) {
obj["kubectlContext"] = kubectlContextProp
}
databaseEncryptionProp, err := expandContainerClusterDatabaseEncryption(d.Get("database_encryption"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("database_encryption"); !tpgresource.IsEmptyValue(reflect.ValueOf(databaseEncryptionProp)) && (ok || !reflect.DeepEqual(v, databaseEncryptionProp)) {
obj["databaseEncryption"] = databaseEncryptionProp
}
releaseChannelProp, err := expandContainerClusterReleaseChannel(d.Get("release_channel"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("release_channel"); !tpgresource.IsEmptyValue(reflect.ValueOf(releaseChannelProp)) && (ok || !reflect.DeepEqual(v, releaseChannelProp)) {
obj["releaseChannel"] = releaseChannelProp
}
return obj, nil
}
func expandContainerClusterEnableKubernetesAlpha(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterPodSecurityPolicyConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedEnabled, err := expandContainerClusterPodSecurityPolicyConfigEnabled(original["enabled"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["enabled"] = transformedEnabled
}
return transformed, nil
}
func expandContainerClusterPodSecurityPolicyConfigEnabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterDescription(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterInitialNodeCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedWorkloadMetadataConfig, err := expandContainerClusterNodeConfigWorkloadMetadataConfig(original["workload_metadata_config"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedWorkloadMetadataConfig); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["workloadMetadataConfig"] = transformedWorkloadMetadataConfig
}
transformedMachineType, err := expandContainerClusterNodeConfigMachineType(original["machine_type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMachineType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["machineType"] = transformedMachineType
}
transformedDiskSizeGb, err := expandContainerClusterNodeConfigDiskSizeGb(original["disk_size_gb"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDiskSizeGb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["diskSizeGb"] = transformedDiskSizeGb
}
transformedOauthScopes, err := expandContainerClusterNodeConfigOauthScopes(original["oauth_scopes"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedOauthScopes); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["oauthScopes"] = transformedOauthScopes
}
transformedServiceAccount, err := expandContainerClusterNodeConfigServiceAccount(original["service_account"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedServiceAccount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["serviceAccount"] = transformedServiceAccount
}
transformedMetadata, err := expandContainerClusterNodeConfigMetadata(original["metadata"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMetadata); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["metadata"] = transformedMetadata
}
transformedImageType, err := expandContainerClusterNodeConfigImageType(original["image_type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedImageType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["imageType"] = transformedImageType
}
transformedLabels, err := expandContainerClusterNodeConfigLabels(original["labels"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedLabels); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["labels"] = transformedLabels
}
transformedLocalSsdCount, err := expandContainerClusterNodeConfigLocalSsdCount(original["local_ssd_count"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedLocalSsdCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["localSsdCount"] = transformedLocalSsdCount
}
transformedTags, err := expandContainerClusterNodeConfigTags(original["tags"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedTags); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["tags"] = transformedTags
}
transformedPreemptible, err := expandContainerClusterNodeConfigPreemptible(original["preemptible"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedPreemptible); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["preemptible"] = transformedPreemptible
}
transformedGuestAccelerator, err := expandContainerClusterNodeConfigGuestAccelerator(original["guest_accelerator"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedGuestAccelerator); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["accelerators"] = transformedGuestAccelerator
}
transformedDiskType, err := expandContainerClusterNodeConfigDiskType(original["disk_type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDiskType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["diskType"] = transformedDiskType
}
transformedMinCpuPlatform, err := expandContainerClusterNodeConfigMinCpuPlatform(original["min_cpu_platform"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMinCpuPlatform); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["minCpuPlatform"] = transformedMinCpuPlatform
}
transformedTaint, err := expandContainerClusterNodeConfigTaint(original["taint"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedTaint); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["taints"] = transformedTaint
}
return transformed, nil
}
func expandContainerClusterNodeConfigWorkloadMetadataConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedMode, err := expandContainerClusterNodeConfigWorkloadMetadataConfigMode(original["mode"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMode); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["mode"] = transformedMode
}
return transformed, nil
}
func expandContainerClusterNodeConfigWorkloadMetadataConfigMode(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigMachineType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigDiskSizeGb(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigServiceAccount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigMetadata(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) {
if v == nil {
return map[string]string{}, nil
}
m := make(map[string]string)
for k, val := range v.(map[string]interface{}) {
m[k] = val.(string)
}
return m, nil
}
func expandContainerClusterNodeConfigImageType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigLabels(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) {
if v == nil {
return map[string]string{}, nil
}
m := make(map[string]string)
for k, val := range v.(map[string]interface{}) {
m[k] = val.(string)
}
return m, nil
}
func expandContainerClusterNodeConfigLocalSsdCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigTags(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigPreemptible(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigGuestAccelerator(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
req := make([]interface{}, 0, len(l))
for _, raw := range l {
if raw == nil {
continue
}
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedCount, err := expandContainerClusterNodeConfigGuestAcceleratorCount(original["count"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["acceleratorCount"] = transformedCount
}
transformedType, err := expandContainerClusterNodeConfigGuestAcceleratorType(original["type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["acceleratorType"] = transformedType
}
req = append(req, transformed)
}
return req, nil
}
func expandContainerClusterNodeConfigGuestAcceleratorCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigGuestAcceleratorType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigDiskType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigMinCpuPlatform(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigTaint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
req := make([]interface{}, 0, len(l))
for _, raw := range l {
if raw == nil {
continue
}
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedKey, err := expandContainerClusterNodeConfigTaintKey(original["key"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedKey); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["key"] = transformedKey
}
transformedValue, err := expandContainerClusterNodeConfigTaintValue(original["value"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedValue); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["value"] = transformedValue
}
transformedEffect, err := expandContainerClusterNodeConfigTaintEffect(original["effect"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEffect); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["effect"] = transformedEffect
}
req = append(req, transformed)
}
return req, nil
}
func expandContainerClusterNodeConfigTaintKey(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigTaintValue(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeConfigTaintEffect(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuth(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedUsername, err := expandContainerClusterMasterAuthUsername(original["username"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedUsername); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["username"] = transformedUsername
}
transformedPassword, err := expandContainerClusterMasterAuthPassword(original["password"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedPassword); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["password"] = transformedPassword
}
transformedClientCertificateConfig, err := expandContainerClusterMasterAuthClientCertificateConfig(original["client_certificate_config"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedClientCertificateConfig); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["clientCertificateConfig"] = transformedClientCertificateConfig
}
transformedClusterCaCertificate, err := expandContainerClusterMasterAuthClusterCaCertificate(original["cluster_ca_certificate"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedClusterCaCertificate); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["clusterCaCertificate"] = transformedClusterCaCertificate
}
transformedClientCertificate, err := expandContainerClusterMasterAuthClientCertificate(original["client_certificate"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedClientCertificate); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["clientCertificate"] = transformedClientCertificate
}
transformedClientKey, err := expandContainerClusterMasterAuthClientKey(original["client_key"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedClientKey); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["clientKey"] = transformedClientKey
}
return transformed, nil
}
func expandContainerClusterMasterAuthUsername(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthPassword(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthClientCertificateConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedIssueClientCertificate, err := expandContainerClusterMasterAuthClientCertificateConfigIssueClientCertificate(original["issue_client_certificate"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedIssueClientCertificate); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["issueClientCertificate"] = transformedIssueClientCertificate
}
return transformed, nil
}
func expandContainerClusterMasterAuthClientCertificateConfigIssueClientCertificate(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthClusterCaCertificate(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthClientCertificate(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthClientKey(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterLoggingService(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMonitoringService(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterWorkloadIdentityConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedWorkloadPool, err := expandContainerClusterWorkloadIdentityConfigWorkloadPool(original["workload_pool"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedWorkloadPool); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["workloadPool"] = transformedWorkloadPool
}
return transformed, nil
}
func expandContainerClusterWorkloadIdentityConfigWorkloadPool(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterPrivateClusterConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedEnablePrivateNodes, err := expandContainerClusterPrivateClusterConfigEnablePrivateNodes(original["enable_private_nodes"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEnablePrivateNodes); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["enablePrivateNodes"] = transformedEnablePrivateNodes
}
transformedEnablePrivateEndpoint, err := expandContainerClusterPrivateClusterConfigEnablePrivateEndpoint(original["enable_private_endpoint"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEnablePrivateEndpoint); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["enablePrivateEndpoint"] = transformedEnablePrivateEndpoint
}
transformedMasterIpv4CidrBlock, err := expandContainerClusterPrivateClusterConfigMasterIpv4CidrBlock(original["master_ipv4_cidr_block"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMasterIpv4CidrBlock); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["masterIpv4CidrBlock"] = transformedMasterIpv4CidrBlock
}
transformedPrivateEndpoint, err := expandContainerClusterPrivateClusterConfigPrivateEndpoint(original["private_endpoint"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedPrivateEndpoint); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["privateEndpoint"] = transformedPrivateEndpoint
}
transformedPublicEndpoint, err := expandContainerClusterPrivateClusterConfigPublicEndpoint(original["public_endpoint"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedPublicEndpoint); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["publicEndpoint"] = transformedPublicEndpoint
}
return transformed, nil
}
func expandContainerClusterPrivateClusterConfigEnablePrivateNodes(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterPrivateClusterConfigEnablePrivateEndpoint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterPrivateClusterConfigMasterIpv4CidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterPrivateClusterConfigPrivateEndpoint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterPrivateClusterConfigPublicEndpoint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterClusterIpv4Cidr(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterAddonsConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedHttpLoadBalancing, err := expandContainerClusterAddonsConfigHttpLoadBalancing(original["http_load_balancing"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedHttpLoadBalancing); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["httpLoadBalancing"] = transformedHttpLoadBalancing
}
transformedHorizontalPodAutoscaling, err := expandContainerClusterAddonsConfigHorizontalPodAutoscaling(original["horizontal_pod_autoscaling"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedHorizontalPodAutoscaling); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["horizontalPodAutoscaling"] = transformedHorizontalPodAutoscaling
}
transformedNetworkPolicyConfig, err := expandContainerClusterAddonsConfigNetworkPolicyConfig(original["network_policy_config"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedNetworkPolicyConfig); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["networkPolicyConfig"] = transformedNetworkPolicyConfig
}
return transformed, nil
}
func expandContainerClusterAddonsConfigHttpLoadBalancing(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedDisabled, err := expandContainerClusterAddonsConfigHttpLoadBalancingDisabled(original["disabled"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDisabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["disabled"] = transformedDisabled
}
return transformed, nil
}
func expandContainerClusterAddonsConfigHttpLoadBalancingDisabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterAddonsConfigHorizontalPodAutoscaling(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedDisabled, err := expandContainerClusterAddonsConfigHorizontalPodAutoscalingDisabled(original["disabled"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDisabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["disabled"] = transformedDisabled
}
return transformed, nil
}
func expandContainerClusterAddonsConfigHorizontalPodAutoscalingDisabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterAddonsConfigNetworkPolicyConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedDisabled, err := expandContainerClusterAddonsConfigNetworkPolicyConfigDisabled(original["disabled"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDisabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["disabled"] = transformedDisabled
}
return transformed, nil
}
func expandContainerClusterAddonsConfigNetworkPolicyConfigDisabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNodeLocations(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
v = v.(*schema.Set).List()
return v, nil
}
func expandContainerClusterResourceLabels(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) {
if v == nil {
return map[string]string{}, nil
}
m := make(map[string]string)
for k, val := range v.(map[string]interface{}) {
m[k] = val.(string)
}
return m, nil
}
func expandContainerClusterLabelFingerprint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNetworkPolicy(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedProvider, err := expandContainerClusterNetworkPolicyProvider(original["provider"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedProvider); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["provider"] = transformedProvider
}
transformedEnabled, err := expandContainerClusterNetworkPolicyEnabled(original["enabled"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["enabled"] = transformedEnabled
}
return transformed, nil
}
func expandContainerClusterNetworkPolicyProvider(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterNetworkPolicyEnabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicy(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedUseIpAliases, err := expandContainerClusterIpAllocationPolicyUseIpAliases(original["use_ip_aliases"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedUseIpAliases); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["useIpAliases"] = transformedUseIpAliases
}
transformedCreateSubnetwork, err := expandContainerClusterIpAllocationPolicyCreateSubnetwork(original["create_subnetwork"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedCreateSubnetwork); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["createSubnetwork"] = transformedCreateSubnetwork
}
transformedSubnetworkName, err := expandContainerClusterIpAllocationPolicySubnetworkName(original["subnetwork_name"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedSubnetworkName); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["subnetworkName"] = transformedSubnetworkName
}
transformedClusterSecondaryRangeName, err := expandContainerClusterIpAllocationPolicyClusterSecondaryRangeName(original["cluster_secondary_range_name"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedClusterSecondaryRangeName); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["clusterSecondaryRangeName"] = transformedClusterSecondaryRangeName
}
transformedServicesSecondaryRangeName, err := expandContainerClusterIpAllocationPolicyServicesSecondaryRangeName(original["services_secondary_range_name"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedServicesSecondaryRangeName); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["servicesSecondaryRangeName"] = transformedServicesSecondaryRangeName
}
transformedClusterIpv4CidrBlock, err := expandContainerClusterIpAllocationPolicyClusterIpv4CidrBlock(original["cluster_ipv4_cidr_block"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedClusterIpv4CidrBlock); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["clusterIpv4CidrBlock"] = transformedClusterIpv4CidrBlock
}
transformedNodeIpv4CidrBlock, err := expandContainerClusterIpAllocationPolicyNodeIpv4CidrBlock(original["node_ipv4_cidr_block"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedNodeIpv4CidrBlock); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["nodeIpv4CidrBlock"] = transformedNodeIpv4CidrBlock
}
transformedServicesIpv4CidrBlock, err := expandContainerClusterIpAllocationPolicyServicesIpv4CidrBlock(original["services_ipv4_cidr_block"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedServicesIpv4CidrBlock); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["servicesIpv4CidrBlock"] = transformedServicesIpv4CidrBlock
}
transformedTPUIpv4CidrBlock, err := expandContainerClusterIpAllocationPolicyTPUIpv4CidrBlock(original["tpu_ipv4_cidr_block"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedTPUIpv4CidrBlock); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["tpuIpv4CidrBlock"] = transformedTPUIpv4CidrBlock
}
return transformed, nil
}
func expandContainerClusterIpAllocationPolicyUseIpAliases(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyCreateSubnetwork(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicySubnetworkName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyClusterSecondaryRangeName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyServicesSecondaryRangeName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyClusterIpv4CidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyNodeIpv4CidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyServicesIpv4CidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterIpAllocationPolicyTPUIpv4CidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMinMasterVersion(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterEnableTpu(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterTPUIpv4CidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthorizedNetworksConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
// enabled is always true as long as there is a master_authorized_networks_config config block.
// There is no option in Terraform to disable that when master_authorized_networks_config is seen.
transformed["enabled"] = true
transformedCidrBlocks, err := expandContainerClusterMasterAuthorizedNetworksConfigCidrBlocks(original["cidr_blocks"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedCidrBlocks); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["cidrBlocks"] = transformedCidrBlocks
}
return transformed, nil
}
func expandContainerClusterMasterAuthorizedNetworksConfigCidrBlocks(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
v = v.(*schema.Set).List()
l := v.([]interface{})
req := make([]interface{}, 0, len(l))
for _, raw := range l {
if raw == nil {
continue
}
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedDisplayName, err := expandContainerClusterMasterAuthorizedNetworksConfigCidrBlocksDisplayName(original["display_name"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDisplayName); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["displayName"] = transformedDisplayName
}
transformedCidrBlock, err := expandContainerClusterMasterAuthorizedNetworksConfigCidrBlocksCidrBlock(original["cidr_block"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedCidrBlock); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["cidrBlock"] = transformedCidrBlock
}
req = append(req, transformed)
}
return req, nil
}
func expandContainerClusterMasterAuthorizedNetworksConfigCidrBlocksDisplayName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterMasterAuthorizedNetworksConfigCidrBlocksCidrBlock(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterLocation(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterKubectlPath(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterKubectlContext(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterDatabaseEncryption(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerClusterReleaseChannel(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func GetContainerNodePoolCaiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) ([]cai.Asset, error) {
name, err := cai.AssetName(d, config, "//container.googleapis.com/projects/{{project}}/locations/{{location}}/clusters/{{cluster}}/nodePools/{{name}}")
if err != nil {
return []cai.Asset{}, err
}
if obj, err := GetContainerNodePoolApiObject(d, config); err == nil {
return []cai.Asset{{
Name: name,
Type: ContainerNodePoolAssetType,
Resource: &cai.AssetResource{
Version: "v1",
DiscoveryDocumentURI: "https://www.googleapis.com/discovery/v1/apis/container/v1/rest",
DiscoveryName: "NodePool",
Data: obj,
},
}}, nil
} else {
return []cai.Asset{}, err
}
}
func GetContainerNodePoolApiObject(d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]interface{}, error) {
obj := make(map[string]interface{})
nameProp, err := expandContainerNodePoolName(d.Get("name"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("name"); !tpgresource.IsEmptyValue(reflect.ValueOf(nameProp)) && (ok || !reflect.DeepEqual(v, nameProp)) {
obj["name"] = nameProp
}
configProp, err := expandContainerNodePoolNodeConfig(d.Get("node_config"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("node_config"); !tpgresource.IsEmptyValue(reflect.ValueOf(configProp)) && (ok || !reflect.DeepEqual(v, configProp)) {
obj["config"] = configProp
}
initialNodeCountProp, err := expandContainerNodePoolInitialNodeCount(d.Get("initial_node_count"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("initial_node_count"); !tpgresource.IsEmptyValue(reflect.ValueOf(initialNodeCountProp)) && (ok || !reflect.DeepEqual(v, initialNodeCountProp)) {
obj["initialNodeCount"] = initialNodeCountProp
}
versionProp, err := expandContainerNodePoolVersion(d.Get("version"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("version"); !tpgresource.IsEmptyValue(reflect.ValueOf(versionProp)) && (ok || !reflect.DeepEqual(v, versionProp)) {
obj["version"] = versionProp
}
autoscalingProp, err := expandContainerNodePoolAutoscaling(d.Get("autoscaling"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("autoscaling"); !tpgresource.IsEmptyValue(reflect.ValueOf(autoscalingProp)) && (ok || !reflect.DeepEqual(v, autoscalingProp)) {
obj["autoscaling"] = autoscalingProp
}
managementProp, err := expandContainerNodePoolManagement(d.Get("management"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("management"); !tpgresource.IsEmptyValue(reflect.ValueOf(managementProp)) && (ok || !reflect.DeepEqual(v, managementProp)) {
obj["management"] = managementProp
}
maxPodsConstraintProp, err := expandContainerNodePoolMaxPodsPerNode(d.Get("max_pods_per_node"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("max_pods_per_node"); !tpgresource.IsEmptyValue(reflect.ValueOf(maxPodsConstraintProp)) && (ok || !reflect.DeepEqual(v, maxPodsConstraintProp)) {
obj["maxPodsConstraint"] = maxPodsConstraintProp
}
clusterProp, err := expandContainerNodePoolCluster(d.Get("cluster"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("cluster"); !tpgresource.IsEmptyValue(reflect.ValueOf(clusterProp)) && (ok || !reflect.DeepEqual(v, clusterProp)) {
obj["cluster"] = clusterProp
}
locationProp, err := expandContainerNodePoolLocation(d.Get("location"), d, config)
if err != nil {
return nil, err
} else if v, ok := d.GetOkExists("location"); !tpgresource.IsEmptyValue(reflect.ValueOf(locationProp)) && (ok || !reflect.DeepEqual(v, locationProp)) {
obj["location"] = locationProp
}
return obj, nil
}
func expandContainerNodePoolName(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfig(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedMachineType, err := expandContainerNodePoolNodeConfigMachineType(original["machine_type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMachineType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["machineType"] = transformedMachineType
}
transformedDiskSizeGb, err := expandContainerNodePoolNodeConfigDiskSizeGb(original["disk_size_gb"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDiskSizeGb); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["diskSizeGb"] = transformedDiskSizeGb
}
transformedOauthScopes, err := expandContainerNodePoolNodeConfigOauthScopes(original["oauth_scopes"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedOauthScopes); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["oauthScopes"] = transformedOauthScopes
}
transformedServiceAccount, err := expandContainerNodePoolNodeConfigServiceAccount(original["service_account"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedServiceAccount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["serviceAccount"] = transformedServiceAccount
}
transformedMetadata, err := expandContainerNodePoolNodeConfigMetadata(original["metadata"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMetadata); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["metadata"] = transformedMetadata
}
transformedImageType, err := expandContainerNodePoolNodeConfigImageType(original["image_type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedImageType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["imageType"] = transformedImageType
}
transformedLabels, err := expandContainerNodePoolNodeConfigLabels(original["labels"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedLabels); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["labels"] = transformedLabels
}
transformedLocalSsdCount, err := expandContainerNodePoolNodeConfigLocalSsdCount(original["local_ssd_count"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedLocalSsdCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["localSsdCount"] = transformedLocalSsdCount
}
transformedTags, err := expandContainerNodePoolNodeConfigTags(original["tags"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedTags); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["tags"] = transformedTags
}
transformedPreemptible, err := expandContainerNodePoolNodeConfigPreemptible(original["preemptible"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedPreemptible); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["preemptible"] = transformedPreemptible
}
transformedGuestAccelerator, err := expandContainerNodePoolNodeConfigGuestAccelerator(original["guest_accelerator"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedGuestAccelerator); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["accelerators"] = transformedGuestAccelerator
}
transformedDiskType, err := expandContainerNodePoolNodeConfigDiskType(original["disk_type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedDiskType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["diskType"] = transformedDiskType
}
transformedMinCpuPlatform, err := expandContainerNodePoolNodeConfigMinCpuPlatform(original["min_cpu_platform"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMinCpuPlatform); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["minCpuPlatform"] = transformedMinCpuPlatform
}
transformedTaint, err := expandContainerNodePoolNodeConfigTaint(original["taint"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedTaint); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["taints"] = transformedTaint
}
return transformed, nil
}
func expandContainerNodePoolNodeConfigMachineType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigDiskSizeGb(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigServiceAccount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigMetadata(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) {
if v == nil {
return map[string]string{}, nil
}
m := make(map[string]string)
for k, val := range v.(map[string]interface{}) {
m[k] = val.(string)
}
return m, nil
}
func expandContainerNodePoolNodeConfigImageType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigLabels(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) {
if v == nil {
return map[string]string{}, nil
}
m := make(map[string]string)
for k, val := range v.(map[string]interface{}) {
m[k] = val.(string)
}
return m, nil
}
func expandContainerNodePoolNodeConfigLocalSsdCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigTags(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigPreemptible(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigGuestAccelerator(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
req := make([]interface{}, 0, len(l))
for _, raw := range l {
if raw == nil {
continue
}
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedCount, err := expandContainerNodePoolNodeConfigGuestAcceleratorCount(original["count"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["acceleratorCount"] = transformedCount
}
transformedType, err := expandContainerNodePoolNodeConfigGuestAcceleratorType(original["type"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedType); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["acceleratorType"] = transformedType
}
req = append(req, transformed)
}
return req, nil
}
func expandContainerNodePoolNodeConfigGuestAcceleratorCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigGuestAcceleratorType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigDiskType(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigMinCpuPlatform(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigTaint(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
req := make([]interface{}, 0, len(l))
for _, raw := range l {
if raw == nil {
continue
}
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedKey, err := expandContainerNodePoolNodeConfigTaintKey(original["key"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedKey); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["key"] = transformedKey
}
transformedValue, err := expandContainerNodePoolNodeConfigTaintValue(original["value"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedValue); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["value"] = transformedValue
}
transformedEffect, err := expandContainerNodePoolNodeConfigTaintEffect(original["effect"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEffect); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["effect"] = transformedEffect
}
req = append(req, transformed)
}
return req, nil
}
func expandContainerNodePoolNodeConfigTaintKey(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigTaintValue(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolNodeConfigTaintEffect(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolInitialNodeCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolVersion(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolAutoscaling(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedEnabled, err := expandContainerNodePoolAutoscalingEnabled(original["enabled"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedEnabled); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["enabled"] = transformedEnabled
}
transformedMinNodeCount, err := expandContainerNodePoolAutoscalingMinNodeCount(original["min_node_count"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMinNodeCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["minNodeCount"] = transformedMinNodeCount
}
transformedMaxNodeCount, err := expandContainerNodePoolAutoscalingMaxNodeCount(original["max_node_count"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedMaxNodeCount); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["maxNodeCount"] = transformedMaxNodeCount
}
return transformed, nil
}
func expandContainerNodePoolAutoscalingEnabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolAutoscalingMinNodeCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolAutoscalingMaxNodeCount(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolManagement(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
l := v.([]interface{})
if len(l) == 0 || l[0] == nil {
return nil, nil
}
raw := l[0]
original := raw.(map[string]interface{})
transformed := make(map[string]interface{})
transformedAutoUpgrade, err := expandContainerNodePoolManagementAutoUpgrade(original["auto_upgrade"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedAutoUpgrade); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["autoUpgrade"] = transformedAutoUpgrade
}
transformedAutoRepair, err := expandContainerNodePoolManagementAutoRepair(original["auto_repair"], d, config)
if err != nil {
return nil, err
} else if val := reflect.ValueOf(transformedAutoRepair); val.IsValid() && !tpgresource.IsEmptyValue(val) {
transformed["autoRepair"] = transformedAutoRepair
}
return transformed, nil
}
func expandContainerNodePoolManagementAutoUpgrade(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolManagementAutoRepair(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}
func expandContainerNodePoolCluster(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
f, err := tpgresource.ParseGlobalFieldValue("clusters", v.(string), "project", d, config, true)
if err != nil {
return nil, fmt.Errorf("Invalid value for cluster: %s", err)
}
return f.RelativeLink(), nil
}
func expandContainerNodePoolLocation(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
return v, nil
}