@@ -240,7 +240,7 @@ func expandNodeConfig(v interface{}) *containerBeta.NodeConfig {
240
240
nc .MinCpuPlatform = v .(string )
241
241
}
242
242
243
- if v , ok := nodeConfig ["workload_metadata_config" ]; ok {
243
+ if v , ok := nodeConfig ["workload_metadata_config" ]; ok && len ( v .([] interface {})) > 0 {
244
244
conf := v .([]interface {})[0 ].(map [string ]interface {})
245
245
nc .WorkloadMetadataConfig = & containerBeta.WorkloadMetadataConfig {
246
246
NodeMetadata : conf ["node_metadata" ].(string ),
@@ -260,7 +260,7 @@ func flattenNodeConfig(c *containerBeta.NodeConfig) []map[string]interface{} {
260
260
config = append (config , map [string ]interface {}{
261
261
"machine_type" : c .MachineType ,
262
262
"disk_size_gb" : c .DiskSizeGb ,
263
- "guest_accelerator" : c .Accelerators ,
263
+ "guest_accelerator" : flattenContainerGuestAccelerators ( c .Accelerators ) ,
264
264
"local_ssd_count" : c .LocalSsdCount ,
265
265
"service_account" : c .ServiceAccount ,
266
266
"metadata" : c .Metadata ,
@@ -279,6 +279,17 @@ func flattenNodeConfig(c *containerBeta.NodeConfig) []map[string]interface{} {
279
279
return config
280
280
}
281
281
282
+ func flattenContainerGuestAccelerators (c []* containerBeta.AcceleratorConfig ) []map [string ]interface {} {
283
+ result := []map [string ]interface {}{}
284
+ for _ , accel := range c {
285
+ result = append (result , map [string ]interface {}{
286
+ "count" : accel .AcceleratorCount ,
287
+ "type" : accel .AcceleratorType ,
288
+ })
289
+ }
290
+ return result
291
+ }
292
+
282
293
func flattenWorkloadMetadataConfig (c * containerBeta.WorkloadMetadataConfig ) []map [string ]interface {} {
283
294
result := []map [string ]interface {}{}
284
295
if c != nil {
0 commit comments