in unstructured/google/dataproc/alpha/cluster.go [28:761]
func ClusterToUnstructured(r *dclService.Cluster) *unstructured.Resource {
u := &unstructured.Resource{
STV: unstructured.ServiceTypeVersion{
Service: "dataproc",
Version: "alpha",
Type: "Cluster",
},
Object: make(map[string]interface{}),
}
if r.ClusterUuid != nil {
u.Object["clusterUuid"] = *r.ClusterUuid
}
if r.Config != nil && r.Config != dclService.EmptyClusterConfig {
rConfig := make(map[string]interface{})
if r.Config.AutoscalingConfig != nil && r.Config.AutoscalingConfig != dclService.EmptyClusterConfigAutoscalingConfig {
rConfigAutoscalingConfig := make(map[string]interface{})
if r.Config.AutoscalingConfig.Policy != nil {
rConfigAutoscalingConfig["policy"] = *r.Config.AutoscalingConfig.Policy
}
rConfig["autoscalingConfig"] = rConfigAutoscalingConfig
}
if r.Config.DataprocMetricConfig != nil && r.Config.DataprocMetricConfig != dclService.EmptyClusterConfigDataprocMetricConfig {
rConfigDataprocMetricConfig := make(map[string]interface{})
var rConfigDataprocMetricConfigMetrics []interface{}
for _, rConfigDataprocMetricConfigMetricsVal := range r.Config.DataprocMetricConfig.Metrics {
rConfigDataprocMetricConfigMetricsObject := make(map[string]interface{})
var rConfigDataprocMetricConfigMetricsValMetricOverrides []interface{}
for _, rConfigDataprocMetricConfigMetricsValMetricOverridesVal := range rConfigDataprocMetricConfigMetricsVal.MetricOverrides {
rConfigDataprocMetricConfigMetricsValMetricOverrides = append(rConfigDataprocMetricConfigMetricsValMetricOverrides, rConfigDataprocMetricConfigMetricsValMetricOverridesVal)
}
rConfigDataprocMetricConfigMetricsObject["metricOverrides"] = rConfigDataprocMetricConfigMetricsValMetricOverrides
if rConfigDataprocMetricConfigMetricsVal.MetricSource != nil {
rConfigDataprocMetricConfigMetricsObject["metricSource"] = string(*rConfigDataprocMetricConfigMetricsVal.MetricSource)
}
rConfigDataprocMetricConfigMetrics = append(rConfigDataprocMetricConfigMetrics, rConfigDataprocMetricConfigMetricsObject)
}
rConfigDataprocMetricConfig["metrics"] = rConfigDataprocMetricConfigMetrics
rConfig["dataprocMetricConfig"] = rConfigDataprocMetricConfig
}
if r.Config.EncryptionConfig != nil && r.Config.EncryptionConfig != dclService.EmptyClusterConfigEncryptionConfig {
rConfigEncryptionConfig := make(map[string]interface{})
if r.Config.EncryptionConfig.GcePdKmsKeyName != nil {
rConfigEncryptionConfig["gcePdKmsKeyName"] = *r.Config.EncryptionConfig.GcePdKmsKeyName
}
rConfig["encryptionConfig"] = rConfigEncryptionConfig
}
if r.Config.EndpointConfig != nil && r.Config.EndpointConfig != dclService.EmptyClusterConfigEndpointConfig {
rConfigEndpointConfig := make(map[string]interface{})
if r.Config.EndpointConfig.EnableHttpPortAccess != nil {
rConfigEndpointConfig["enableHttpPortAccess"] = *r.Config.EndpointConfig.EnableHttpPortAccess
}
if r.Config.EndpointConfig.HttpPorts != nil {
rConfigEndpointConfigHttpPorts := make(map[string]interface{})
for k, v := range r.Config.EndpointConfig.HttpPorts {
rConfigEndpointConfigHttpPorts[k] = v
}
rConfigEndpointConfig["httpPorts"] = rConfigEndpointConfigHttpPorts
}
rConfig["endpointConfig"] = rConfigEndpointConfig
}
if r.Config.GceClusterConfig != nil && r.Config.GceClusterConfig != dclService.EmptyClusterConfigGceClusterConfig {
rConfigGceClusterConfig := make(map[string]interface{})
if r.Config.GceClusterConfig.ConfidentialInstanceConfig != nil && r.Config.GceClusterConfig.ConfidentialInstanceConfig != dclService.EmptyClusterConfigGceClusterConfigConfidentialInstanceConfig {
rConfigGceClusterConfigConfidentialInstanceConfig := make(map[string]interface{})
if r.Config.GceClusterConfig.ConfidentialInstanceConfig.EnableConfidentialCompute != nil {
rConfigGceClusterConfigConfidentialInstanceConfig["enableConfidentialCompute"] = *r.Config.GceClusterConfig.ConfidentialInstanceConfig.EnableConfidentialCompute
}
rConfigGceClusterConfig["confidentialInstanceConfig"] = rConfigGceClusterConfigConfidentialInstanceConfig
}
if r.Config.GceClusterConfig.InternalIPOnly != nil {
rConfigGceClusterConfig["internalIPOnly"] = *r.Config.GceClusterConfig.InternalIPOnly
}
if r.Config.GceClusterConfig.Metadata != nil {
rConfigGceClusterConfigMetadata := make(map[string]interface{})
for k, v := range r.Config.GceClusterConfig.Metadata {
rConfigGceClusterConfigMetadata[k] = v
}
rConfigGceClusterConfig["metadata"] = rConfigGceClusterConfigMetadata
}
if r.Config.GceClusterConfig.Network != nil {
rConfigGceClusterConfig["network"] = *r.Config.GceClusterConfig.Network
}
if r.Config.GceClusterConfig.NodeGroupAffinity != nil && r.Config.GceClusterConfig.NodeGroupAffinity != dclService.EmptyClusterConfigGceClusterConfigNodeGroupAffinity {
rConfigGceClusterConfigNodeGroupAffinity := make(map[string]interface{})
if r.Config.GceClusterConfig.NodeGroupAffinity.NodeGroup != nil {
rConfigGceClusterConfigNodeGroupAffinity["nodeGroup"] = *r.Config.GceClusterConfig.NodeGroupAffinity.NodeGroup
}
rConfigGceClusterConfig["nodeGroupAffinity"] = rConfigGceClusterConfigNodeGroupAffinity
}
if r.Config.GceClusterConfig.PrivateIPv6GoogleAccess != nil {
rConfigGceClusterConfig["privateIPv6GoogleAccess"] = string(*r.Config.GceClusterConfig.PrivateIPv6GoogleAccess)
}
if r.Config.GceClusterConfig.ReservationAffinity != nil && r.Config.GceClusterConfig.ReservationAffinity != dclService.EmptyClusterConfigGceClusterConfigReservationAffinity {
rConfigGceClusterConfigReservationAffinity := make(map[string]interface{})
if r.Config.GceClusterConfig.ReservationAffinity.ConsumeReservationType != nil {
rConfigGceClusterConfigReservationAffinity["consumeReservationType"] = string(*r.Config.GceClusterConfig.ReservationAffinity.ConsumeReservationType)
}
if r.Config.GceClusterConfig.ReservationAffinity.Key != nil {
rConfigGceClusterConfigReservationAffinity["key"] = *r.Config.GceClusterConfig.ReservationAffinity.Key
}
var rConfigGceClusterConfigReservationAffinityValues []interface{}
for _, rConfigGceClusterConfigReservationAffinityValuesVal := range r.Config.GceClusterConfig.ReservationAffinity.Values {
rConfigGceClusterConfigReservationAffinityValues = append(rConfigGceClusterConfigReservationAffinityValues, rConfigGceClusterConfigReservationAffinityValuesVal)
}
rConfigGceClusterConfigReservationAffinity["values"] = rConfigGceClusterConfigReservationAffinityValues
rConfigGceClusterConfig["reservationAffinity"] = rConfigGceClusterConfigReservationAffinity
}
if r.Config.GceClusterConfig.ServiceAccount != nil {
rConfigGceClusterConfig["serviceAccount"] = *r.Config.GceClusterConfig.ServiceAccount
}
var rConfigGceClusterConfigServiceAccountScopes []interface{}
for _, rConfigGceClusterConfigServiceAccountScopesVal := range r.Config.GceClusterConfig.ServiceAccountScopes {
rConfigGceClusterConfigServiceAccountScopes = append(rConfigGceClusterConfigServiceAccountScopes, rConfigGceClusterConfigServiceAccountScopesVal)
}
rConfigGceClusterConfig["serviceAccountScopes"] = rConfigGceClusterConfigServiceAccountScopes
if r.Config.GceClusterConfig.ShieldedInstanceConfig != nil && r.Config.GceClusterConfig.ShieldedInstanceConfig != dclService.EmptyClusterConfigGceClusterConfigShieldedInstanceConfig {
rConfigGceClusterConfigShieldedInstanceConfig := make(map[string]interface{})
if r.Config.GceClusterConfig.ShieldedInstanceConfig.EnableIntegrityMonitoring != nil {
rConfigGceClusterConfigShieldedInstanceConfig["enableIntegrityMonitoring"] = *r.Config.GceClusterConfig.ShieldedInstanceConfig.EnableIntegrityMonitoring
}
if r.Config.GceClusterConfig.ShieldedInstanceConfig.EnableSecureBoot != nil {
rConfigGceClusterConfigShieldedInstanceConfig["enableSecureBoot"] = *r.Config.GceClusterConfig.ShieldedInstanceConfig.EnableSecureBoot
}
if r.Config.GceClusterConfig.ShieldedInstanceConfig.EnableVtpm != nil {
rConfigGceClusterConfigShieldedInstanceConfig["enableVtpm"] = *r.Config.GceClusterConfig.ShieldedInstanceConfig.EnableVtpm
}
rConfigGceClusterConfig["shieldedInstanceConfig"] = rConfigGceClusterConfigShieldedInstanceConfig
}
if r.Config.GceClusterConfig.Subnetwork != nil {
rConfigGceClusterConfig["subnetwork"] = *r.Config.GceClusterConfig.Subnetwork
}
var rConfigGceClusterConfigTags []interface{}
for _, rConfigGceClusterConfigTagsVal := range r.Config.GceClusterConfig.Tags {
rConfigGceClusterConfigTags = append(rConfigGceClusterConfigTags, rConfigGceClusterConfigTagsVal)
}
rConfigGceClusterConfig["tags"] = rConfigGceClusterConfigTags
if r.Config.GceClusterConfig.Zone != nil {
rConfigGceClusterConfig["zone"] = *r.Config.GceClusterConfig.Zone
}
rConfig["gceClusterConfig"] = rConfigGceClusterConfig
}
if r.Config.GkeClusterConfig != nil && r.Config.GkeClusterConfig != dclService.EmptyClusterConfigGkeClusterConfig {
rConfigGkeClusterConfig := make(map[string]interface{})
if r.Config.GkeClusterConfig.NamespacedGkeDeploymentTarget != nil && r.Config.GkeClusterConfig.NamespacedGkeDeploymentTarget != dclService.EmptyClusterConfigGkeClusterConfigNamespacedGkeDeploymentTarget {
rConfigGkeClusterConfigNamespacedGkeDeploymentTarget := make(map[string]interface{})
if r.Config.GkeClusterConfig.NamespacedGkeDeploymentTarget.ClusterNamespace != nil {
rConfigGkeClusterConfigNamespacedGkeDeploymentTarget["clusterNamespace"] = *r.Config.GkeClusterConfig.NamespacedGkeDeploymentTarget.ClusterNamespace
}
if r.Config.GkeClusterConfig.NamespacedGkeDeploymentTarget.TargetGkeCluster != nil {
rConfigGkeClusterConfigNamespacedGkeDeploymentTarget["targetGkeCluster"] = *r.Config.GkeClusterConfig.NamespacedGkeDeploymentTarget.TargetGkeCluster
}
rConfigGkeClusterConfig["namespacedGkeDeploymentTarget"] = rConfigGkeClusterConfigNamespacedGkeDeploymentTarget
}
rConfig["gkeClusterConfig"] = rConfigGkeClusterConfig
}
var rConfigInitializationActions []interface{}
for _, rConfigInitializationActionsVal := range r.Config.InitializationActions {
rConfigInitializationActionsObject := make(map[string]interface{})
if rConfigInitializationActionsVal.ExecutableFile != nil {
rConfigInitializationActionsObject["executableFile"] = *rConfigInitializationActionsVal.ExecutableFile
}
if rConfigInitializationActionsVal.ExecutionTimeout != nil {
rConfigInitializationActionsObject["executionTimeout"] = *rConfigInitializationActionsVal.ExecutionTimeout
}
rConfigInitializationActions = append(rConfigInitializationActions, rConfigInitializationActionsObject)
}
rConfig["initializationActions"] = rConfigInitializationActions
if r.Config.LifecycleConfig != nil && r.Config.LifecycleConfig != dclService.EmptyClusterConfigLifecycleConfig {
rConfigLifecycleConfig := make(map[string]interface{})
if r.Config.LifecycleConfig.AutoDeleteTime != nil {
rConfigLifecycleConfig["autoDeleteTime"] = *r.Config.LifecycleConfig.AutoDeleteTime
}
if r.Config.LifecycleConfig.AutoDeleteTtl != nil {
rConfigLifecycleConfig["autoDeleteTtl"] = *r.Config.LifecycleConfig.AutoDeleteTtl
}
if r.Config.LifecycleConfig.IdleDeleteTtl != nil {
rConfigLifecycleConfig["idleDeleteTtl"] = *r.Config.LifecycleConfig.IdleDeleteTtl
}
if r.Config.LifecycleConfig.IdleStartTime != nil {
rConfigLifecycleConfig["idleStartTime"] = *r.Config.LifecycleConfig.IdleStartTime
}
rConfig["lifecycleConfig"] = rConfigLifecycleConfig
}
if r.Config.MasterConfig != nil && r.Config.MasterConfig != dclService.EmptyClusterConfigMasterConfig {
rConfigMasterConfig := make(map[string]interface{})
var rConfigMasterConfigAccelerators []interface{}
for _, rConfigMasterConfigAcceleratorsVal := range r.Config.MasterConfig.Accelerators {
rConfigMasterConfigAcceleratorsObject := make(map[string]interface{})
if rConfigMasterConfigAcceleratorsVal.AcceleratorCount != nil {
rConfigMasterConfigAcceleratorsObject["acceleratorCount"] = *rConfigMasterConfigAcceleratorsVal.AcceleratorCount
}
if rConfigMasterConfigAcceleratorsVal.AcceleratorType != nil {
rConfigMasterConfigAcceleratorsObject["acceleratorType"] = *rConfigMasterConfigAcceleratorsVal.AcceleratorType
}
rConfigMasterConfigAccelerators = append(rConfigMasterConfigAccelerators, rConfigMasterConfigAcceleratorsObject)
}
rConfigMasterConfig["accelerators"] = rConfigMasterConfigAccelerators
if r.Config.MasterConfig.DiskConfig != nil && r.Config.MasterConfig.DiskConfig != dclService.EmptyClusterConfigMasterConfigDiskConfig {
rConfigMasterConfigDiskConfig := make(map[string]interface{})
if r.Config.MasterConfig.DiskConfig.BootDiskSizeGb != nil {
rConfigMasterConfigDiskConfig["bootDiskSizeGb"] = *r.Config.MasterConfig.DiskConfig.BootDiskSizeGb
}
if r.Config.MasterConfig.DiskConfig.BootDiskType != nil {
rConfigMasterConfigDiskConfig["bootDiskType"] = *r.Config.MasterConfig.DiskConfig.BootDiskType
}
if r.Config.MasterConfig.DiskConfig.LocalSsdInterface != nil {
rConfigMasterConfigDiskConfig["localSsdInterface"] = *r.Config.MasterConfig.DiskConfig.LocalSsdInterface
}
if r.Config.MasterConfig.DiskConfig.NumLocalSsds != nil {
rConfigMasterConfigDiskConfig["numLocalSsds"] = *r.Config.MasterConfig.DiskConfig.NumLocalSsds
}
rConfigMasterConfig["diskConfig"] = rConfigMasterConfigDiskConfig
}
if r.Config.MasterConfig.Image != nil {
rConfigMasterConfig["image"] = *r.Config.MasterConfig.Image
}
var rConfigMasterConfigInstanceNames []interface{}
for _, rConfigMasterConfigInstanceNamesVal := range r.Config.MasterConfig.InstanceNames {
rConfigMasterConfigInstanceNames = append(rConfigMasterConfigInstanceNames, rConfigMasterConfigInstanceNamesVal)
}
rConfigMasterConfig["instanceNames"] = rConfigMasterConfigInstanceNames
var rConfigMasterConfigInstanceReferences []interface{}
for _, rConfigMasterConfigInstanceReferencesVal := range r.Config.MasterConfig.InstanceReferences {
rConfigMasterConfigInstanceReferencesObject := make(map[string]interface{})
if rConfigMasterConfigInstanceReferencesVal.InstanceId != nil {
rConfigMasterConfigInstanceReferencesObject["instanceId"] = *rConfigMasterConfigInstanceReferencesVal.InstanceId
}
if rConfigMasterConfigInstanceReferencesVal.InstanceName != nil {
rConfigMasterConfigInstanceReferencesObject["instanceName"] = *rConfigMasterConfigInstanceReferencesVal.InstanceName
}
if rConfigMasterConfigInstanceReferencesVal.PublicEciesKey != nil {
rConfigMasterConfigInstanceReferencesObject["publicEciesKey"] = *rConfigMasterConfigInstanceReferencesVal.PublicEciesKey
}
if rConfigMasterConfigInstanceReferencesVal.PublicKey != nil {
rConfigMasterConfigInstanceReferencesObject["publicKey"] = *rConfigMasterConfigInstanceReferencesVal.PublicKey
}
rConfigMasterConfigInstanceReferences = append(rConfigMasterConfigInstanceReferences, rConfigMasterConfigInstanceReferencesObject)
}
rConfigMasterConfig["instanceReferences"] = rConfigMasterConfigInstanceReferences
if r.Config.MasterConfig.IsPreemptible != nil {
rConfigMasterConfig["isPreemptible"] = *r.Config.MasterConfig.IsPreemptible
}
if r.Config.MasterConfig.MachineType != nil {
rConfigMasterConfig["machineType"] = *r.Config.MasterConfig.MachineType
}
if r.Config.MasterConfig.ManagedGroupConfig != nil && r.Config.MasterConfig.ManagedGroupConfig != dclService.EmptyClusterConfigMasterConfigManagedGroupConfig {
rConfigMasterConfigManagedGroupConfig := make(map[string]interface{})
if r.Config.MasterConfig.ManagedGroupConfig.InstanceGroupManagerName != nil {
rConfigMasterConfigManagedGroupConfig["instanceGroupManagerName"] = *r.Config.MasterConfig.ManagedGroupConfig.InstanceGroupManagerName
}
if r.Config.MasterConfig.ManagedGroupConfig.InstanceTemplateName != nil {
rConfigMasterConfigManagedGroupConfig["instanceTemplateName"] = *r.Config.MasterConfig.ManagedGroupConfig.InstanceTemplateName
}
rConfigMasterConfig["managedGroupConfig"] = rConfigMasterConfigManagedGroupConfig
}
if r.Config.MasterConfig.MinCpuPlatform != nil {
rConfigMasterConfig["minCpuPlatform"] = *r.Config.MasterConfig.MinCpuPlatform
}
if r.Config.MasterConfig.NumInstances != nil {
rConfigMasterConfig["numInstances"] = *r.Config.MasterConfig.NumInstances
}
if r.Config.MasterConfig.Preemptibility != nil {
rConfigMasterConfig["preemptibility"] = string(*r.Config.MasterConfig.Preemptibility)
}
rConfig["masterConfig"] = rConfigMasterConfig
}
if r.Config.MetastoreConfig != nil && r.Config.MetastoreConfig != dclService.EmptyClusterConfigMetastoreConfig {
rConfigMetastoreConfig := make(map[string]interface{})
if r.Config.MetastoreConfig.DataprocMetastoreService != nil {
rConfigMetastoreConfig["dataprocMetastoreService"] = *r.Config.MetastoreConfig.DataprocMetastoreService
}
rConfig["metastoreConfig"] = rConfigMetastoreConfig
}
if r.Config.SecondaryWorkerConfig != nil && r.Config.SecondaryWorkerConfig != dclService.EmptyClusterConfigSecondaryWorkerConfig {
rConfigSecondaryWorkerConfig := make(map[string]interface{})
var rConfigSecondaryWorkerConfigAccelerators []interface{}
for _, rConfigSecondaryWorkerConfigAcceleratorsVal := range r.Config.SecondaryWorkerConfig.Accelerators {
rConfigSecondaryWorkerConfigAcceleratorsObject := make(map[string]interface{})
if rConfigSecondaryWorkerConfigAcceleratorsVal.AcceleratorCount != nil {
rConfigSecondaryWorkerConfigAcceleratorsObject["acceleratorCount"] = *rConfigSecondaryWorkerConfigAcceleratorsVal.AcceleratorCount
}
if rConfigSecondaryWorkerConfigAcceleratorsVal.AcceleratorType != nil {
rConfigSecondaryWorkerConfigAcceleratorsObject["acceleratorType"] = *rConfigSecondaryWorkerConfigAcceleratorsVal.AcceleratorType
}
rConfigSecondaryWorkerConfigAccelerators = append(rConfigSecondaryWorkerConfigAccelerators, rConfigSecondaryWorkerConfigAcceleratorsObject)
}
rConfigSecondaryWorkerConfig["accelerators"] = rConfigSecondaryWorkerConfigAccelerators
if r.Config.SecondaryWorkerConfig.DiskConfig != nil && r.Config.SecondaryWorkerConfig.DiskConfig != dclService.EmptyClusterConfigSecondaryWorkerConfigDiskConfig {
rConfigSecondaryWorkerConfigDiskConfig := make(map[string]interface{})
if r.Config.SecondaryWorkerConfig.DiskConfig.BootDiskSizeGb != nil {
rConfigSecondaryWorkerConfigDiskConfig["bootDiskSizeGb"] = *r.Config.SecondaryWorkerConfig.DiskConfig.BootDiskSizeGb
}
if r.Config.SecondaryWorkerConfig.DiskConfig.BootDiskType != nil {
rConfigSecondaryWorkerConfigDiskConfig["bootDiskType"] = *r.Config.SecondaryWorkerConfig.DiskConfig.BootDiskType
}
if r.Config.SecondaryWorkerConfig.DiskConfig.LocalSsdInterface != nil {
rConfigSecondaryWorkerConfigDiskConfig["localSsdInterface"] = *r.Config.SecondaryWorkerConfig.DiskConfig.LocalSsdInterface
}
if r.Config.SecondaryWorkerConfig.DiskConfig.NumLocalSsds != nil {
rConfigSecondaryWorkerConfigDiskConfig["numLocalSsds"] = *r.Config.SecondaryWorkerConfig.DiskConfig.NumLocalSsds
}
rConfigSecondaryWorkerConfig["diskConfig"] = rConfigSecondaryWorkerConfigDiskConfig
}
if r.Config.SecondaryWorkerConfig.Image != nil {
rConfigSecondaryWorkerConfig["image"] = *r.Config.SecondaryWorkerConfig.Image
}
var rConfigSecondaryWorkerConfigInstanceNames []interface{}
for _, rConfigSecondaryWorkerConfigInstanceNamesVal := range r.Config.SecondaryWorkerConfig.InstanceNames {
rConfigSecondaryWorkerConfigInstanceNames = append(rConfigSecondaryWorkerConfigInstanceNames, rConfigSecondaryWorkerConfigInstanceNamesVal)
}
rConfigSecondaryWorkerConfig["instanceNames"] = rConfigSecondaryWorkerConfigInstanceNames
var rConfigSecondaryWorkerConfigInstanceReferences []interface{}
for _, rConfigSecondaryWorkerConfigInstanceReferencesVal := range r.Config.SecondaryWorkerConfig.InstanceReferences {
rConfigSecondaryWorkerConfigInstanceReferencesObject := make(map[string]interface{})
if rConfigSecondaryWorkerConfigInstanceReferencesVal.InstanceId != nil {
rConfigSecondaryWorkerConfigInstanceReferencesObject["instanceId"] = *rConfigSecondaryWorkerConfigInstanceReferencesVal.InstanceId
}
if rConfigSecondaryWorkerConfigInstanceReferencesVal.InstanceName != nil {
rConfigSecondaryWorkerConfigInstanceReferencesObject["instanceName"] = *rConfigSecondaryWorkerConfigInstanceReferencesVal.InstanceName
}
if rConfigSecondaryWorkerConfigInstanceReferencesVal.PublicEciesKey != nil {
rConfigSecondaryWorkerConfigInstanceReferencesObject["publicEciesKey"] = *rConfigSecondaryWorkerConfigInstanceReferencesVal.PublicEciesKey
}
if rConfigSecondaryWorkerConfigInstanceReferencesVal.PublicKey != nil {
rConfigSecondaryWorkerConfigInstanceReferencesObject["publicKey"] = *rConfigSecondaryWorkerConfigInstanceReferencesVal.PublicKey
}
rConfigSecondaryWorkerConfigInstanceReferences = append(rConfigSecondaryWorkerConfigInstanceReferences, rConfigSecondaryWorkerConfigInstanceReferencesObject)
}
rConfigSecondaryWorkerConfig["instanceReferences"] = rConfigSecondaryWorkerConfigInstanceReferences
if r.Config.SecondaryWorkerConfig.IsPreemptible != nil {
rConfigSecondaryWorkerConfig["isPreemptible"] = *r.Config.SecondaryWorkerConfig.IsPreemptible
}
if r.Config.SecondaryWorkerConfig.MachineType != nil {
rConfigSecondaryWorkerConfig["machineType"] = *r.Config.SecondaryWorkerConfig.MachineType
}
if r.Config.SecondaryWorkerConfig.ManagedGroupConfig != nil && r.Config.SecondaryWorkerConfig.ManagedGroupConfig != dclService.EmptyClusterConfigSecondaryWorkerConfigManagedGroupConfig {
rConfigSecondaryWorkerConfigManagedGroupConfig := make(map[string]interface{})
if r.Config.SecondaryWorkerConfig.ManagedGroupConfig.InstanceGroupManagerName != nil {
rConfigSecondaryWorkerConfigManagedGroupConfig["instanceGroupManagerName"] = *r.Config.SecondaryWorkerConfig.ManagedGroupConfig.InstanceGroupManagerName
}
if r.Config.SecondaryWorkerConfig.ManagedGroupConfig.InstanceTemplateName != nil {
rConfigSecondaryWorkerConfigManagedGroupConfig["instanceTemplateName"] = *r.Config.SecondaryWorkerConfig.ManagedGroupConfig.InstanceTemplateName
}
rConfigSecondaryWorkerConfig["managedGroupConfig"] = rConfigSecondaryWorkerConfigManagedGroupConfig
}
if r.Config.SecondaryWorkerConfig.MinCpuPlatform != nil {
rConfigSecondaryWorkerConfig["minCpuPlatform"] = *r.Config.SecondaryWorkerConfig.MinCpuPlatform
}
if r.Config.SecondaryWorkerConfig.NumInstances != nil {
rConfigSecondaryWorkerConfig["numInstances"] = *r.Config.SecondaryWorkerConfig.NumInstances
}
if r.Config.SecondaryWorkerConfig.Preemptibility != nil {
rConfigSecondaryWorkerConfig["preemptibility"] = string(*r.Config.SecondaryWorkerConfig.Preemptibility)
}
rConfig["secondaryWorkerConfig"] = rConfigSecondaryWorkerConfig
}
if r.Config.SecurityConfig != nil && r.Config.SecurityConfig != dclService.EmptyClusterConfigSecurityConfig {
rConfigSecurityConfig := make(map[string]interface{})
if r.Config.SecurityConfig.IdentityConfig != nil && r.Config.SecurityConfig.IdentityConfig != dclService.EmptyClusterConfigSecurityConfigIdentityConfig {
rConfigSecurityConfigIdentityConfig := make(map[string]interface{})
if r.Config.SecurityConfig.IdentityConfig.UserServiceAccountMapping != nil {
rConfigSecurityConfigIdentityConfigUserServiceAccountMapping := make(map[string]interface{})
for k, v := range r.Config.SecurityConfig.IdentityConfig.UserServiceAccountMapping {
rConfigSecurityConfigIdentityConfigUserServiceAccountMapping[k] = v
}
rConfigSecurityConfigIdentityConfig["userServiceAccountMapping"] = rConfigSecurityConfigIdentityConfigUserServiceAccountMapping
}
rConfigSecurityConfig["identityConfig"] = rConfigSecurityConfigIdentityConfig
}
if r.Config.SecurityConfig.KerberosConfig != nil && r.Config.SecurityConfig.KerberosConfig != dclService.EmptyClusterConfigSecurityConfigKerberosConfig {
rConfigSecurityConfigKerberosConfig := make(map[string]interface{})
if r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustAdminServer != nil {
rConfigSecurityConfigKerberosConfig["crossRealmTrustAdminServer"] = *r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustAdminServer
}
if r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustKdc != nil {
rConfigSecurityConfigKerberosConfig["crossRealmTrustKdc"] = *r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustKdc
}
if r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustRealm != nil {
rConfigSecurityConfigKerberosConfig["crossRealmTrustRealm"] = *r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustRealm
}
if r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustSharedPassword != nil {
rConfigSecurityConfigKerberosConfig["crossRealmTrustSharedPassword"] = *r.Config.SecurityConfig.KerberosConfig.CrossRealmTrustSharedPassword
}
if r.Config.SecurityConfig.KerberosConfig.EnableKerberos != nil {
rConfigSecurityConfigKerberosConfig["enableKerberos"] = *r.Config.SecurityConfig.KerberosConfig.EnableKerberos
}
if r.Config.SecurityConfig.KerberosConfig.KdcDbKey != nil {
rConfigSecurityConfigKerberosConfig["kdcDbKey"] = *r.Config.SecurityConfig.KerberosConfig.KdcDbKey
}
if r.Config.SecurityConfig.KerberosConfig.KeyPassword != nil {
rConfigSecurityConfigKerberosConfig["keyPassword"] = *r.Config.SecurityConfig.KerberosConfig.KeyPassword
}
if r.Config.SecurityConfig.KerberosConfig.Keystore != nil {
rConfigSecurityConfigKerberosConfig["keystore"] = *r.Config.SecurityConfig.KerberosConfig.Keystore
}
if r.Config.SecurityConfig.KerberosConfig.KeystorePassword != nil {
rConfigSecurityConfigKerberosConfig["keystorePassword"] = *r.Config.SecurityConfig.KerberosConfig.KeystorePassword
}
if r.Config.SecurityConfig.KerberosConfig.KmsKey != nil {
rConfigSecurityConfigKerberosConfig["kmsKey"] = *r.Config.SecurityConfig.KerberosConfig.KmsKey
}
if r.Config.SecurityConfig.KerberosConfig.Realm != nil {
rConfigSecurityConfigKerberosConfig["realm"] = *r.Config.SecurityConfig.KerberosConfig.Realm
}
if r.Config.SecurityConfig.KerberosConfig.RootPrincipalPassword != nil {
rConfigSecurityConfigKerberosConfig["rootPrincipalPassword"] = *r.Config.SecurityConfig.KerberosConfig.RootPrincipalPassword
}
if r.Config.SecurityConfig.KerberosConfig.TgtLifetimeHours != nil {
rConfigSecurityConfigKerberosConfig["tgtLifetimeHours"] = *r.Config.SecurityConfig.KerberosConfig.TgtLifetimeHours
}
if r.Config.SecurityConfig.KerberosConfig.Truststore != nil {
rConfigSecurityConfigKerberosConfig["truststore"] = *r.Config.SecurityConfig.KerberosConfig.Truststore
}
if r.Config.SecurityConfig.KerberosConfig.TruststorePassword != nil {
rConfigSecurityConfigKerberosConfig["truststorePassword"] = *r.Config.SecurityConfig.KerberosConfig.TruststorePassword
}
rConfigSecurityConfig["kerberosConfig"] = rConfigSecurityConfigKerberosConfig
}
rConfig["securityConfig"] = rConfigSecurityConfig
}
if r.Config.SoftwareConfig != nil && r.Config.SoftwareConfig != dclService.EmptyClusterConfigSoftwareConfig {
rConfigSoftwareConfig := make(map[string]interface{})
if r.Config.SoftwareConfig.ImageVersion != nil {
rConfigSoftwareConfig["imageVersion"] = *r.Config.SoftwareConfig.ImageVersion
}
var rConfigSoftwareConfigOptionalComponents []interface{}
for _, rConfigSoftwareConfigOptionalComponentsVal := range r.Config.SoftwareConfig.OptionalComponents {
rConfigSoftwareConfigOptionalComponents = append(rConfigSoftwareConfigOptionalComponents, string(rConfigSoftwareConfigOptionalComponentsVal))
}
rConfigSoftwareConfig["optionalComponents"] = rConfigSoftwareConfigOptionalComponents
if r.Config.SoftwareConfig.Properties != nil {
rConfigSoftwareConfigProperties := make(map[string]interface{})
for k, v := range r.Config.SoftwareConfig.Properties {
rConfigSoftwareConfigProperties[k] = v
}
rConfigSoftwareConfig["properties"] = rConfigSoftwareConfigProperties
}
rConfig["softwareConfig"] = rConfigSoftwareConfig
}
if r.Config.StagingBucket != nil {
rConfig["stagingBucket"] = *r.Config.StagingBucket
}
if r.Config.TempBucket != nil {
rConfig["tempBucket"] = *r.Config.TempBucket
}
if r.Config.WorkerConfig != nil && r.Config.WorkerConfig != dclService.EmptyClusterConfigWorkerConfig {
rConfigWorkerConfig := make(map[string]interface{})
var rConfigWorkerConfigAccelerators []interface{}
for _, rConfigWorkerConfigAcceleratorsVal := range r.Config.WorkerConfig.Accelerators {
rConfigWorkerConfigAcceleratorsObject := make(map[string]interface{})
if rConfigWorkerConfigAcceleratorsVal.AcceleratorCount != nil {
rConfigWorkerConfigAcceleratorsObject["acceleratorCount"] = *rConfigWorkerConfigAcceleratorsVal.AcceleratorCount
}
if rConfigWorkerConfigAcceleratorsVal.AcceleratorType != nil {
rConfigWorkerConfigAcceleratorsObject["acceleratorType"] = *rConfigWorkerConfigAcceleratorsVal.AcceleratorType
}
rConfigWorkerConfigAccelerators = append(rConfigWorkerConfigAccelerators, rConfigWorkerConfigAcceleratorsObject)
}
rConfigWorkerConfig["accelerators"] = rConfigWorkerConfigAccelerators
if r.Config.WorkerConfig.DiskConfig != nil && r.Config.WorkerConfig.DiskConfig != dclService.EmptyClusterConfigWorkerConfigDiskConfig {
rConfigWorkerConfigDiskConfig := make(map[string]interface{})
if r.Config.WorkerConfig.DiskConfig.BootDiskSizeGb != nil {
rConfigWorkerConfigDiskConfig["bootDiskSizeGb"] = *r.Config.WorkerConfig.DiskConfig.BootDiskSizeGb
}
if r.Config.WorkerConfig.DiskConfig.BootDiskType != nil {
rConfigWorkerConfigDiskConfig["bootDiskType"] = *r.Config.WorkerConfig.DiskConfig.BootDiskType
}
if r.Config.WorkerConfig.DiskConfig.LocalSsdInterface != nil {
rConfigWorkerConfigDiskConfig["localSsdInterface"] = *r.Config.WorkerConfig.DiskConfig.LocalSsdInterface
}
if r.Config.WorkerConfig.DiskConfig.NumLocalSsds != nil {
rConfigWorkerConfigDiskConfig["numLocalSsds"] = *r.Config.WorkerConfig.DiskConfig.NumLocalSsds
}
rConfigWorkerConfig["diskConfig"] = rConfigWorkerConfigDiskConfig
}
if r.Config.WorkerConfig.Image != nil {
rConfigWorkerConfig["image"] = *r.Config.WorkerConfig.Image
}
var rConfigWorkerConfigInstanceNames []interface{}
for _, rConfigWorkerConfigInstanceNamesVal := range r.Config.WorkerConfig.InstanceNames {
rConfigWorkerConfigInstanceNames = append(rConfigWorkerConfigInstanceNames, rConfigWorkerConfigInstanceNamesVal)
}
rConfigWorkerConfig["instanceNames"] = rConfigWorkerConfigInstanceNames
var rConfigWorkerConfigInstanceReferences []interface{}
for _, rConfigWorkerConfigInstanceReferencesVal := range r.Config.WorkerConfig.InstanceReferences {
rConfigWorkerConfigInstanceReferencesObject := make(map[string]interface{})
if rConfigWorkerConfigInstanceReferencesVal.InstanceId != nil {
rConfigWorkerConfigInstanceReferencesObject["instanceId"] = *rConfigWorkerConfigInstanceReferencesVal.InstanceId
}
if rConfigWorkerConfigInstanceReferencesVal.InstanceName != nil {
rConfigWorkerConfigInstanceReferencesObject["instanceName"] = *rConfigWorkerConfigInstanceReferencesVal.InstanceName
}
if rConfigWorkerConfigInstanceReferencesVal.PublicEciesKey != nil {
rConfigWorkerConfigInstanceReferencesObject["publicEciesKey"] = *rConfigWorkerConfigInstanceReferencesVal.PublicEciesKey
}
if rConfigWorkerConfigInstanceReferencesVal.PublicKey != nil {
rConfigWorkerConfigInstanceReferencesObject["publicKey"] = *rConfigWorkerConfigInstanceReferencesVal.PublicKey
}
rConfigWorkerConfigInstanceReferences = append(rConfigWorkerConfigInstanceReferences, rConfigWorkerConfigInstanceReferencesObject)
}
rConfigWorkerConfig["instanceReferences"] = rConfigWorkerConfigInstanceReferences
if r.Config.WorkerConfig.IsPreemptible != nil {
rConfigWorkerConfig["isPreemptible"] = *r.Config.WorkerConfig.IsPreemptible
}
if r.Config.WorkerConfig.MachineType != nil {
rConfigWorkerConfig["machineType"] = *r.Config.WorkerConfig.MachineType
}
if r.Config.WorkerConfig.ManagedGroupConfig != nil && r.Config.WorkerConfig.ManagedGroupConfig != dclService.EmptyClusterConfigWorkerConfigManagedGroupConfig {
rConfigWorkerConfigManagedGroupConfig := make(map[string]interface{})
if r.Config.WorkerConfig.ManagedGroupConfig.InstanceGroupManagerName != nil {
rConfigWorkerConfigManagedGroupConfig["instanceGroupManagerName"] = *r.Config.WorkerConfig.ManagedGroupConfig.InstanceGroupManagerName
}
if r.Config.WorkerConfig.ManagedGroupConfig.InstanceTemplateName != nil {
rConfigWorkerConfigManagedGroupConfig["instanceTemplateName"] = *r.Config.WorkerConfig.ManagedGroupConfig.InstanceTemplateName
}
rConfigWorkerConfig["managedGroupConfig"] = rConfigWorkerConfigManagedGroupConfig
}
if r.Config.WorkerConfig.MinCpuPlatform != nil {
rConfigWorkerConfig["minCpuPlatform"] = *r.Config.WorkerConfig.MinCpuPlatform
}
if r.Config.WorkerConfig.NumInstances != nil {
rConfigWorkerConfig["numInstances"] = *r.Config.WorkerConfig.NumInstances
}
if r.Config.WorkerConfig.Preemptibility != nil {
rConfigWorkerConfig["preemptibility"] = string(*r.Config.WorkerConfig.Preemptibility)
}
rConfig["workerConfig"] = rConfigWorkerConfig
}
u.Object["config"] = rConfig
}
if r.Labels != nil {
rLabels := make(map[string]interface{})
for k, v := range r.Labels {
rLabels[k] = v
}
u.Object["labels"] = rLabels
}
if r.Location != nil {
u.Object["location"] = *r.Location
}
if r.Metrics != nil && r.Metrics != dclService.EmptyClusterMetrics {
rMetrics := make(map[string]interface{})
if r.Metrics.HdfsMetrics != nil {
rMetricsHdfsMetrics := make(map[string]interface{})
for k, v := range r.Metrics.HdfsMetrics {
rMetricsHdfsMetrics[k] = v
}
rMetrics["hdfsMetrics"] = rMetricsHdfsMetrics
}
if r.Metrics.YarnMetrics != nil {
rMetricsYarnMetrics := make(map[string]interface{})
for k, v := range r.Metrics.YarnMetrics {
rMetricsYarnMetrics[k] = v
}
rMetrics["yarnMetrics"] = rMetricsYarnMetrics
}
u.Object["metrics"] = rMetrics
}
if r.Name != nil {
u.Object["name"] = *r.Name
}
if r.Project != nil {
u.Object["project"] = *r.Project
}
if r.Status != nil && r.Status != dclService.EmptyClusterStatus {
rStatus := make(map[string]interface{})
if r.Status.Detail != nil {
rStatus["detail"] = *r.Status.Detail
}
if r.Status.State != nil {
rStatus["state"] = string(*r.Status.State)
}
if r.Status.StateStartTime != nil {
rStatus["stateStartTime"] = *r.Status.StateStartTime
}
if r.Status.Substate != nil {
rStatus["substate"] = string(*r.Status.Substate)
}
u.Object["status"] = rStatus
}
var rStatusHistory []interface{}
for _, rStatusHistoryVal := range r.StatusHistory {
rStatusHistoryObject := make(map[string]interface{})
if rStatusHistoryVal.Detail != nil {
rStatusHistoryObject["detail"] = *rStatusHistoryVal.Detail
}
if rStatusHistoryVal.State != nil {
rStatusHistoryObject["state"] = string(*rStatusHistoryVal.State)
}
if rStatusHistoryVal.StateStartTime != nil {
rStatusHistoryObject["stateStartTime"] = *rStatusHistoryVal.StateStartTime
}
if rStatusHistoryVal.Substate != nil {
rStatusHistoryObject["substate"] = string(*rStatusHistoryVal.Substate)
}
rStatusHistory = append(rStatusHistory, rStatusHistoryObject)
}
u.Object["statusHistory"] = rStatusHistory
if r.VirtualClusterConfig != nil && r.VirtualClusterConfig != dclService.EmptyClusterVirtualClusterConfig {
rVirtualClusterConfig := make(map[string]interface{})
if r.VirtualClusterConfig.AuxiliaryServicesConfig != nil && r.VirtualClusterConfig.AuxiliaryServicesConfig != dclService.EmptyClusterVirtualClusterConfigAuxiliaryServicesConfig {
rVirtualClusterConfigAuxiliaryServicesConfig := make(map[string]interface{})
if r.VirtualClusterConfig.AuxiliaryServicesConfig.MetastoreConfig != nil && r.VirtualClusterConfig.AuxiliaryServicesConfig.MetastoreConfig != dclService.EmptyClusterVirtualClusterConfigAuxiliaryServicesConfigMetastoreConfig {
rVirtualClusterConfigAuxiliaryServicesConfigMetastoreConfig := make(map[string]interface{})
if r.VirtualClusterConfig.AuxiliaryServicesConfig.MetastoreConfig.DataprocMetastoreService != nil {
rVirtualClusterConfigAuxiliaryServicesConfigMetastoreConfig["dataprocMetastoreService"] = *r.VirtualClusterConfig.AuxiliaryServicesConfig.MetastoreConfig.DataprocMetastoreService
}
rVirtualClusterConfigAuxiliaryServicesConfig["metastoreConfig"] = rVirtualClusterConfigAuxiliaryServicesConfigMetastoreConfig
}
if r.VirtualClusterConfig.AuxiliaryServicesConfig.SparkHistoryServerConfig != nil && r.VirtualClusterConfig.AuxiliaryServicesConfig.SparkHistoryServerConfig != dclService.EmptyClusterVirtualClusterConfigAuxiliaryServicesConfigSparkHistoryServerConfig {
rVirtualClusterConfigAuxiliaryServicesConfigSparkHistoryServerConfig := make(map[string]interface{})
if r.VirtualClusterConfig.AuxiliaryServicesConfig.SparkHistoryServerConfig.DataprocCluster != nil {
rVirtualClusterConfigAuxiliaryServicesConfigSparkHistoryServerConfig["dataprocCluster"] = *r.VirtualClusterConfig.AuxiliaryServicesConfig.SparkHistoryServerConfig.DataprocCluster
}
rVirtualClusterConfigAuxiliaryServicesConfig["sparkHistoryServerConfig"] = rVirtualClusterConfigAuxiliaryServicesConfigSparkHistoryServerConfig
}
rVirtualClusterConfig["auxiliaryServicesConfig"] = rVirtualClusterConfigAuxiliaryServicesConfig
}
if r.VirtualClusterConfig.KubernetesClusterConfig != nil && r.VirtualClusterConfig.KubernetesClusterConfig != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfig {
rVirtualClusterConfigKubernetesClusterConfig := make(map[string]interface{})
if r.VirtualClusterConfig.KubernetesClusterConfig.GkeClusterConfig != nil && r.VirtualClusterConfig.KubernetesClusterConfig.GkeClusterConfig != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfigGkeClusterConfig {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfig := make(map[string]interface{})
if r.VirtualClusterConfig.KubernetesClusterConfig.GkeClusterConfig.GkeClusterTarget != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfig["gkeClusterTarget"] = *r.VirtualClusterConfig.KubernetesClusterConfig.GkeClusterConfig.GkeClusterTarget
}
var rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTarget []interface{}
for _, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal := range r.VirtualClusterConfig.KubernetesClusterConfig.GkeClusterConfig.NodePoolTarget {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetObject := make(map[string]interface{})
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePool != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetObject["nodePool"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePool
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig != nil && rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetNodePoolConfig {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfig := make(map[string]interface{})
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Autoscaling != nil && rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Autoscaling != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetNodePoolConfigAutoscaling {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigAutoscaling := make(map[string]interface{})
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Autoscaling.MaxNodeCount != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigAutoscaling["maxNodeCount"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Autoscaling.MaxNodeCount
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Autoscaling.MinNodeCount != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigAutoscaling["minNodeCount"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Autoscaling.MinNodeCount
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfig["autoscaling"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigAutoscaling
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config != nil && rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetNodePoolConfigConfig {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig := make(map[string]interface{})
var rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAccelerators []interface{}
for _, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal := range rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.Accelerators {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsObject := make(map[string]interface{})
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal.AcceleratorCount != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsObject["acceleratorCount"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal.AcceleratorCount
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal.AcceleratorType != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsObject["acceleratorType"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal.AcceleratorType
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal.GpuPartitionSize != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsObject["gpuPartitionSize"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsVal.GpuPartitionSize
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAccelerators = append(rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAccelerators, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAcceleratorsObject)
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["accelerators"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigAccelerators
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.BootDiskKmsKey != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["bootDiskKmsKey"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.BootDiskKmsKey
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.EphemeralStorageConfig != nil && rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.EphemeralStorageConfig != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetNodePoolConfigConfigEphemeralStorageConfig {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigEphemeralStorageConfig := make(map[string]interface{})
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.EphemeralStorageConfig.LocalSsdCount != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigEphemeralStorageConfig["localSsdCount"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.EphemeralStorageConfig.LocalSsdCount
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["ephemeralStorageConfig"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfigEphemeralStorageConfig
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.LocalSsdCount != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["localSsdCount"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.LocalSsdCount
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.MachineType != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["machineType"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.MachineType
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.MinCpuPlatform != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["minCpuPlatform"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.MinCpuPlatform
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.Preemptible != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["preemptible"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.Preemptible
}
if rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.Spot != nil {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig["spot"] = *rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Config.Spot
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfig["config"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigConfig
}
var rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigLocations []interface{}
for _, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigLocationsVal := range rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.NodePoolConfig.Locations {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigLocations = append(rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigLocations, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigLocationsVal)
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfig["locations"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfigLocations
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetObject["nodePoolConfig"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValNodePoolConfig
}
var rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValRoles []interface{}
for _, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValRolesVal := range rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetVal.Roles {
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValRoles = append(rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValRoles, string(rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValRolesVal))
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetObject["roles"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetValRoles
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTarget = append(rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTarget, rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTargetObject)
}
rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfig["nodePoolTarget"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfigNodePoolTarget
rVirtualClusterConfigKubernetesClusterConfig["gkeClusterConfig"] = rVirtualClusterConfigKubernetesClusterConfigGkeClusterConfig
}
if r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesNamespace != nil {
rVirtualClusterConfigKubernetesClusterConfig["kubernetesNamespace"] = *r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesNamespace
}
if r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesSoftwareConfig != nil && r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesSoftwareConfig != dclService.EmptyClusterVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfig {
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfig := make(map[string]interface{})
if r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesSoftwareConfig.ComponentVersion != nil {
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfigComponentVersion := make(map[string]interface{})
for k, v := range r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesSoftwareConfig.ComponentVersion {
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfigComponentVersion[k] = v
}
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfig["componentVersion"] = rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfigComponentVersion
}
if r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesSoftwareConfig.Properties != nil {
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfigProperties := make(map[string]interface{})
for k, v := range r.VirtualClusterConfig.KubernetesClusterConfig.KubernetesSoftwareConfig.Properties {
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfigProperties[k] = v
}
rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfig["properties"] = rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfigProperties
}
rVirtualClusterConfigKubernetesClusterConfig["kubernetesSoftwareConfig"] = rVirtualClusterConfigKubernetesClusterConfigKubernetesSoftwareConfig
}
rVirtualClusterConfig["kubernetesClusterConfig"] = rVirtualClusterConfigKubernetesClusterConfig
}
if r.VirtualClusterConfig.StagingBucket != nil {
rVirtualClusterConfig["stagingBucket"] = *r.VirtualClusterConfig.StagingBucket
}
u.Object["virtualClusterConfig"] = rVirtualClusterConfig
}
return u
}