google-cloud-cloud_security_compliance-v1 0.a → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +122 -0
  4. data/README.md +154 -8
  5. data/lib/google/cloud/cloud_security_compliance/v1/bindings_override.rb +75 -0
  6. data/lib/google/cloud/cloud_security_compliance/v1/config/client.rb +1467 -0
  7. data/lib/google/cloud/cloud_security_compliance/v1/config/credentials.rb +47 -0
  8. data/lib/google/cloud/cloud_security_compliance/v1/config/paths.rb +88 -0
  9. data/lib/google/cloud/cloud_security_compliance/v1/config/rest/client.rb +1379 -0
  10. data/lib/google/cloud/cloud_security_compliance/v1/config/rest/service_stub.rb +695 -0
  11. data/lib/google/cloud/cloud_security_compliance/v1/config/rest.rb +54 -0
  12. data/lib/google/cloud/cloud_security_compliance/v1/config.rb +56 -0
  13. data/lib/google/cloud/cloud_security_compliance/v1/deployment/client.rb +1047 -0
  14. data/lib/google/cloud/cloud_security_compliance/v1/deployment/credentials.rb +47 -0
  15. data/lib/google/cloud/cloud_security_compliance/v1/deployment/operations.rb +824 -0
  16. data/lib/google/cloud/cloud_security_compliance/v1/deployment/paths.rb +88 -0
  17. data/lib/google/cloud/cloud_security_compliance/v1/deployment/rest/client.rb +987 -0
  18. data/lib/google/cloud/cloud_security_compliance/v1/deployment/rest/operations.rb +925 -0
  19. data/lib/google/cloud/cloud_security_compliance/v1/deployment/rest/service_stub.rb +448 -0
  20. data/lib/google/cloud/cloud_security_compliance/v1/deployment/rest.rb +55 -0
  21. data/lib/google/cloud/cloud_security_compliance/v1/deployment.rb +57 -0
  22. data/lib/google/cloud/cloud_security_compliance/v1/rest.rb +39 -0
  23. data/lib/google/cloud/cloud_security_compliance/v1/version.rb +7 -2
  24. data/lib/google/cloud/cloud_security_compliance/v1.rb +46 -0
  25. data/lib/google/cloud/cloudsecuritycompliance/v1/common_pb.rb +73 -0
  26. data/lib/google/cloud/cloudsecuritycompliance/v1/config_pb.rb +63 -0
  27. data/lib/google/cloud/cloudsecuritycompliance/v1/config_services_pb.rb +117 -0
  28. data/lib/google/cloud/cloudsecuritycompliance/v1/deployment_pb.rb +70 -0
  29. data/lib/google/cloud/cloudsecuritycompliance/v1/deployment_services_pb.rb +56 -0
  30. data/lib/google-cloud-cloud_security_compliance-v1.rb +21 -0
  31. data/proto_docs/README.md +4 -0
  32. data/proto_docs/google/api/client.rb +473 -0
  33. data/proto_docs/google/api/field_behavior.rb +85 -0
  34. data/proto_docs/google/api/launch_stage.rb +71 -0
  35. data/proto_docs/google/api/resource.rb +227 -0
  36. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/common.rb +638 -0
  37. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/config.rb +223 -0
  38. data/proto_docs/google/cloud/cloudsecuritycompliance/v1/deployment.rb +429 -0
  39. data/proto_docs/google/longrunning/operations.rb +191 -0
  40. data/proto_docs/google/protobuf/any.rb +145 -0
  41. data/proto_docs/google/protobuf/duration.rb +98 -0
  42. data/proto_docs/google/protobuf/empty.rb +34 -0
  43. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  44. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  45. data/proto_docs/google/rpc/status.rb +48 -0
  46. metadata +93 -9
