Skip to content

Commit b6d1752

Browse files
add requireVerifiedChromeOs as optional (#4758) (#3223)
* add requireVerifiedChromeOs as optional see https://cloud.google.com/access-context-manager/docs/access-level-attributes * add to tests Signed-off-by: Modular Magician <[email protected]>
1 parent 7af0e9a commit b6d1752

File tree

5 files changed

+32
-2
lines changed

5 files changed

+32
-2
lines changed

.changelog/4758.txt

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
```release-note:enhancement
2+
accesscontextmanager: added support for `require_verified_chrome_os` in basic access levels.
3+
```

google-beta/resource_access_context_manager_access_level.go

Lines changed: 23 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -126,6 +126,11 @@ An empty list allows all types and all versions.`,
126126
of this OS satisfies the constraint.
127127
Format: "major.minor.patch" such as "10.5.301", "9.2.1".`,
128128
},
129+
"require_verified_chrome_os": {
130+
Type: schema.TypeBool,
131+
Optional: true,
132+
Description: `If you specify DESKTOP_CHROME_OS for osType, you can optionally include requireVerifiedChromeOs to require Chrome Verified Access.`,
133+
},
129134
},
130135
},
131136
},
@@ -695,8 +700,9 @@ func flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstrai
695700
continue
696701
}
697702
transformed = append(transformed, map[string]interface{}{
698-
"minimum_version": flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsMinimumVersion(original["minimumVersion"], d, config),
699-
"os_type": flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOsType(original["osType"], d, config),
703+
"minimum_version": flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsMinimumVersion(original["minimumVersion"], d, config),
704+
"require_verified_chrome_os": flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsRequireVerifiedChromeOs(original["requireVerifiedChromeOs"], d, config),
705+
"os_type": flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOsType(original["osType"], d, config),
700706
})
701707
}
702708
return transformed
@@ -705,6 +711,10 @@ func flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstrai
705711
return v
706712
}
707713

714+
func flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsRequireVerifiedChromeOs(v interface{}, d *schema.ResourceData, config *Config) interface{} {
715+
return v
716+
}
717+
708718
func flattenAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOsType(v interface{}, d *schema.ResourceData, config *Config) interface{} {
709719
return v
710720
}
@@ -967,6 +977,13 @@ func expandAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstrain
967977
transformed["minimumVersion"] = transformedMinimumVersion
968978
}
969979

980+
transformedRequireVerifiedChromeOs, err := expandAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsRequireVerifiedChromeOs(original["require_verified_chrome_os"], d, config)
981+
if err != nil {
982+
return nil, err
983+
} else if val := reflect.ValueOf(transformedRequireVerifiedChromeOs); val.IsValid() && !isEmptyValue(val) {
984+
transformed["requireVerifiedChromeOs"] = transformedRequireVerifiedChromeOs
985+
}
986+
970987
transformedOsType, err := expandAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOsType(original["os_type"], d, config)
971988
if err != nil {
972989
return nil, err
@@ -983,6 +1000,10 @@ func expandAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstrain
9831000
return v, nil
9841001
}
9851002

1003+
func expandAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsRequireVerifiedChromeOs(v interface{}, d TerraformResourceData, config *Config) (interface{}, error) {
1004+
return v, nil
1005+
}
1006+
9861007
func expandAccessContextManagerAccessLevelBasicConditionsDevicePolicyOsConstraintsOsType(v interface{}, d TerraformResourceData, config *Config) (interface{}, error) {
9871008
return v, nil
9881009
}

google-beta/resource_access_context_manager_access_level_condition_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ resource "google_access_context_manager_access_level" "test-access" {
115115
require_screen_lock = true
116116
os_constraints {
117117
os_type = "DESKTOP_CHROME_OS"
118+
require_verified_chrome_os = true
118119
}
119120
}
120121
regions = [

google-beta/resource_access_context_manager_access_level_test.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -192,6 +192,7 @@ resource "google_access_context_manager_access_level" "test-access" {
192192
require_corp_owned = true
193193
os_constraints {
194194
os_type = "DESKTOP_CHROME_OS"
195+
require_verified_chrome_os = true
195196
}
196197
}
197198
regions = [

website/docs/r/access_context_manager_access_level.html.markdown

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,10 @@ The `os_constraints` block supports:
223223
of this OS satisfies the constraint.
224224
Format: "major.minor.patch" such as "10.5.301", "9.2.1".
225225

226+
* `require_verified_chrome_os` -
227+
(Optional)
228+
If you specify DESKTOP_CHROME_OS for osType, you can optionally include requireVerifiedChromeOs to require Chrome Verified Access.
229+
226230
* `os_type` -
227231
(Required)
228232
The operating system type of the device.

0 commit comments

Comments
 (0)