@@ -709,41 +709,25 @@ func resourceContainerClusterRead(d *schema.ResourceData, meta interface{}) erro
709
709
}
710
710
711
711
d .Set ("name" , cluster .Name )
712
-
713
- d . Set ( "network_policy" , flattenNetworkPolicy ( cluster . NetworkPolicy ))
714
-
712
+ if err := d . Set ( "network_policy" , flattenNetworkPolicy ( cluster . NetworkPolicy )); err != nil {
713
+ return err
714
+ }
715
715
d .Set ("zone" , cluster .Zone )
716
716
717
717
locations := schema .NewSet (schema .HashString , convertStringArrToInterface (cluster .Locations ))
718
718
locations .Remove (cluster .Zone ) // Remove the original zone since we only store additional zones
719
719
d .Set ("additional_zones" , locations )
720
720
721
721
d .Set ("endpoint" , cluster .Endpoint )
722
-
723
- if cluster .MaintenancePolicy != nil {
724
- d .Set ("maintenance_policy" , flattenMaintenancePolicy (cluster .MaintenancePolicy ))
725
- }
726
-
727
- masterAuth := []map [string ]interface {}{
728
- {
729
- "username" : cluster .MasterAuth .Username ,
730
- "password" : cluster .MasterAuth .Password ,
731
- "client_certificate" : cluster .MasterAuth .ClientCertificate ,
732
- "client_key" : cluster .MasterAuth .ClientKey ,
733
- "cluster_ca_certificate" : cluster .MasterAuth .ClusterCaCertificate ,
734
- },
722
+ if err := d .Set ("maintenance_policy" , flattenMaintenancePolicy (cluster .MaintenancePolicy )); err != nil {
723
+ return err
735
724
}
736
- if len (cluster .MasterAuth .ClientCertificate ) == 0 {
737
- masterAuth [0 ]["client_certificate_config" ] = []map [string ]interface {}{
738
- {"issue_client_certificate" : false },
739
- }
725
+ if err := d .Set ("master_auth" , flattenMasterAuth (cluster .MasterAuth )); err != nil {
726
+ return err
740
727
}
741
- d .Set ("master_auth" , masterAuth )
742
-
743
- if cluster .MasterAuthorizedNetworksConfig != nil {
744
- d .Set ("master_authorized_networks_config" , flattenMasterAuthorizedNetworksConfig (cluster .MasterAuthorizedNetworksConfig ))
728
+ if err := d .Set ("master_authorized_networks_config" , flattenMasterAuthorizedNetworksConfig (cluster .MasterAuthorizedNetworksConfig )); err != nil {
729
+ return err
745
730
}
746
-
747
731
d .Set ("initial_node_count" , cluster .InitialNodeCount )
748
732
d .Set ("master_version" , cluster .CurrentMasterVersion )
749
733
d .Set ("node_version" , cluster .CurrentNodeVersion )
@@ -759,31 +743,32 @@ func resourceContainerClusterRead(d *schema.ResourceData, meta interface{}) erro
759
743
return err
760
744
}
761
745
d .Set ("project" , project )
762
- if cluster .AddonsConfig != nil {
763
- d . Set ( "addons_config" , flattenClusterAddonsConfig ( cluster . AddonsConfig ))
746
+ if err := d . Set ( "addons_config" , flattenClusterAddonsConfig ( cluster .AddonsConfig )); err != nil {
747
+
764
748
}
749
+
765
750
nps , err := flattenClusterNodePools (d , config , cluster .NodePools )
766
751
if err != nil {
767
752
return err
768
753
}
769
- d .Set ("node_pool" , nps )
754
+ if err := d .Set ("node_pool" , nps ); err != nil {
755
+ return err
756
+ }
770
757
771
- if cluster .IpAllocationPolicy != nil {
772
- if err := d .Set ("ip_allocation_policy" , flattenIPAllocationPolicy (cluster .IpAllocationPolicy )); err != nil {
773
- return err
774
- }
758
+ if err := d .Set ("ip_allocation_policy" , flattenIPAllocationPolicy (cluster .IpAllocationPolicy )); err != nil {
759
+ return err
775
760
}
776
761
777
- if igUrls , err := getInstanceGroupUrlsFromManagerUrls (config , cluster .InstanceGroupUrls ); err != nil {
762
+ igUrls , err := getInstanceGroupUrlsFromManagerUrls (config , cluster .InstanceGroupUrls )
763
+ if err != nil {
764
+ return err
765
+ }
766
+ if err := d .Set ("instance_group_urls" , igUrls ); err != nil {
778
767
return err
779
- } else {
780
- d .Set ("instance_group_urls" , igUrls )
781
768
}
782
769
783
- if cluster .PodSecurityPolicyConfig != nil {
784
- if err := d .Set ("pod_security_policy_config" , flattenPodSecurityPolicyConfig (cluster .PodSecurityPolicyConfig )); err != nil {
785
- return err
786
- }
770
+ if err := d .Set ("pod_security_policy_config" , flattenPodSecurityPolicyConfig (cluster .PodSecurityPolicyConfig )); err != nil {
771
+ return err
787
772
}
788
773
789
774
d .Set ("private_cluster" , cluster .PrivateCluster )
@@ -1386,6 +1371,9 @@ func flattenNetworkPolicy(c *containerBeta.NetworkPolicy) []map[string]interface
1386
1371
1387
1372
func flattenClusterAddonsConfig (c * containerBeta.AddonsConfig ) []map [string ]interface {} {
1388
1373
result := make (map [string ]interface {})
1374
+ if c == nil {
1375
+ return nil
1376
+ }
1389
1377
if c .HorizontalPodAutoscaling != nil {
1390
1378
result ["horizontal_pod_autoscaling" ] = []map [string ]interface {}{
1391
1379
{
@@ -1433,6 +1421,9 @@ func flattenClusterNodePools(d *schema.ResourceData, config *Config, c []*contai
1433
1421
}
1434
1422
1435
1423
func flattenIPAllocationPolicy (c * containerBeta.IPAllocationPolicy ) []map [string ]interface {} {
1424
+ if c == nil {
1425
+ return nil
1426
+ }
1436
1427
return []map [string ]interface {}{
1437
1428
{
1438
1429
"cluster_secondary_range_name" : c .ClusterSecondaryRangeName ,
@@ -1442,6 +1433,9 @@ func flattenIPAllocationPolicy(c *containerBeta.IPAllocationPolicy) []map[string
1442
1433
}
1443
1434
1444
1435
func flattenMaintenancePolicy (mp * containerBeta.MaintenancePolicy ) []map [string ]interface {} {
1436
+ if mp == nil {
1437
+ return nil
1438
+ }
1445
1439
return []map [string ]interface {}{
1446
1440
{
1447
1441
"daily_maintenance_window" : []map [string ]interface {}{
@@ -1454,7 +1448,31 @@ func flattenMaintenancePolicy(mp *containerBeta.MaintenancePolicy) []map[string]
1454
1448
}
1455
1449
}
1456
1450
1451
+ func flattenMasterAuth (ma * containerBeta.MasterAuth ) []map [string ]interface {} {
1452
+ if ma == nil {
1453
+ return nil
1454
+ }
1455
+ masterAuth := []map [string ]interface {}{
1456
+ {
1457
+ "username" : ma .Username ,
1458
+ "password" : ma .Password ,
1459
+ "client_certificate" : ma .ClientCertificate ,
1460
+ "client_key" : ma .ClientKey ,
1461
+ "cluster_ca_certificate" : ma .ClusterCaCertificate ,
1462
+ },
1463
+ }
1464
+ if len (ma .ClientCertificate ) == 0 {
1465
+ masterAuth [0 ]["client_certificate_config" ] = []map [string ]interface {}{
1466
+ {"issue_client_certificate" : false },
1467
+ }
1468
+ }
1469
+ return masterAuth
1470
+ }
1471
+
1457
1472
func flattenMasterAuthorizedNetworksConfig (c * containerBeta.MasterAuthorizedNetworksConfig ) []map [string ]interface {} {
1473
+ if c == nil {
1474
+ return nil
1475
+ }
1458
1476
if len (c .CidrBlocks ) == 0 {
1459
1477
return nil
1460
1478
}
@@ -1473,6 +1491,9 @@ func flattenMasterAuthorizedNetworksConfig(c *containerBeta.MasterAuthorizedNetw
1473
1491
}
1474
1492
1475
1493
func flattenPodSecurityPolicyConfig (c * containerBeta.PodSecurityPolicyConfig ) []map [string ]interface {} {
1494
+ if c == nil {
1495
+ return nil
1496
+ }
1476
1497
return []map [string ]interface {}{
1477
1498
{
1478
1499
"enabled" : c .Enabled ,
0 commit comments