@@ -0,0 +1,223 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module CloudSecurityCompliance
23
+ module V1
24
+ # Request message for listing Frameworks.
25
+ # @!attribute [rw] parent
26
+ # @return [::String]
27
+ # Required. The parent resource name, in the format
28
+ # `organizations/{organization}/locations/{location}`.
29
+ # Only global location is supported.
30
+ # @!attribute [rw] page_size
31
+ # @return [::Integer]
32
+ # Optional. The maximum number of frameworks to return. The default value is
33
+ # `500`.
34
+ #
35
+ # If you exceed the maximum value of `1000`, then the service uses the
36
+ # maximum value.
37
+ # @!attribute [rw] page_token
38
+ # @return [::String]
39
+ # Optional. A pagination token returned from a previous request to list
40
+ # frameworks. Provide this token to retrieve the next page of results.
41
+ class ListFrameworksRequest
42
+ include ::Google::Protobuf::MessageExts
43
+ extend ::Google::Protobuf::MessageExts::ClassMethods
44
+ end
45
+
46
+ # Response message for listing Frameworks.
47
+ # Contains a paginated list of Framework resources.
48
+ # @!attribute [rw] frameworks
49
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::Framework>]
50
+ # The list of Framework resources.
51
+ # @!attribute [rw] next_page_token
52
+ # @return [::String]
53
+ # A pagination token. To retrieve the next page of results, call the method
54
+ # again with this token.
55
+ class ListFrameworksResponse
56
+ include ::Google::Protobuf::MessageExts
57
+ extend ::Google::Protobuf::MessageExts::ClassMethods
58
+ end
59
+
60
+ # Request message for getting a Framework.
61
+ # @!attribute [rw] name
62
+ # @return [::String]
63
+ # Required. The name of the framework to retrieve.
64
+ # Format:
65
+ # organizations/\\{organization}/locations/\\{location}/frameworks/\\{framework_id}
66
+ # @!attribute [rw] major_revision_id
67
+ # @return [::Integer]
68
+ # Optional. The Framework major version to retrieve. If not specified, the
69
+ # most recently updated revision_id is retrieved.
70
+ class GetFrameworkRequest
71
+ include ::Google::Protobuf::MessageExts
72
+ extend ::Google::Protobuf::MessageExts::ClassMethods
73
+ end
74
+
75
+ # Request message for creating a Framework
76
+ # @!attribute [rw] parent
77
+ # @return [::String]
78
+ # Required. The parent resource name, in the format
79
+ # `organizations/{organization}/locations/{location}`.
80
+ # @!attribute [rw] framework_id
81
+ # @return [::String]
82
+ # Required. ID of the framework.
83
+ # This is not the full name of the framework.
84
+ # This is the last part of the full name of the framework.
85
+ # @!attribute [rw] framework
86
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::Framework]
87
+ # Required. The resource being created
88
+ class CreateFrameworkRequest
89
+ include ::Google::Protobuf::MessageExts
90
+ extend ::Google::Protobuf::MessageExts::ClassMethods
91
+ end
92
+
93
+ # Request message for updating a Framework.
94
+ # @!attribute [rw] update_mask
95
+ # @return [::Google::Protobuf::FieldMask]
96
+ # Optional. Field mask is used to specify the fields to be overwritten in the
97
+ # Framework resource by the update.
98
+ # The fields specified in the update_mask are relative to the resource, not
99
+ # the full request. A field will be overwritten if it is in the mask. If the
100
+ # user does not provide a mask then all fields present in the request will be
101
+ # overwritten.
102
+ # @!attribute [rw] framework
103
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::Framework]
104
+ # Required. The resource being updated
105
+ # @!attribute [rw] major_revision_id
106
+ # @return [::Integer]
107
+ # Optional. The major version ID of the framework to update.
108
+ class UpdateFrameworkRequest
109
+ include ::Google::Protobuf::MessageExts
110
+ extend ::Google::Protobuf::MessageExts::ClassMethods
111
+ end
112
+
113
+ # Request message for deleting a Framework.
114
+ # @!attribute [rw] name
115
+ # @return [::String]
116
+ # Required. Name of the resource, in the format
117
+ # `organizations/{organization}/locations/{location}/frameworks/{framework}`.
118
+ class DeleteFrameworkRequest
119
+ include ::Google::Protobuf::MessageExts
120
+ extend ::Google::Protobuf::MessageExts::ClassMethods
121
+ end
122
+
123
+ # Request message for listing CloudControls.
124
+ # @!attribute [rw] parent
125
+ # @return [::String]
126
+ # Required. The parent resource name, in the format
127
+ # `organizations/{organization}/locations/{location}`.
128
+ # @!attribute [rw] page_size
129
+ # @return [::Integer]
130
+ # Optional. The maximum number of CloudControls to return. The default value
131
+ # is `500`.
132
+ #
133
+ # If you exceed the maximum value of `1000`, then the service uses the
134
+ # maximum value.
135
+ # @!attribute [rw] page_token
136
+ # @return [::String]
137
+ # Optional. A pagination token returned from a previous request to list
138
+ # CloudControls. Provide this token to retrieve the next page of results.
139
+ #
140
+ # When paginating, parent provided to
141
+ # ListCloudControls request must match the call that provided the page
142
+ # token.
143
+ class ListCloudControlsRequest
144
+ include ::Google::Protobuf::MessageExts
145
+ extend ::Google::Protobuf::MessageExts::ClassMethods
146
+ end
147
+
148
+ # Response message for ListCloudControls.
149
+ # @!attribute [rw] cloud_controls
150
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudControl>]
151
+ # The list of CloudControl resources.
152
+ # @!attribute [rw] next_page_token
153
+ # @return [::String]
154
+ # A pagination token. To retrieve the next page of results, call the method
155
+ # again with this token.
156
+ class ListCloudControlsResponse
157
+ include ::Google::Protobuf::MessageExts
158
+ extend ::Google::Protobuf::MessageExts::ClassMethods
159
+ end
160
+
161
+ # Request message for getting a CloudControl.
162
+ # @!attribute [rw] name
163
+ # @return [::String]
164
+ # Required. The name of the cloudcontrol to retrieve in the format:
165
+ # organizations/\\{organization}/locations/\\{location}/cloudControls/\\{cloud_control}
166
+ class GetCloudControlRequest
167
+ include ::Google::Protobuf::MessageExts
168
+ extend ::Google::Protobuf::MessageExts::ClassMethods
169
+ end
170
+
171
+ # Request message for creating a CloudControl
172
+ # @!attribute [rw] parent
173
+ # @return [::String]
174
+ # Required. The parent resource name, in the format
175
+ # `organizations/{organization}/locations/{location}`.
176
+ # @!attribute [rw] cloud_control_id
177
+ # @return [::String]
178
+ # Required. ID of the CloudControl.
179
+ # This is the last segment of the CloudControl resource name.
180
+ # Format: `^[a-zA-Z][a-zA-Z0-9-]{0,61}[a-zA-Z0-9]$`.
181
+ # @!attribute [rw] cloud_control
182
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::CloudControl]
183
+ # Required. The resource being created
184
+ class CreateCloudControlRequest
185
+ include ::Google::Protobuf::MessageExts
186
+ extend ::Google::Protobuf::MessageExts::ClassMethods
187
+ end
188
+
189
+ # Request message for UpdateCloudControl.
190
+ # @!attribute [rw] update_mask
191
+ # @return [::Google::Protobuf::FieldMask]
192
+ # Optional. Field mask is used to specify the fields to be overwritten in the
193
+ # CloudControl resource by the update.
194
+ # The fields specified in the update_mask are relative to the resource, not
195
+ # the full request. A field will be overwritten if it is in the mask. If the
196
+ # user does not provide a mask then all fields present in the request will be
197
+ # overwritten. The fields that can be updated are:
198
+ # 1. Display_name
199
+ # 2. Description
200
+ # 3. Parameters
201
+ # 4. Rules
202
+ # 5. ParameterSpec.
203
+ # @!attribute [rw] cloud_control
204
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::CloudControl]
205
+ # Required. The resource being updated
206
+ class UpdateCloudControlRequest
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Request message for deleting a CloudControl.
212
+ # @!attribute [rw] name
213
+ # @return [::String]
214
+ # Required. Name of the resource, in the format
215
+ # `organizations/{organization}/locations/{location}/CloudControls/{CloudControl}`.
216
+ class DeleteCloudControlRequest
217
+ include ::Google::Protobuf::MessageExts
218
+ extend ::Google::Protobuf::MessageExts::ClassMethods
219
+ end
220
+ end
221
+ end
222
+ end
223
+ end
@@ -0,0 +1,429 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2025 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module CloudSecurityCompliance
23
+ module V1
24
+ # FrameworkDeployment represents deployment of a Framework on a target
25
+ # resource. Supported target resources are organizations/\\{organization},
26
+ # folders/\\{folder}, and projects/\\{project}.
27
+ # @!attribute [rw] name
28
+ # @return [::String]
29
+ # Identifier. FrameworkDeployment name in the following format:
30
+ # organizations/\\{organization}/locations/\\{location}/frameworkDeployments/\\{framework_deployment_id}
31
+ # @!attribute [rw] target_resource_config
32
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::TargetResourceConfig]
33
+ # Required. The details of the target resource on which the Framework is to
34
+ # be deployed. It can either be an existing target resource or a new target
35
+ # resource to be created.
36
+ # @!attribute [r] computed_target_resource
37
+ # @return [::String]
38
+ # Output only. The resource on which the Framework is deployed based on the
39
+ # provided TargetResourceConfig in the following format:
40
+ # organizations/\\{organization}, folders/\\{folder} or projects/\\{project}
41
+ # @!attribute [rw] framework
42
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::FrameworkReference]
43
+ # Required. Reference to the framework to be deployed.
44
+ # @!attribute [rw] description
45
+ # @return [::String]
46
+ # Optional. User provided description of the Framework deployment
47
+ # @!attribute [rw] cloud_control_metadata
48
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudControlMetadata>]
49
+ # Required. Deployment mode and parameters for each of the Cloud Controls in
50
+ # the framework. Every Cloud Control in the framework must have a
51
+ # CloudControlMetadata.
52
+ # @!attribute [r] deployment_state
53
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::DeploymentState]
54
+ # Output only. State of the Framework Deployment
55
+ # @!attribute [r] create_time
56
+ # @return [::Google::Protobuf::Timestamp]
57
+ # Output only. The time at which the resource was created.
58
+ # @!attribute [r] update_time
59
+ # @return [::Google::Protobuf::Timestamp]
60
+ # Output only. The time at which the resource last updated.
61
+ # @!attribute [rw] etag
62
+ # @return [::String]
63
+ # Optional. To prevent concurrent updates from overwriting each other, always
64
+ # provide the `etag` when you update a FrameworkDeployment. You can also
65
+ # provide the `etag` when you delete a FrameworkDeployment, to help
66
+ # ensure that you're deleting the intended version of the
67
+ # FrameworkDeployment.
68
+ # @!attribute [r] target_resource_display_name
69
+ # @return [::String]
70
+ # Output only. The display name of the target resource.
71
+ # @!attribute [r] cloud_control_deployment_references
72
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudControlDeploymentReference>]
73
+ # Output only. The references to the cloud control deployments. It has all
74
+ # the CloudControlDeployments which are either directly added in the
75
+ # framework or through a CloudControlGroup. Example: If a framework
76
+ # deployment deploys two cloud controls, cc-deployment-1 and cc-deployment-2,
77
+ # then the cloud_control_deployment_references will be:
78
+ # {
79
+ # cloud_control_deployment_reference: {
80
+ # cloud_control_deployment:
81
+ # "organizations/\\{organization}/locations/\\{location}/cloudControlDeployments/cc-deployment-1"
82
+ # },
83
+ # cloud_control_deployment_reference: {
84
+ # cloud_control_deployment:
85
+ # "organizations/\\{organization}/locations/\\{location}/cloudControlDeployments/cc-deployment-2"
86
+ # }
87
+ class FrameworkDeployment
88
+ include ::Google::Protobuf::MessageExts
89
+ extend ::Google::Protobuf::MessageExts::ClassMethods
90
+ end
91
+
92
+ # CloudControlDeployment represents deployment of a CloudControl on a target
93
+ # resource. Supported target resources are organizations/\\{organization},
94
+ # folders/\\{folder}, and projects/\\{project}.
95
+ # @!attribute [rw] name
96
+ # @return [::String]
97
+ # Identifier. CloudControlDeployment name in the following format:
98
+ # organizations/\\{organization}/locations/\\{location}/cloudControlDeployments/\\{cloud_control_deployment_id}
99
+ # @!attribute [rw] target_resource_config
100
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::TargetResourceConfig]
101
+ # Required. The details of the target resource on which the CloudControl is
102
+ # to be deployed. It can either be an existing target resource or a new
103
+ # target resource to be created.
104
+ # @!attribute [r] target_resource
105
+ # @return [::String]
106
+ # Output only. The resource on which the CloudControl is deployed based on
107
+ # the provided TargetResourceConfig in the following format:
108
+ # organizations/\\{organization}, folders/\\{folder} or projects/\\{project}.
109
+ # @!attribute [rw] cloud_control_metadata
110
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::CloudControlMetadata]
111
+ # Required. Deployment mode and parameters for the Cloud Control.
112
+ # @!attribute [rw] description
113
+ # @return [::String]
114
+ # Optional. User provided description of the CloudControl deployment
115
+ # @!attribute [r] deployment_state
116
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::DeploymentState]
117
+ # Output only. State of the CloudControl deployment
118
+ # @!attribute [r] create_time
119
+ # @return [::Google::Protobuf::Timestamp]
120
+ # Output only. The time at which the resource was created.
121
+ # @!attribute [r] update_time
122
+ # @return [::Google::Protobuf::Timestamp]
123
+ # Output only. The time at which the resource last updated.
124
+ # @!attribute [rw] etag
125
+ # @return [::String]
126
+ # Optional. To prevent concurrent updates from overwriting each other, always
127
+ # provide the `etag` when you update a CloudControlDeployment. You can also
128
+ # provide the `etag` when you delete a CloudControlDeployment, to help
129
+ # ensure that you're deleting the intended version of the
130
+ # CloudControlDeployment.
131
+ # @!attribute [r] parameter_substituted_cloud_control
132
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::CloudControl]
133
+ # Output only. The CloudControl after substitution of given parameters.
134
+ # @!attribute [r] framework_deployment_references
135
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::FrameworkDeploymentReference>]
136
+ # Output only. The references to the Framework deployments that this Cloud
137
+ # Control deployment is part of. A Cloud Control deployment can be part of
138
+ # multiple Framework deployments.
139
+ # @!attribute [r] target_resource_display_name
140
+ # @return [::String]
141
+ # Output only. The display name of the target resource.
142
+ class CloudControlDeployment
143
+ include ::Google::Protobuf::MessageExts
144
+ extend ::Google::Protobuf::MessageExts::ClassMethods
145
+ end
146
+
147
+ # TargetResourceConfig contains either the name of the target_resource or
148
+ # contains the config to create a new target_resource.
149
+ # @!attribute [rw] existing_target_resource
150
+ # @return [::String]
151
+ # Optional. CRM node in format organizations/\\{organization},
152
+ # folders/\\{folder}, or projects/\\{project}
153
+ #
154
+ # Note: The following fields are mutually exclusive: `existing_target_resource`, `target_resource_creation_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
155
+ # @!attribute [rw] target_resource_creation_config
156
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::TargetResourceCreationConfig]
157
+ # Optional. Config to create a new resource and use that as the
158
+ # target_resource for deployment.
159
+ #
160
+ # Note: The following fields are mutually exclusive: `target_resource_creation_config`, `existing_target_resource`. If a field in that set is populated, all other fields in the set will automatically be cleared.
161
+ class TargetResourceConfig
162
+ include ::Google::Protobuf::MessageExts
163
+ extend ::Google::Protobuf::MessageExts::ClassMethods
164
+ end
165
+
166
+ # TargetResourceCreationConfig contains the config to create a new resource to
167
+ # be used as the target_resource of a deployment.
168
+ # @!attribute [rw] folder_creation_config
169
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::FolderCreationConfig]
170
+ # Optional. Config to create a new folder to be used as the target_resource
171
+ # of a deployment.
172
+ #
173
+ # Note: The following fields are mutually exclusive: `folder_creation_config`, `project_creation_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
174
+ # @!attribute [rw] project_creation_config
175
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::ProjectCreationConfig]
176
+ # Optional. Config to create a new project to be used as the
177
+ # target_resource of a deployment.
178
+ #
179
+ # Note: The following fields are mutually exclusive: `project_creation_config`, `folder_creation_config`. If a field in that set is populated, all other fields in the set will automatically be cleared.
180
+ class TargetResourceCreationConfig
181
+ include ::Google::Protobuf::MessageExts
182
+ extend ::Google::Protobuf::MessageExts::ClassMethods
183
+ end
184
+
185
+ # FolderCreationConfig contains the config to create a new folder to be used
186
+ # as the target_resource of a deployment.
187
+ # @!attribute [rw] parent
188
+ # @return [::String]
189
+ # Required. The parent of the folder to be created. It can be an
190
+ # organizations/\\{org} or folders/\\{folder}
191
+ # @!attribute [rw] folder_display_name
192
+ # @return [::String]
193
+ # Required. Display name of the folder to be created
194
+ class FolderCreationConfig
195
+ include ::Google::Protobuf::MessageExts
196
+ extend ::Google::Protobuf::MessageExts::ClassMethods
197
+ end
198
+
199
+ # ProjectCreationConfig contains the config to create a new project to be used
200
+ # as the target_resource of a deployment.
201
+ # @!attribute [rw] parent
202
+ # @return [::String]
203
+ # Required. organizations/\\{org} or folders/\\{folder}
204
+ # @!attribute [rw] project_display_name
205
+ # @return [::String]
206
+ # Required. Display name of the project to be created.
207
+ # @!attribute [rw] billing_account_id
208
+ # @return [::String]
209
+ # Required. Billing account id to be used for the project.
210
+ class ProjectCreationConfig
211
+ include ::Google::Protobuf::MessageExts
212
+ extend ::Google::Protobuf::MessageExts::ClassMethods
213
+ end
214
+
215
+ # CloudControlMetadata contains the enforcement mode and parameters of a Cloud
216
+ # Control Deployment.
217
+ # @!attribute [rw] cloud_control_details
218
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::CloudControlDetails]
219
+ # Required. Cloud control name and parameters.
220
+ # @!attribute [rw] enforcement_mode
221
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::EnforcementMode]
222
+ # Required. Enforcement mode of the cloud control
223
+ class CloudControlMetadata
224
+ include ::Google::Protobuf::MessageExts
225
+ extend ::Google::Protobuf::MessageExts::ClassMethods
226
+ end
227
+
228
+ # Request message for CreateFrameworkDeployment API.
229
+ # @!attribute [rw] parent
230
+ # @return [::String]
231
+ # Required. The parent resource of the FrameworkDeployment in the format:
232
+ # organizations/\\{organization}/locations/\\{location}
233
+ # Only global location is supported.
234
+ # @!attribute [rw] framework_deployment_id
235
+ # @return [::String]
236
+ # Optional. User provided identifier. It should be unique in scope of a
237
+ # parent. This is optional and if not provided, a random UUID will be
238
+ # generated.
239
+ # @!attribute [rw] framework_deployment
240
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::FrameworkDeployment]
241
+ # Required. The FrameworkDeployment to be created.
242
+ class CreateFrameworkDeploymentRequest
243
+ include ::Google::Protobuf::MessageExts
244
+ extend ::Google::Protobuf::MessageExts::ClassMethods
245
+ end
246
+
247
+ # Request message for DeleteFrameworkDeployment.
248
+ # @!attribute [rw] name
249
+ # @return [::String]
250
+ # Required. name of the FrameworkDeployment to be deleted in the following
251
+ # format:
252
+ # organizations/\\{organization}/locations/\\{location}/frameworkDeployments/\\{framework_deployment_id}
253
+ # @!attribute [rw] etag
254
+ # @return [::String]
255
+ # Optional. An opaque identifier for the current version of the resource.
256
+ #
257
+ # If you provide this value, then it must match the existing value. If the
258
+ # values don't match, then the request fails with an
259
+ # [ABORTED][google.rpc.Code.ABORTED] error.
260
+ #
261
+ # If you omit this value, then the resource is deleted regardless of its
262
+ # current `etag` value.
263
+ class DeleteFrameworkDeploymentRequest
264
+ include ::Google::Protobuf::MessageExts
265
+ extend ::Google::Protobuf::MessageExts::ClassMethods
266
+ end
267
+
268
+ # Request message for GetFrameworkDeployment.
269
+ # @!attribute [rw] name
270
+ # @return [::String]
271
+ # Required. FrameworkDeployment name in the following format:
272
+ # organizations/\\{organization}/locations/\\{location}/frameworkDeployments/\\{framework_deployment_id}
273
+ class GetFrameworkDeploymentRequest
274
+ include ::Google::Protobuf::MessageExts
275
+ extend ::Google::Protobuf::MessageExts::ClassMethods
276
+ end
277
+
278
+ # Request message for ListFrameworkDeployments.
279
+ # @!attribute [rw] parent
280
+ # @return [::String]
281
+ # Required. parent resource of the FrameworkDeployment in the format:
282
+ # organizations/\\{organization}/locations/\\{location}
283
+ # Only global location is supported.
284
+ # @!attribute [rw] page_size
285
+ # @return [::Integer]
286
+ # Optional. Requested page size. Server may return fewer items than
287
+ # requested. If unspecified, server will pick an appropriate default.
288
+ # @!attribute [rw] page_token
289
+ # @return [::String]
290
+ # Optional. A token identifying a page of results the server should return.
291
+ # @!attribute [rw] filter
292
+ # @return [::String]
293
+ # Optional. Filter to be applied on the resource, defined by EBNF grammar
294
+ # https://google.aip.dev/assets/misc/ebnf-filtering.txt.
295
+ # @!attribute [rw] order_by
296
+ # @return [::String]
297
+ # Optional. Sort results. Supported are "name", "name desc" or "" (unsorted).
298
+ class ListFrameworkDeploymentsRequest
299
+ include ::Google::Protobuf::MessageExts
300
+ extend ::Google::Protobuf::MessageExts::ClassMethods
301
+ end
302
+
303
+ # Response message for ListFrameworkDeployments.
304
+ # @!attribute [rw] framework_deployments
305
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::FrameworkDeployment>]
306
+ # The list of FrameworkDeployments.
307
+ # @!attribute [rw] next_page_token
308
+ # @return [::String]
309
+ # A token identifying a page of results the server should return.
310
+ class ListFrameworkDeploymentsResponse
311
+ include ::Google::Protobuf::MessageExts
312
+ extend ::Google::Protobuf::MessageExts::ClassMethods
313
+ end
314
+
315
+ # Request message for GetCloudControlDeployment.
316
+ # @!attribute [rw] name
317
+ # @return [::String]
318
+ # Required. CloudControlDeployment name in the following format:
319
+ # organizations/\\{organization}/locations/\\{location}/cloudControlDeployments/\\{cloud_control_deployment_id}
320
+ class GetCloudControlDeploymentRequest
321
+ include ::Google::Protobuf::MessageExts
322
+ extend ::Google::Protobuf::MessageExts::ClassMethods
323
+ end
324
+
325
+ # Request message for ListCloudControlDeployments.
326
+ # @!attribute [rw] parent
327
+ # @return [::String]
328
+ # Required. parent resource of the CloudControlDeployment in the format:
329
+ # organizations/\\{organization}/locations/\\{location}
330
+ # Only global location is supported.
331
+ # @!attribute [rw] page_size
332
+ # @return [::Integer]
333
+ # Optional. Requested page size. Server may return fewer items than
334
+ # requested. If unspecified, server will pick an appropriate default.
335
+ # @!attribute [rw] page_token
336
+ # @return [::String]
337
+ # Optional. A token identifying a page of results the server should return.
338
+ # @!attribute [rw] filter
339
+ # @return [::String]
340
+ # Optional. Filter to be applied on the resource, defined by EBNF grammar
341
+ # https://google.aip.dev/assets/misc/ebnf-filtering.txt.
342
+ # @!attribute [rw] order_by
343
+ # @return [::String]
344
+ # Optional. Sort results. Supported are "name", "name desc" or "" (unsorted).
345
+ class ListCloudControlDeploymentsRequest
346
+ include ::Google::Protobuf::MessageExts
347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
348
+ end
349
+
350
+ # Response message for ListCloudControlDeployments.
351
+ # @!attribute [rw] cloud_control_deployments
352
+ # @return [::Array<::Google::Cloud::CloudSecurityCompliance::V1::CloudControlDeployment>]
353
+ # The list of CloudControlDeployments.
354
+ # @!attribute [rw] next_page_token
355
+ # @return [::String]
356
+ # A token identifying a page of results the server should return.
357
+ class ListCloudControlDeploymentsResponse
358
+ include ::Google::Protobuf::MessageExts
359
+ extend ::Google::Protobuf::MessageExts::ClassMethods
360
+ end
361
+
362
+ # The reference to a CloudControlDeployment.
363
+ # @!attribute [r] cloud_control_deployment
364
+ # @return [::String]
365
+ # Output only. The name of the CloudControlDeployment. The format is:
366
+ # organizations/\\{org}/locations/\\{location}/cloudControlDeployments/\\{cloud_control_deployment_id}
367
+ class CloudControlDeploymentReference
368
+ include ::Google::Protobuf::MessageExts
369
+ extend ::Google::Protobuf::MessageExts::ClassMethods
370
+ end
371
+
372
+ # The reference to a FrameworkDeployment.
373
+ # @!attribute [r] framework_deployment
374
+ # @return [::String]
375
+ # Output only. The name of the FrameworkDeployment. The format is:
376
+ # organizations/\\{org}/locations/\\{location}/frameworkDeployments/\\{framework_deployment_id}
377
+ # @!attribute [rw] framework_reference
378
+ # @return [::Google::Cloud::CloudSecurityCompliance::V1::FrameworkReference]
379
+ # Optional. The reference to the Framework that this deployment is for.
380
+ # Example: {
381
+ # framework:
382
+ # "organizations/\\{org}/locations/\\{location}/frameworks/\\{framework}",
383
+ # major_revision_id: 1
384
+ # }
385
+ # @!attribute [rw] framework_display_name
386
+ # @return [::String]
387
+ # Optional. The display name of the Framework that this FrameworkDeployment
388
+ # is for.
389
+ class FrameworkDeploymentReference
390
+ include ::Google::Protobuf::MessageExts
391
+ extend ::Google::Protobuf::MessageExts::ClassMethods
392
+ end
393
+
394
+ # DeploymentState represents the state of the Deployment resource.
395
+ module DeploymentState
396
+ # Unspecified. Invalid state.
397
+ DEPLOYMENT_STATE_UNSPECIFIED = 0
398
+
399
+ # Validating the deployment.
400
+ DEPLOYMENT_STATE_VALIDATING = 1
401
+
402
+ # Deployment is in CREATING state.
403
+ DEPLOYMENT_STATE_CREATING = 2
404
+
405
+ # Deployment is in DELETING state.
406
+ DEPLOYMENT_STATE_DELETING = 3
407
+
408
+ # Deployment has failed. All the changes made by the deployment have been
409
+ # successfully rolled back. A deployment in the FAILED state can be retried
410
+ # or deleted.
411
+ DEPLOYMENT_STATE_FAILED = 4
412
+
413
+ # Deployment is successful and ready to use.
414
+ DEPLOYMENT_STATE_READY = 5
415
+
416
+ # Deployment is partially deployed. All the Cloud Controls were not deployed
417
+ # successfully. Retrying the operation will resume from the first failed
418
+ # step.
419
+ DEPLOYMENT_STATE_PARTIALLY_DEPLOYED = 6
420
+
421
+ # Deployment is partially deleted. All the Cloud Control Deployments were not
422
+ # deleted successfully. Retrying the operation will resume from the first
423
+ # failed step.
424
+ DEPLOYMENT_STATE_PARTIALLY_DELETED = 7
425
+ end
426
+ end
427
+ end
428
+ end
429
+ end