Skip to content

Commit 90804a5

Browse files
thoufic67mthoufic
andauthored
feat: Add oneofValue to parameter_value for Cloud Security compliance (#15837)
Co-authored-by: Thoufic <[email protected]>
1 parent 554d895 commit 90804a5

File tree

4 files changed

+244
-0
lines changed

4 files changed

+244
-0
lines changed

mmv1/products/cloudsecuritycompliance/Framework.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,36 @@ properties:
118118
- name: stringValue
119119
type: String
120120
description: Represents a string value.
121+
- name: oneofValue
122+
type: NestedObject
123+
description: Sub-parameter values.
124+
properties:
125+
- name: name
126+
type: String
127+
description: The name of the parameter.
128+
- name: parameterValue
129+
type: NestedObject
130+
description: The value of the parameter.
131+
properties:
132+
- name: boolValue
133+
type: Boolean
134+
description: Represents a boolean value.
135+
- name: numberValue
136+
type: Double
137+
description: Represents a double value.
138+
- name: stringListValue
139+
type: NestedObject
140+
description: A list of strings.
141+
properties:
142+
- name: values
143+
type: Array
144+
description: The strings in the list.
145+
required: true
146+
item_type:
147+
type: String
148+
- name: stringValue
149+
type: String
150+
description: Represents a string value.
121151
- name: description
122152
type: String
123153
description: The description of the framework. The maximum length is 2000 characters.

mmv1/products/cloudsecuritycompliance/FrameworkDeployment.yaml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -176,6 +176,36 @@ properties:
176176
- name: stringValue
177177
type: String
178178
description: Represents a string value.
179+
- name: oneofValue
180+
type: NestedObject
181+
description: Sub-parameter values.
182+
properties:
183+
- name: name
184+
type: String
185+
description: The name of the parameter.
186+
- name: parameterValue
187+
type: NestedObject
188+
description: The value of the parameter.
189+
properties:
190+
- name: boolValue
191+
type: Boolean
192+
description: Represents a boolean value.
193+
- name: numberValue
194+
type: Double
195+
description: Represents a double value.
196+
- name: stringListValue
197+
type: NestedObject
198+
description: A list of strings.
199+
properties:
200+
- name: values
201+
type: Array
202+
description: The strings in the list.
203+
required: true
204+
item_type:
205+
type: String
206+
- name: stringValue
207+
type: String
208+
description: Represents a string value.
179209
- name: enforcementMode
180210
type: String
181211
description: |-

mmv1/templates/terraform/examples/cloudsecuritycompliance_framework_deployment_basic.tf.tmpl

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,52 @@ resource "google_cloud_security_compliance_framework" "{{$.PrimaryResourceId}}"
1616
string_value = "us-central1"
1717
}
1818
}
19+
parameters {
20+
name = "oneof-parameter"
21+
parameter_value {
22+
oneof_value {
23+
name = "test-oneof"
24+
parameter_value {
25+
string_value = "test-value"
26+
}
27+
}
28+
}
29+
}
30+
parameters {
31+
name = "bool-parameter"
32+
parameter_value {
33+
oneof_value {
34+
name = "bool-oneof"
35+
parameter_value {
36+
bool_value = true
37+
}
38+
}
39+
}
40+
}
41+
parameters {
42+
name = "number-parameter"
43+
parameter_value {
44+
oneof_value {
45+
name = "number-oneof"
46+
parameter_value {
47+
number_value = 123.45
48+
}
49+
}
50+
}
51+
}
52+
parameters {
53+
name = "string-list-parameter"
54+
parameter_value {
55+
oneof_value {
56+
name = "string-list-oneof"
57+
parameter_value {
58+
string_list_value {
59+
values = ["value1", "value2"]
60+
}
61+
}
62+
}
63+
}
64+
}
1965
}
2066
}
2167

@@ -63,6 +109,52 @@ resource "google_cloud_security_compliance_framework_deployment" "{{$.PrimaryRes
63109
string_value = "us-central1"
64110
}
65111
}
112+
parameters {
113+
name = "oneof-parameter"
114+
parameter_value {
115+
oneof_value {
116+
name = "test-oneof"
117+
parameter_value {
118+
string_value = "test-value"
119+
}
120+
}
121+
}
122+
}
123+
parameters {
124+
name = "bool-parameter"
125+
parameter_value {
126+
oneof_value {
127+
name = "bool-oneof"
128+
parameter_value {
129+
bool_value = true
130+
}
131+
}
132+
}
133+
}
134+
parameters {
135+
name = "number-parameter"
136+
parameter_value {
137+
oneof_value {
138+
name = "number-oneof"
139+
parameter_value {
140+
number_value = 123.45
141+
}
142+
}
143+
}
144+
}
145+
parameters {
146+
name = "string-list-parameter"
147+
parameter_value {
148+
oneof_value {
149+
name = "string-list-oneof"
150+
parameter_value {
151+
string_list_value {
152+
values = ["value1", "value2"]
153+
}
154+
}
155+
}
156+
}
157+
}
66158
}
67159
}
68160

mmv1/third_party/terraform/services/cloudsecuritycompliance/resource_cloud_security_compliance_framework_test.go

Lines changed: 92 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -30,6 +30,52 @@ resource "google_cloud_security_compliance_framework" "example" {
3030
string_value = "us-central1"
3131
}
3232
}
33+
parameters {
34+
name = "oneof-parameter"
35+
parameter_value {
36+
oneof_value {
37+
name = "test-oneof"
38+
parameter_value {
39+
string_value = "test-value"
40+
}
41+
}
42+
}
43+
}
44+
parameters {
45+
name = "bool-parameter"
46+
parameter_value {
47+
oneof_value {
48+
name = "bool-oneof"
49+
parameter_value {
50+
bool_value = true
51+
}
52+
}
53+
}
54+
}
55+
parameters {
56+
name = "number-parameter"
57+
parameter_value {
58+
oneof_value {
59+
name = "number-oneof"
60+
parameter_value {
61+
number_value = 123.45
62+
}
63+
}
64+
}
65+
}
66+
parameters {
67+
name = "string-list-parameter"
68+
parameter_value {
69+
oneof_value {
70+
name = "string-list-oneof"
71+
parameter_value {
72+
string_list_value {
73+
values = ["value1", "value2"]
74+
}
75+
}
76+
}
77+
}
78+
}
3379
}
3480
}
3581
`, context)
@@ -94,6 +140,52 @@ resource "google_cloud_security_compliance_framework" "example" {
94140
string_value = "eu"
95141
}
96142
}
143+
parameters {
144+
name = "oneof-parameter"
145+
parameter_value {
146+
oneof_value {
147+
name = "updated-oneof"
148+
parameter_value {
149+
string_value = "updated-value"
150+
}
151+
}
152+
}
153+
}
154+
parameters {
155+
name = "bool-parameter"
156+
parameter_value {
157+
oneof_value {
158+
name = "bool-oneof"
159+
parameter_value {
160+
bool_value = true
161+
}
162+
}
163+
}
164+
}
165+
parameters {
166+
name = "number-parameter"
167+
parameter_value {
168+
oneof_value {
169+
name = "number-oneof"
170+
parameter_value {
171+
number_value = 678.90
172+
}
173+
}
174+
}
175+
}
176+
parameters {
177+
name = "string-list-parameter"
178+
parameter_value {
179+
oneof_value {
180+
name = "string-list-oneof"
181+
parameter_value {
182+
string_list_value {
183+
values = ["value3", "value4"]
184+
}
185+
}
186+
}
187+
}
188+
}
97189
}
98190
}
99191
`, context)

0 commit comments

Comments
 (0)