Skip to content

Commit 8a4b59e

Browse files
Added MigInstancesAllowed to os_config_patch_deployment (#5807) (#11447)
Signed-off-by: Modular Magician <[email protected]>
1 parent ed92560 commit 8a4b59e

4 files changed

+34
-0
lines changed

.changelog/5807.txt

+3
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:enhancement
2+
os-config: added field `migInstancesAllowed` to resource `os_config_patch_deployment`
3+
```

google/resource_os_config_patch_deployment.go

+23
Original file line numberDiff line numberDiff line change
@@ -221,6 +221,12 @@ any other patch configuration fields.`,
221221
},
222222
AtLeastOneOf: []string{"patch_config.0.reboot_config", "patch_config.0.apt", "patch_config.0.yum", "patch_config.0.goo", "patch_config.0.zypper", "patch_config.0.windows_update", "patch_config.0.pre_step", "patch_config.0.post_step"},
223223
},
224+
"mig_instances_allowed": {
225+
Type: schema.TypeBool,
226+
Optional: true,
227+
ForceNew: true,
228+
Description: `Allows the patch job to run on Managed instance groups (MIGs).`,
229+
},
224230
"post_step": {
225231
Type: schema.TypeList,
226232
Optional: true,
@@ -1255,6 +1261,8 @@ func flattenOSConfigPatchDeploymentPatchConfig(v interface{}, d *schema.Resource
12551261
return nil
12561262
}
12571263
transformed := make(map[string]interface{})
1264+
transformed["mig_instances_allowed"] =
1265+
flattenOSConfigPatchDeploymentPatchConfigMigInstancesAllowed(original["migInstancesAllowed"], d, config)
12581266
transformed["reboot_config"] =
12591267
flattenOSConfigPatchDeploymentPatchConfigRebootConfig(original["rebootConfig"], d, config)
12601268
transformed["apt"] =
@@ -1273,6 +1281,10 @@ func flattenOSConfigPatchDeploymentPatchConfig(v interface{}, d *schema.Resource
12731281
flattenOSConfigPatchDeploymentPatchConfigPostStep(original["postStep"], d, config)
12741282
return []interface{}{transformed}
12751283
}
1284+
func flattenOSConfigPatchDeploymentPatchConfigMigInstancesAllowed(v interface{}, d *schema.ResourceData, config *Config) interface{} {
1285+
return v
1286+
}
1287+
12761288
func flattenOSConfigPatchDeploymentPatchConfigRebootConfig(v interface{}, d *schema.ResourceData, config *Config) interface{} {
12771289
return v
12781290
}
@@ -2150,6 +2162,13 @@ func expandOSConfigPatchDeploymentPatchConfig(v interface{}, d TerraformResource
21502162
original := raw.(map[string]interface{})
21512163
transformed := make(map[string]interface{})
21522164

2165+
transformedMigInstancesAllowed, err := expandOSConfigPatchDeploymentPatchConfigMigInstancesAllowed(original["mig_instances_allowed"], d, config)
2166+
if err != nil {
2167+
return nil, err
2168+
} else if val := reflect.ValueOf(transformedMigInstancesAllowed); val.IsValid() && !isEmptyValue(val) {
2169+
transformed["migInstancesAllowed"] = transformedMigInstancesAllowed
2170+
}
2171+
21532172
transformedRebootConfig, err := expandOSConfigPatchDeploymentPatchConfigRebootConfig(original["reboot_config"], d, config)
21542173
if err != nil {
21552174
return nil, err
@@ -2209,6 +2228,10 @@ func expandOSConfigPatchDeploymentPatchConfig(v interface{}, d TerraformResource
22092228
return transformed, nil
22102229
}
22112230

2231+
func expandOSConfigPatchDeploymentPatchConfigMigInstancesAllowed(v interface{}, d TerraformResourceData, config *Config) (interface{}, error) {
2232+
return v, nil
2233+
}
2234+
22122235
func expandOSConfigPatchDeploymentPatchConfigRebootConfig(v interface{}, d TerraformResourceData, config *Config) (interface{}, error) {
22132236
return v, nil
22142237
}

google/resource_os_config_patch_deployment_generated_test.go

+2
Original file line numberDiff line numberDiff line change
@@ -297,6 +297,8 @@ resource "google_os_config_patch_deployment" "patch" {
297297
}
298298
299299
patch_config {
300+
mig_instances_allowed = true
301+
300302
reboot_config = "ALWAYS"
301303
302304
apt {

website/docs/r/os_config_patch_deployment.html.markdown

+6
Original file line numberDiff line numberDiff line change
@@ -208,6 +208,8 @@ resource "google_os_config_patch_deployment" "patch" {
208208
}
209209
210210
patch_config {
211+
mig_instances_allowed = true
212+
211213
reboot_config = "ALWAYS"
212214
213215
apt {
@@ -388,6 +390,10 @@ The following arguments are supported:
388390

389391
<a name="nested_patch_config"></a>The `patch_config` block supports:
390392

393+
* `mig_instances_allowed` -
394+
(Optional)
395+
Allows the patch job to run on Managed instance groups (MIGs).
396+
391397
* `reboot_config` -
392398
(Optional)
393399
Post-patch reboot settings.

0 commit comments

Comments
 (0)