Skip to content

Commit 832e651

Browse files
Add support for GPU redundancy to Cloud Run v2 job (#14519) (#10377)
[upstream:3cb9d50ba9a24bb671afa70a8727ee4c33a9fc3d] Signed-off-by: Modular Magician <magic-modules@google.com>
1 parent c9c69c9 commit 832e651

File tree

6 files changed

+34
-0
lines changed

6 files changed

+34
-0
lines changed

.changelog/14519.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:enhancement
2+
cloudrunv2: added `gpu_zonal_redundancy_disabled` field to `google_cloud_run_v2_job` resource.
3+
```

google-beta/services/cloudrunv2/resource_cloud_run_v2_job.go

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -338,6 +338,12 @@ Must be smaller than periodSeconds.`,
338338
ValidateFunc: verify.ValidateEnum([]string{"EXECUTION_ENVIRONMENT_GEN1", "EXECUTION_ENVIRONMENT_GEN2", ""}),
339339
Description: `The execution environment being used to host this Task. Possible values: ["EXECUTION_ENVIRONMENT_GEN1", "EXECUTION_ENVIRONMENT_GEN2"]`,
340340
},
341+
"gpu_zonal_redundancy_disabled": {
342+
Type: schema.TypeBool,
343+
Computed: true,
344+
Optional: true,
345+
Description: `True if GPU zonal redundancy is disabled on this execution.`,
346+
},
341347
"max_retries": {
342348
Type: schema.TypeInt,
343349
Optional: true,
@@ -1642,6 +1648,8 @@ func flattenCloudRunV2JobTemplateTemplate(v interface{}, d *schema.ResourceData,
16421648
flattenCloudRunV2JobTemplateTemplateMaxRetries(original["maxRetries"], d, config)
16431649
transformed["node_selector"] =
16441650
flattenCloudRunV2JobTemplateTemplateNodeSelector(original["nodeSelector"], d, config)
1651+
transformed["gpu_zonal_redundancy_disabled"] =
1652+
flattenCloudRunV2JobTemplateTemplateGpuZonalRedundancyDisabled(original["gpuZonalRedundancyDisabled"], d, config)
16451653
return []interface{}{transformed}
16461654
}
16471655
func flattenCloudRunV2JobTemplateTemplateContainers(v interface{}, d *schema.ResourceData, config *transport_tpg.Config) interface{} {
@@ -2374,6 +2382,10 @@ func flattenCloudRunV2JobTemplateTemplateNodeSelectorAccelerator(v interface{},
23742382
return v
23752383
}
23762384

2385+
func flattenCloudRunV2JobTemplateTemplateGpuZonalRedundancyDisabled(v interface{}, d *schema.ResourceData, config *transport_tpg.Config) interface{} {
2386+
return v
2387+
}
2388+
23772389
func flattenCloudRunV2JobObservedGeneration(v interface{}, d *schema.ResourceData, config *transport_tpg.Config) interface{} {
23782390
return v
23792391
}
@@ -2785,6 +2797,13 @@ func expandCloudRunV2JobTemplateTemplate(v interface{}, d tpgresource.TerraformR
27852797
transformed["nodeSelector"] = transformedNodeSelector
27862798
}
27872799

2800+
transformedGpuZonalRedundancyDisabled, err := expandCloudRunV2JobTemplateTemplateGpuZonalRedundancyDisabled(original["gpu_zonal_redundancy_disabled"], d, config)
2801+
if err != nil {
2802+
return nil, err
2803+
} else {
2804+
transformed["gpuZonalRedundancyDisabled"] = transformedGpuZonalRedundancyDisabled
2805+
}
2806+
27882807
return transformed, nil
27892808
}
27902809

@@ -3762,6 +3781,10 @@ func expandCloudRunV2JobTemplateTemplateNodeSelectorAccelerator(v interface{}, d
37623781
return v, nil
37633782
}
37643783

3784+
func expandCloudRunV2JobTemplateTemplateGpuZonalRedundancyDisabled(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (interface{}, error) {
3785+
return v, nil
3786+
}
3787+
37653788
func expandCloudRunV2JobEffectiveLabels(v interface{}, d tpgresource.TerraformResourceData, config *transport_tpg.Config) (map[string]string, error) {
37663789
if v == nil {
37673790
return map[string]string{}, nil

google-beta/services/cloudrunv2/resource_cloud_run_v2_job_generated_meta.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,7 @@ fields:
7878
- field: 'template.template.containers.working_dir'
7979
- field: 'template.template.encryption_key'
8080
- field: 'template.template.execution_environment'
81+
- field: 'template.template.gpu_zonal_redundancy_disabled'
8182
- field: 'template.template.max_retries'
8283
- field: 'template.template.node_selector.accelerator'
8384
- field: 'template.template.service_account'

google-beta/services/cloudrunv2/resource_cloud_run_v2_job_generated_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -618,6 +618,7 @@ resource "google_cloud_run_v2_job" "default" {
618618
node_selector {
619619
accelerator = "nvidia-l4"
620620
}
621+
gpu_zonal_redundancy_disabled = true
621622
}
622623
}
623624
}

google-beta/services/cloudrunv2/resource_cloud_run_v2_job_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1067,6 +1067,7 @@ func testAccCloudRunV2Job_cloudrunv2JobWithGpu(context map[string]interface{}) s
10671067
node_selector {
10681068
accelerator = "nvidia-l4"
10691069
}
1070+
gpu_zonal_redundancy_disabled = true
10701071
}
10711072
}
10721073
lifecycle {

website/docs/r/cloud_run_v2_job.html.markdown

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -419,6 +419,7 @@ resource "google_cloud_run_v2_job" "default" {
419419
node_selector {
420420
accelerator = "nvidia-l4"
421421
}
422+
gpu_zonal_redundancy_disabled = true
422423
}
423424
}
424425
}
@@ -578,6 +579,10 @@ When the field is set to false, deleting the job is allowed.
578579
Node Selector describes the hardware requirements of the resources.
579580
Structure is [documented below](#nested_template_template_node_selector).
580581

582+
* `gpu_zonal_redundancy_disabled` -
583+
(Optional)
584+
True if GPU zonal redundancy is disabled on this execution.
585+
581586

582587
<a name="nested_template_template_containers"></a>The `containers` block supports:
583588

0 commit comments

Comments
 (0)