google-cloud-network_security-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 (126) 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/network_security/v1/address_group_service/client.rb +1457 -0
  6. data/lib/google/cloud/network_security/v1/address_group_service/credentials.rb +47 -0
  7. data/lib/google/cloud/network_security/v1/address_group_service/operations.rb +843 -0
  8. data/lib/google/cloud/network_security/v1/address_group_service/paths.rb +110 -0
  9. data/lib/google/cloud/network_security/v1/address_group_service.rb +52 -0
  10. data/lib/google/cloud/network_security/v1/dns_threat_detector_service/client.rb +900 -0
  11. data/lib/google/cloud/network_security/v1/dns_threat_detector_service/credentials.rb +47 -0
  12. data/lib/google/cloud/network_security/v1/dns_threat_detector_service/paths.rb +86 -0
  13. data/lib/google/cloud/network_security/v1/dns_threat_detector_service.rb +49 -0
  14. data/lib/google/cloud/network_security/v1/firewall_activation/client.rb +2098 -0
  15. data/lib/google/cloud/network_security/v1/firewall_activation/credentials.rb +47 -0
  16. data/lib/google/cloud/network_security/v1/firewall_activation/operations.rb +843 -0
  17. data/lib/google/cloud/network_security/v1/firewall_activation/paths.rb +165 -0
  18. data/lib/google/cloud/network_security/v1/firewall_activation.rb +50 -0
  19. data/lib/google/cloud/network_security/v1/intercept/client.rb +2599 -0
  20. data/lib/google/cloud/network_security/v1/intercept/credentials.rb +47 -0
  21. data/lib/google/cloud/network_security/v1/intercept/operations.rb +843 -0
  22. data/lib/google/cloud/network_security/v1/intercept/paths.rb +160 -0
  23. data/lib/google/cloud/network_security/v1/intercept.rb +51 -0
  24. data/lib/google/cloud/network_security/v1/mirroring/client.rb +2598 -0
  25. data/lib/google/cloud/network_security/v1/mirroring/credentials.rb +47 -0
  26. data/lib/google/cloud/network_security/v1/mirroring/operations.rb +843 -0
  27. data/lib/google/cloud/network_security/v1/mirroring/paths.rb +160 -0
  28. data/lib/google/cloud/network_security/v1/mirroring.rb +50 -0
  29. data/lib/google/cloud/network_security/v1/network_security/client.rb +5161 -0
  30. data/lib/google/cloud/network_security/v1/network_security/credentials.rb +47 -0
  31. data/lib/google/cloud/network_security/v1/network_security/operations.rb +843 -0
  32. data/lib/google/cloud/network_security/v1/network_security/paths.rb +280 -0
  33. data/lib/google/cloud/network_security/v1/network_security.rb +52 -0
  34. data/lib/google/cloud/network_security/v1/organization_address_group_service/client.rb +1457 -0
  35. data/lib/google/cloud/network_security/v1/organization_address_group_service/credentials.rb +47 -0
  36. data/lib/google/cloud/network_security/v1/organization_address_group_service/operations.rb +843 -0
  37. data/lib/google/cloud/network_security/v1/organization_address_group_service/paths.rb +110 -0
  38. data/lib/google/cloud/network_security/v1/organization_address_group_service.rb +52 -0
  39. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/client.rb +1471 -0
  40. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/credentials.rb +47 -0
  41. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/operations.rb +843 -0
  42. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service/paths.rb +191 -0
  43. data/lib/google/cloud/network_security/v1/organization_security_profile_group_service.rb +50 -0
  44. data/lib/google/cloud/network_security/v1/security_profile_group_service/client.rb +1472 -0
  45. data/lib/google/cloud/network_security/v1/security_profile_group_service/credentials.rb +47 -0
  46. data/lib/google/cloud/network_security/v1/security_profile_group_service/operations.rb +843 -0
  47. data/lib/google/cloud/network_security/v1/security_profile_group_service/paths.rb +191 -0
  48. data/lib/google/cloud/network_security/v1/security_profile_group_service.rb +51 -0
  49. data/lib/google/cloud/network_security/v1/sse_realm_service/client.rb +1316 -0
  50. data/lib/google/cloud/network_security/v1/sse_realm_service/credentials.rb +47 -0
  51. data/lib/google/cloud/network_security/v1/sse_realm_service/operations.rb +843 -0
  52. data/lib/google/cloud/network_security/v1/sse_realm_service/paths.rb +88 -0
  53. data/lib/google/cloud/network_security/v1/sse_realm_service.rb +50 -0
  54. data/lib/google/cloud/network_security/v1/version.rb +7 -2
  55. data/lib/google/cloud/network_security/v1.rb +49 -0
  56. data/lib/google/cloud/networksecurity/v1/address_group_pb.rb +46 -0
  57. data/lib/google/cloud/networksecurity/v1/address_group_services_pb.rb +97 -0
  58. data/lib/google/cloud/networksecurity/v1/authorization_policy_pb.rb +37 -0
  59. data/lib/google/cloud/networksecurity/v1/authz_policy_pb.rb +56 -0
  60. data/lib/google/cloud/networksecurity/v1/backend_authentication_config_pb.rb +33 -0
  61. data/lib/google/cloud/networksecurity/v1/client_tls_policy_pb.rb +33 -0
  62. data/lib/google/cloud/networksecurity/v1/common_pb.rb +24 -0
  63. data/lib/google/cloud/networksecurity/v1/dns_threat_detector_pb.rb +36 -0
  64. data/lib/google/cloud/networksecurity/v1/dns_threat_detector_services_pb.rb +53 -0
  65. data/lib/google/cloud/networksecurity/v1/firewall_activation_pb.rb +48 -0
  66. data/lib/google/cloud/networksecurity/v1/firewall_activation_services_pb.rb +73 -0
  67. data/lib/google/cloud/networksecurity/v1/gateway_security_policy_pb.rb +32 -0
  68. data/lib/google/cloud/networksecurity/v1/gateway_security_policy_rule_pb.rb +33 -0
  69. data/lib/google/cloud/networksecurity/v1/intercept_pb.rb +71 -0
  70. data/lib/google/cloud/networksecurity/v1/intercept_services_pb.rb +104 -0
  71. data/lib/google/cloud/networksecurity/v1/mirroring_pb.rb +72 -0
  72. data/lib/google/cloud/networksecurity/v1/mirroring_services_pb.rb +103 -0
  73. data/lib/google/cloud/networksecurity/v1/network_security_pb.rb +35 -0
  74. data/lib/google/cloud/networksecurity/v1/network_security_services_pb.rb +138 -0
  75. data/lib/google/cloud/networksecurity/v1/security_profile_group_intercept_pb.rb +24 -0
  76. data/lib/google/cloud/networksecurity/v1/security_profile_group_mirroring_pb.rb +24 -0
  77. data/lib/google/cloud/networksecurity/v1/security_profile_group_pb.rb +31 -0
  78. data/lib/google/cloud/networksecurity/v1/security_profile_group_service_pb.rb +42 -0
  79. data/lib/google/cloud/networksecurity/v1/security_profile_group_service_services_pb.rb +98 -0
  80. data/lib/google/cloud/networksecurity/v1/security_profile_group_threatprevention_pb.rb +30 -0
  81. data/lib/google/cloud/networksecurity/v1/security_profile_group_urlfiltering_pb.rb +25 -0
  82. data/lib/google/cloud/networksecurity/v1/server_tls_policy_pb.rb +35 -0
  83. data/lib/google/cloud/networksecurity/v1/sse_realm_pb.rb +46 -0
  84. data/lib/google/cloud/networksecurity/v1/sse_realm_services_pb.rb +59 -0
  85. data/lib/google/cloud/networksecurity/v1/tls_inspection_policy_pb.rb +34 -0
  86. data/lib/google/cloud/networksecurity/v1/tls_pb.rb +26 -0
  87. data/lib/google/cloud/networksecurity/v1/url_list_pb.rb +32 -0
  88. data/lib/google-cloud-network_security-v1.rb +21 -0
  89. data/proto_docs/README.md +4 -0
  90. data/proto_docs/google/api/client.rb +593 -0
  91. data/proto_docs/google/api/field_behavior.rb +85 -0
  92. data/proto_docs/google/api/field_info.rb +88 -0
  93. data/proto_docs/google/api/launch_stage.rb +71 -0
  94. data/proto_docs/google/api/resource.rb +227 -0
  95. data/proto_docs/google/cloud/networksecurity/v1/address_group.rb +374 -0
  96. data/proto_docs/google/cloud/networksecurity/v1/authorization_policy.rb +263 -0
  97. data/proto_docs/google/cloud/networksecurity/v1/authz_policy.rb +735 -0
  98. data/proto_docs/google/cloud/networksecurity/v1/backend_authentication_config.rb +217 -0
  99. data/proto_docs/google/cloud/networksecurity/v1/client_tls_policy.rb +162 -0
  100. data/proto_docs/google/cloud/networksecurity/v1/common.rb +57 -0
  101. data/proto_docs/google/cloud/networksecurity/v1/dns_threat_detector.rb +159 -0
  102. data/proto_docs/google/cloud/networksecurity/v1/firewall_activation.rb +469 -0
  103. data/proto_docs/google/cloud/networksecurity/v1/gateway_security_policy.rb +144 -0
  104. data/proto_docs/google/cloud/networksecurity/v1/gateway_security_policy_rule.rb +178 -0
  105. data/proto_docs/google/cloud/networksecurity/v1/intercept.rb +960 -0
  106. data/proto_docs/google/cloud/networksecurity/v1/mirroring.rb +970 -0
  107. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group.rb +166 -0
  108. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_intercept.rb +38 -0
  109. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_mirroring.rb +38 -0
  110. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_service.rb +211 -0
  111. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_threatprevention.rb +193 -0
  112. data/proto_docs/google/cloud/networksecurity/v1/security_profile_group_urlfiltering.rb +66 -0
  113. data/proto_docs/google/cloud/networksecurity/v1/server_tls_policy.rb +251 -0
  114. data/proto_docs/google/cloud/networksecurity/v1/sse_realm.rb +388 -0
  115. data/proto_docs/google/cloud/networksecurity/v1/tls.rb +90 -0
  116. data/proto_docs/google/cloud/networksecurity/v1/tls_inspection_policy.rb +239 -0
  117. data/proto_docs/google/cloud/networksecurity/v1/url_list.rb +144 -0
  118. data/proto_docs/google/longrunning/operations.rb +191 -0
  119. data/proto_docs/google/protobuf/any.rb +145 -0
  120. data/proto_docs/google/protobuf/duration.rb +98 -0
  121. data/proto_docs/google/protobuf/empty.rb +34 -0
  122. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  123. data/proto_docs/google/protobuf/timestamp.rb +127 -0
  124. data/proto_docs/google/rpc/status.rb +48 -0
  125. data/proto_docs/google/type/expr.rb +75 -0
  126. metadata +186 -9
@@ -0,0 +1,970 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2026 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 NetworkSecurity
23
+ module V1
24
+ # An endpoint group is a consumer frontend for a deployment group (backend).
25
+ # In order to configure mirroring for a network, consumers must create:
26
+ # - An association between their network and the endpoint group.
27
+ # - A security profile that points to the endpoint group.
28
+ # - A mirroring rule that references the security profile (group).
29
+ # @!attribute [rw] name
30
+ # @return [::String]
31
+ # Immutable. Identifier. The resource name of this endpoint group, for
32
+ # example:
33
+ # `projects/123456789/locations/global/mirroringEndpointGroups/my-eg`.
34
+ # See https://google.aip.dev/122 for more details.
35
+ # @!attribute [r] create_time
36
+ # @return [::Google::Protobuf::Timestamp]
37
+ # Output only. The timestamp when the resource was created.
38
+ # See https://google.aip.dev/148#timestamps.
39
+ # @!attribute [r] update_time
40
+ # @return [::Google::Protobuf::Timestamp]
41
+ # Output only. The timestamp when the resource was most recently updated.
42
+ # See https://google.aip.dev/148#timestamps.
43
+ # @!attribute [rw] labels
44
+ # @return [::Google::Protobuf::Map{::String => ::String}]
45
+ # Optional. Labels are key/value pairs that help to organize and filter
46
+ # resources.
47
+ # @!attribute [rw] mirroring_deployment_group
48
+ # @return [::String]
49
+ # Immutable. The deployment group that this DIRECT endpoint group is
50
+ # connected to, for example:
51
+ # `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
52
+ # See https://google.aip.dev/124.
53
+ # @!attribute [r] connected_deployment_groups
54
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup::ConnectedDeploymentGroup>]
55
+ # Output only. List of details about the connected deployment groups to this
56
+ # endpoint group.
57
+ # @!attribute [r] state
58
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup::State]
59
+ # Output only. The current state of the endpoint group.
60
+ # See https://google.aip.dev/216.
61
+ # @!attribute [r] reconciling
62
+ # @return [::Boolean]
63
+ # Output only. The current state of the resource does not match the user's
64
+ # intended state, and the system is working to reconcile them. This is part
65
+ # of the normal operation (e.g. adding a new association to the group). See
66
+ # https://google.aip.dev/128.
67
+ # @!attribute [rw] type
68
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup::Type]
69
+ # Immutable. The type of the endpoint group.
70
+ # If left unspecified, defaults to DIRECT.
71
+ # @!attribute [r] associations
72
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup::AssociationDetails>]
73
+ # Output only. List of associations to this endpoint group.
74
+ # @!attribute [rw] description
75
+ # @return [::String]
76
+ # Optional. User-provided description of the endpoint group.
77
+ # Used as additional context for the endpoint group.
78
+ class MirroringEndpointGroup
79
+ include ::Google::Protobuf::MessageExts
80
+ extend ::Google::Protobuf::MessageExts::ClassMethods
81
+
82
+ # The endpoint group's view of a connected deployment group.
83
+ # @!attribute [r] name
84
+ # @return [::String]
85
+ # Output only. The connected deployment group's resource name, for example:
86
+ # `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
87
+ # See https://google.aip.dev/124.
88
+ # @!attribute [r] locations
89
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringLocation>]
90
+ # Output only. The list of locations where the deployment group is present.
91
+ class ConnectedDeploymentGroup
92
+ include ::Google::Protobuf::MessageExts
93
+ extend ::Google::Protobuf::MessageExts::ClassMethods
94
+ end
95
+
96
+ # The endpoint group's view of a connected association.
97
+ # @!attribute [r] name
98
+ # @return [::String]
99
+ # Output only. The connected association's resource name, for example:
100
+ # `projects/123456789/locations/global/mirroringEndpointGroupAssociations/my-ega`.
101
+ # See https://google.aip.dev/124.
102
+ # @!attribute [r] network
103
+ # @return [::String]
104
+ # Output only. The associated network, for example:
105
+ # projects/123456789/global/networks/my-network.
106
+ # See https://google.aip.dev/124.
107
+ # @!attribute [r] state
108
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation::State]
109
+ # Output only. Most recent known state of the association.
110
+ class AssociationDetails
111
+ include ::Google::Protobuf::MessageExts
112
+ extend ::Google::Protobuf::MessageExts::ClassMethods
113
+ end
114
+
115
+ # @!attribute [rw] key
116
+ # @return [::String]
117
+ # @!attribute [rw] value
118
+ # @return [::String]
119
+ class LabelsEntry
120
+ include ::Google::Protobuf::MessageExts
121
+ extend ::Google::Protobuf::MessageExts::ClassMethods
122
+ end
123
+
124
+ # The current state of the endpoint group.
125
+ module State
126
+ # State not set (this is not a valid state).
127
+ STATE_UNSPECIFIED = 0
128
+
129
+ # The endpoint group is ready and in sync with the target deployment group.
130
+ ACTIVE = 1
131
+
132
+ # The deployment group backing this endpoint group has been force-deleted.
133
+ # This endpoint group cannot be used and mirroring is effectively disabled.
134
+ CLOSED = 2
135
+
136
+ # The endpoint group is being created.
137
+ CREATING = 3
138
+
139
+ # The endpoint group is being deleted.
140
+ DELETING = 4
141
+
142
+ # The endpoint group is out of sync with the backing deployment group.
143
+ # In most cases, this is a result of a transient issue within the system
144
+ # (e.g. an inaccessible location) and the system is expected to recover
145
+ # automatically. See the associations field for details per network and
146
+ # location.
147
+ OUT_OF_SYNC = 5
148
+
149
+ # An attempt to delete the endpoint group has failed. This is a terminal
150
+ # state and the endpoint group is not expected to recover.
151
+ # The only permitted operation is to retry deleting the endpoint group.
152
+ DELETE_FAILED = 6
153
+ end
154
+
155
+ # The type of the endpoint group.
156
+ module Type
157
+ # Not set.
158
+ TYPE_UNSPECIFIED = 0
159
+
160
+ # An endpoint group that sends packets to a single deployment group.
161
+ DIRECT = 1
162
+ end
163
+ end
164
+
165
+ # Request message for ListMirroringEndpointGroups.
166
+ # @!attribute [rw] parent
167
+ # @return [::String]
168
+ # Required. The parent, which owns this collection of endpoint groups.
169
+ # Example: `projects/123456789/locations/global`.
170
+ # See https://google.aip.dev/132 for more details.
171
+ # @!attribute [rw] page_size
172
+ # @return [::Integer]
173
+ # Optional. Requested page size. Server may return fewer items than
174
+ # requested. If unspecified, server will pick an appropriate default. See
175
+ # https://google.aip.dev/158 for more details.
176
+ # @!attribute [rw] page_token
177
+ # @return [::String]
178
+ # Optional. A page token, received from a previous
179
+ # `ListMirroringEndpointGroups` call. Provide this to retrieve the subsequent
180
+ # page. When paginating, all other parameters provided to
181
+ # `ListMirroringEndpointGroups` must match the call that provided the page
182
+ # token.
183
+ # See https://google.aip.dev/158 for more details.
184
+ # @!attribute [rw] filter
185
+ # @return [::String]
186
+ # Optional. Filter expression.
187
+ # See https://google.aip.dev/160#filtering for more details.
188
+ # @!attribute [rw] order_by
189
+ # @return [::String]
190
+ # Optional. Sort expression.
191
+ # See https://google.aip.dev/132#ordering for more details.
192
+ class ListMirroringEndpointGroupsRequest
193
+ include ::Google::Protobuf::MessageExts
194
+ extend ::Google::Protobuf::MessageExts::ClassMethods
195
+ end
196
+
197
+ # Response message for ListMirroringEndpointGroups.
198
+ # @!attribute [rw] mirroring_endpoint_groups
199
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup>]
200
+ # The endpoint groups from the specified parent.
201
+ # @!attribute [rw] next_page_token
202
+ # @return [::String]
203
+ # A token that can be sent as `page_token` to retrieve the next page.
204
+ # If this field is omitted, there are no subsequent pages.
205
+ # See https://google.aip.dev/158 for more details.
206
+ class ListMirroringEndpointGroupsResponse
207
+ include ::Google::Protobuf::MessageExts
208
+ extend ::Google::Protobuf::MessageExts::ClassMethods
209
+ end
210
+
211
+ # Request message for GetMirroringEndpointGroup.
212
+ # @!attribute [rw] name
213
+ # @return [::String]
214
+ # Required. The name of the endpoint group to retrieve.
215
+ # Format:
216
+ # projects/\\{project}/locations/\\{location}/mirroringEndpointGroups/\\{mirroring_endpoint_group}
217
+ class GetMirroringEndpointGroupRequest
218
+ include ::Google::Protobuf::MessageExts
219
+ extend ::Google::Protobuf::MessageExts::ClassMethods
220
+ end
221
+
222
+ # Request message for CreateMirroringEndpointGroup.
223
+ # @!attribute [rw] parent
224
+ # @return [::String]
225
+ # Required. The parent resource where this endpoint group will be created.
226
+ # Format: projects/\\{project}/locations/\\{location}
227
+ # @!attribute [rw] mirroring_endpoint_group_id
228
+ # @return [::String]
229
+ # Required. The ID to use for the endpoint group, which will become the final
230
+ # component of the endpoint group's resource name.
231
+ # @!attribute [rw] mirroring_endpoint_group
232
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup]
233
+ # Required. The endpoint group to create.
234
+ # @!attribute [rw] request_id
235
+ # @return [::String]
236
+ # Optional. A unique identifier for this request. Must be a UUID4.
237
+ # This request is only idempotent if a `request_id` is provided.
238
+ # See https://google.aip.dev/155 for more details.
239
+ class CreateMirroringEndpointGroupRequest
240
+ include ::Google::Protobuf::MessageExts
241
+ extend ::Google::Protobuf::MessageExts::ClassMethods
242
+ end
243
+
244
+ # Request message for UpdateMirroringEndpointGroup.
245
+ # @!attribute [rw] update_mask
246
+ # @return [::Google::Protobuf::FieldMask]
247
+ # Optional. The list of fields to update.
248
+ # Fields are specified relative to the endpoint group
249
+ # (e.g. `description`; *not* `mirroring_endpoint_group.description`).
250
+ # See https://google.aip.dev/161 for more details.
251
+ # @!attribute [rw] mirroring_endpoint_group
252
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroup]
253
+ # Required. The endpoint group to update.
254
+ # @!attribute [rw] request_id
255
+ # @return [::String]
256
+ # Optional. A unique identifier for this request. Must be a UUID4.
257
+ # This request is only idempotent if a `request_id` is provided.
258
+ # See https://google.aip.dev/155 for more details.
259
+ class UpdateMirroringEndpointGroupRequest
260
+ include ::Google::Protobuf::MessageExts
261
+ extend ::Google::Protobuf::MessageExts::ClassMethods
262
+ end
263
+
264
+ # Request message for DeleteMirroringEndpointGroup.
265
+ # @!attribute [rw] name
266
+ # @return [::String]
267
+ # Required. The endpoint group to delete.
268
+ # @!attribute [rw] request_id
269
+ # @return [::String]
270
+ # Optional. A unique identifier for this request. Must be a UUID4.
271
+ # This request is only idempotent if a `request_id` is provided.
272
+ # See https://google.aip.dev/155 for more details.
273
+ class DeleteMirroringEndpointGroupRequest
274
+ include ::Google::Protobuf::MessageExts
275
+ extend ::Google::Protobuf::MessageExts::ClassMethods
276
+ end
277
+
278
+ # An endpoint group association represents a link between a network and an
279
+ # endpoint group in the organization.
280
+ #
281
+ # Creating an association creates the networking infrastructure linking the
282
+ # network to the endpoint group, but does not enable mirroring by itself.
283
+ # To enable mirroring, the user must also create a network firewall policy
284
+ # containing mirroring rules and associate it with the network.
285
+ # @!attribute [rw] name
286
+ # @return [::String]
287
+ # Immutable. Identifier. The resource name of this endpoint group
288
+ # association, for example:
289
+ # `projects/123456789/locations/global/mirroringEndpointGroupAssociations/my-eg-association`.
290
+ # See https://google.aip.dev/122 for more details.
291
+ # @!attribute [r] create_time
292
+ # @return [::Google::Protobuf::Timestamp]
293
+ # Output only. The timestamp when the resource was created.
294
+ # See https://google.aip.dev/148#timestamps.
295
+ # @!attribute [r] update_time
296
+ # @return [::Google::Protobuf::Timestamp]
297
+ # Output only. The timestamp when the resource was most recently updated.
298
+ # See https://google.aip.dev/148#timestamps.
299
+ # @!attribute [rw] labels
300
+ # @return [::Google::Protobuf::Map{::String => ::String}]
301
+ # Optional. Labels are key/value pairs that help to organize and filter
302
+ # resources.
303
+ # @!attribute [rw] mirroring_endpoint_group
304
+ # @return [::String]
305
+ # Immutable. The endpoint group that this association is connected to, for
306
+ # example:
307
+ # `projects/123456789/locations/global/mirroringEndpointGroups/my-eg`.
308
+ # See https://google.aip.dev/124.
309
+ # @!attribute [rw] network
310
+ # @return [::String]
311
+ # Immutable. The VPC network that is associated. for example:
312
+ # `projects/123456789/global/networks/my-network`.
313
+ # See https://google.aip.dev/124.
314
+ # @!attribute [r] locations_details
315
+ # @deprecated This field is deprecated and may be removed in the next major version update.
316
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation::LocationDetails>]
317
+ # Output only. The list of locations where the association is present. This
318
+ # information is retrieved from the linked endpoint group, and not configured
319
+ # as part of the association itself.
320
+ # @!attribute [r] state
321
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation::State]
322
+ # Output only. Current state of the endpoint group association.
323
+ # @!attribute [r] reconciling
324
+ # @return [::Boolean]
325
+ # Output only. The current state of the resource does not match the user's
326
+ # intended state, and the system is working to reconcile them. This part of
327
+ # the normal operation (e.g. adding a new location to the target deployment
328
+ # group). See https://google.aip.dev/128.
329
+ # @!attribute [r] locations
330
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringLocation>]
331
+ # Output only. The list of locations where the association is configured.
332
+ # This information is retrieved from the linked endpoint group.
333
+ class MirroringEndpointGroupAssociation
334
+ include ::Google::Protobuf::MessageExts
335
+ extend ::Google::Protobuf::MessageExts::ClassMethods
336
+
337
+ # Contains details about the state of an association in a specific cloud
338
+ # location.
339
+ # @!attribute [r] location
340
+ # @return [::String]
341
+ # Output only. The cloud location, e.g. "us-central1-a" or "asia-south1".
342
+ # @!attribute [r] state
343
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation::LocationDetails::State]
344
+ # Output only. The current state of the association in this location.
345
+ class LocationDetails
346
+ include ::Google::Protobuf::MessageExts
347
+ extend ::Google::Protobuf::MessageExts::ClassMethods
348
+
349
+ # The state of association.
350
+ module State
351
+ # Not set.
352
+ STATE_UNSPECIFIED = 0
353
+
354
+ # The association is ready and in sync with the linked endpoint group.
355
+ ACTIVE = 1
356
+
357
+ # The association is out of sync with the linked endpoint group.
358
+ # In most cases, this is a result of a transient issue within the system
359
+ # (e.g. an inaccessible location) and the system is expected to recover
360
+ # automatically.
361
+ OUT_OF_SYNC = 2
362
+ end
363
+ end
364
+
365
+ # @!attribute [rw] key
366
+ # @return [::String]
367
+ # @!attribute [rw] value
368
+ # @return [::String]
369
+ class LabelsEntry
370
+ include ::Google::Protobuf::MessageExts
371
+ extend ::Google::Protobuf::MessageExts::ClassMethods
372
+ end
373
+
374
+ # The state of the association.
375
+ module State
376
+ # Not set.
377
+ STATE_UNSPECIFIED = 0
378
+
379
+ # The association is ready and in sync with the linked endpoint group.
380
+ ACTIVE = 1
381
+
382
+ # The association is being created.
383
+ CREATING = 3
384
+
385
+ # The association is being deleted.
386
+ DELETING = 4
387
+
388
+ # The association is disabled due to a breaking change in another resource.
389
+ CLOSED = 5
390
+
391
+ # The association is out of sync with the linked endpoint group.
392
+ # In most cases, this is a result of a transient issue within the system
393
+ # (e.g. an inaccessible location) and the system is expected to recover
394
+ # automatically. Check the `locations_details` field for more details.
395
+ OUT_OF_SYNC = 6
396
+
397
+ # An attempt to delete the association has failed. This is a terminal state
398
+ # and the association is not expected to be usable as some of its resources
399
+ # have been deleted.
400
+ # The only permitted operation is to retry deleting the association.
401
+ DELETE_FAILED = 7
402
+ end
403
+ end
404
+
405
+ # Request message for ListMirroringEndpointGroupAssociations.
406
+ # @!attribute [rw] parent
407
+ # @return [::String]
408
+ # Required. The parent, which owns this collection of associations.
409
+ # Example: `projects/123456789/locations/global`.
410
+ # See https://google.aip.dev/132 for more details.
411
+ # @!attribute [rw] page_size
412
+ # @return [::Integer]
413
+ # Optional. Requested page size. Server may return fewer items than
414
+ # requested. If unspecified, server will pick an appropriate default. See
415
+ # https://google.aip.dev/158 for more details.
416
+ # @!attribute [rw] page_token
417
+ # @return [::String]
418
+ # Optional. A page token, received from a previous
419
+ # `ListMirroringEndpointGroups` call. Provide this to retrieve the subsequent
420
+ # page. When paginating, all other parameters provided to
421
+ # `ListMirroringEndpointGroups` must match the call that provided the page
422
+ # token. See https://google.aip.dev/158 for more details.
423
+ # @!attribute [rw] filter
424
+ # @return [::String]
425
+ # Optional. Filter expression.
426
+ # See https://google.aip.dev/160#filtering for more details.
427
+ # @!attribute [rw] order_by
428
+ # @return [::String]
429
+ # Optional. Sort expression.
430
+ # See https://google.aip.dev/132#ordering for more details.
431
+ class ListMirroringEndpointGroupAssociationsRequest
432
+ include ::Google::Protobuf::MessageExts
433
+ extend ::Google::Protobuf::MessageExts::ClassMethods
434
+ end
435
+
436
+ # Response message for ListMirroringEndpointGroupAssociations.
437
+ # @!attribute [rw] mirroring_endpoint_group_associations
438
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation>]
439
+ # The associations from the specified parent.
440
+ # @!attribute [rw] next_page_token
441
+ # @return [::String]
442
+ # A token that can be sent as `page_token` to retrieve the next page.
443
+ # If this field is omitted, there are no subsequent pages.
444
+ # See https://google.aip.dev/158 for more details.
445
+ class ListMirroringEndpointGroupAssociationsResponse
446
+ include ::Google::Protobuf::MessageExts
447
+ extend ::Google::Protobuf::MessageExts::ClassMethods
448
+ end
449
+
450
+ # Request message for GetMirroringEndpointGroupAssociation.
451
+ # @!attribute [rw] name
452
+ # @return [::String]
453
+ # Required. The name of the association to retrieve.
454
+ # Format:
455
+ # projects/\\{project}/locations/\\{location}/mirroringEndpointGroupAssociations/\\{mirroring_endpoint_group_association}
456
+ class GetMirroringEndpointGroupAssociationRequest
457
+ include ::Google::Protobuf::MessageExts
458
+ extend ::Google::Protobuf::MessageExts::ClassMethods
459
+ end
460
+
461
+ # Request message for CreateMirroringEndpointGroupAssociation.
462
+ # @!attribute [rw] parent
463
+ # @return [::String]
464
+ # Required. The parent resource where this association will be created.
465
+ # Format: projects/\\{project}/locations/\\{location}
466
+ # @!attribute [rw] mirroring_endpoint_group_association_id
467
+ # @return [::String]
468
+ # Optional. The ID to use for the new association, which will become the
469
+ # final component of the endpoint group's resource name. If not provided, the
470
+ # server will generate a unique ID.
471
+ # @!attribute [rw] mirroring_endpoint_group_association
472
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation]
473
+ # Required. The association to create.
474
+ # @!attribute [rw] request_id
475
+ # @return [::String]
476
+ # Optional. A unique identifier for this request. Must be a UUID4.
477
+ # This request is only idempotent if a `request_id` is provided.
478
+ # See https://google.aip.dev/155 for more details.
479
+ class CreateMirroringEndpointGroupAssociationRequest
480
+ include ::Google::Protobuf::MessageExts
481
+ extend ::Google::Protobuf::MessageExts::ClassMethods
482
+ end
483
+
484
+ # Request message for UpdateMirroringEndpointGroupAssociation.
485
+ # @!attribute [rw] update_mask
486
+ # @return [::Google::Protobuf::FieldMask]
487
+ # Optional. The list of fields to update.
488
+ # Fields are specified relative to the association
489
+ # (e.g. `description`; *not*
490
+ # `mirroring_endpoint_group_association.description`). See
491
+ # https://google.aip.dev/161 for more details.
492
+ # @!attribute [rw] mirroring_endpoint_group_association
493
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringEndpointGroupAssociation]
494
+ # Required. The association to update.
495
+ # @!attribute [rw] request_id
496
+ # @return [::String]
497
+ # Optional. A unique identifier for this request. Must be a UUID4.
498
+ # This request is only idempotent if a `request_id` is provided.
499
+ # See https://google.aip.dev/155 for more details.
500
+ class UpdateMirroringEndpointGroupAssociationRequest
501
+ include ::Google::Protobuf::MessageExts
502
+ extend ::Google::Protobuf::MessageExts::ClassMethods
503
+ end
504
+
505
+ # Request message for DeleteMirroringEndpointGroupAssociation.
506
+ # @!attribute [rw] name
507
+ # @return [::String]
508
+ # Required. The association to delete.
509
+ # @!attribute [rw] request_id
510
+ # @return [::String]
511
+ # Optional. A unique identifier for this request. Must be a UUID4.
512
+ # This request is only idempotent if a `request_id` is provided.
513
+ # See https://google.aip.dev/155 for more details.
514
+ class DeleteMirroringEndpointGroupAssociationRequest
515
+ include ::Google::Protobuf::MessageExts
516
+ extend ::Google::Protobuf::MessageExts::ClassMethods
517
+ end
518
+
519
+ # A deployment group aggregates many zonal mirroring backends (deployments)
520
+ # into a single global mirroring service. Consumers can connect this service
521
+ # using an endpoint group.
522
+ # @!attribute [rw] name
523
+ # @return [::String]
524
+ # Immutable. Identifier. The resource name of this deployment group, for
525
+ # example:
526
+ # `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
527
+ # See https://google.aip.dev/122 for more details.
528
+ # @!attribute [r] create_time
529
+ # @return [::Google::Protobuf::Timestamp]
530
+ # Output only. The timestamp when the resource was created.
531
+ # See https://google.aip.dev/148#timestamps.
532
+ # @!attribute [r] update_time
533
+ # @return [::Google::Protobuf::Timestamp]
534
+ # Output only. The timestamp when the resource was most recently updated.
535
+ # See https://google.aip.dev/148#timestamps.
536
+ # @!attribute [rw] labels
537
+ # @return [::Google::Protobuf::Map{::String => ::String}]
538
+ # Optional. Labels are key/value pairs that help to organize and filter
539
+ # resources.
540
+ # @!attribute [rw] network
541
+ # @return [::String]
542
+ # Required. Immutable. The network that will be used for all child
543
+ # deployments, for example: `projects/{project}/global/networks/{network}`.
544
+ # See https://google.aip.dev/124.
545
+ # @!attribute [r] connected_endpoint_groups
546
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringDeploymentGroup::ConnectedEndpointGroup>]
547
+ # Output only. The list of endpoint groups that are connected to this
548
+ # resource.
549
+ # @!attribute [r] nested_deployments
550
+ # @deprecated This field is deprecated and may be removed in the next major version update.
551
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringDeploymentGroup::Deployment>]
552
+ # Output only. The list of Mirroring Deployments that belong to this group.
553
+ # @!attribute [r] state
554
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeploymentGroup::State]
555
+ # Output only. The current state of the deployment group.
556
+ # See https://google.aip.dev/216.
557
+ # @!attribute [r] reconciling
558
+ # @return [::Boolean]
559
+ # Output only. The current state of the resource does not match the user's
560
+ # intended state, and the system is working to reconcile them. This is part
561
+ # of the normal operation (e.g. adding a new deployment to the group) See
562
+ # https://google.aip.dev/128.
563
+ # @!attribute [rw] description
564
+ # @return [::String]
565
+ # Optional. User-provided description of the deployment group.
566
+ # Used as additional context for the deployment group.
567
+ # @!attribute [r] locations
568
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringLocation>]
569
+ # Output only. The list of locations where the deployment group is present.
570
+ class MirroringDeploymentGroup
571
+ include ::Google::Protobuf::MessageExts
572
+ extend ::Google::Protobuf::MessageExts::ClassMethods
573
+
574
+ # An endpoint group connected to this deployment group.
575
+ # @!attribute [r] name
576
+ # @return [::String]
577
+ # Output only. The connected endpoint group's resource name, for example:
578
+ # `projects/123456789/locations/global/mirroringEndpointGroups/my-eg`.
579
+ # See https://google.aip.dev/124.
580
+ class ConnectedEndpointGroup
581
+ include ::Google::Protobuf::MessageExts
582
+ extend ::Google::Protobuf::MessageExts::ClassMethods
583
+ end
584
+
585
+ # A deployment belonging to this deployment group.
586
+ # @!attribute [r] name
587
+ # @return [::String]
588
+ # Output only. The name of the Mirroring Deployment, in the format:
589
+ # `projects/{project}/locations/{location}/mirroringDeployments/{mirroring_deployment}`.
590
+ # @!attribute [r] state
591
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeployment::State]
592
+ # Output only. Most recent known state of the deployment.
593
+ class Deployment
594
+ include ::Google::Protobuf::MessageExts
595
+ extend ::Google::Protobuf::MessageExts::ClassMethods
596
+ end
597
+
598
+ # @!attribute [rw] key
599
+ # @return [::String]
600
+ # @!attribute [rw] value
601
+ # @return [::String]
602
+ class LabelsEntry
603
+ include ::Google::Protobuf::MessageExts
604
+ extend ::Google::Protobuf::MessageExts::ClassMethods
605
+ end
606
+
607
+ # The current state of the deployment group.
608
+ module State
609
+ # State not set (this is not a valid state).
610
+ STATE_UNSPECIFIED = 0
611
+
612
+ # The deployment group is ready.
613
+ ACTIVE = 1
614
+
615
+ # The deployment group is being created.
616
+ CREATING = 2
617
+
618
+ # The deployment group is being deleted.
619
+ DELETING = 3
620
+
621
+ # The deployment group is being wiped out (project deleted).
622
+ CLOSED = 4
623
+ end
624
+ end
625
+
626
+ # Request message for ListMirroringDeploymentGroups.
627
+ # @!attribute [rw] parent
628
+ # @return [::String]
629
+ # Required. The parent, which owns this collection of deployment groups.
630
+ # Example: `projects/123456789/locations/global`.
631
+ # See https://google.aip.dev/132 for more details.
632
+ # @!attribute [rw] page_size
633
+ # @return [::Integer]
634
+ # Optional. Requested page size. Server may return fewer items than
635
+ # requested. If unspecified, server will pick an appropriate default. See
636
+ # https://google.aip.dev/158 for more details.
637
+ # @!attribute [rw] page_token
638
+ # @return [::String]
639
+ # Optional. A page token, received from a previous
640
+ # `ListMirroringDeploymentGroups` call. Provide this to retrieve the
641
+ # subsequent page. When paginating, all other parameters provided to
642
+ # `ListMirroringDeploymentGroups` must match the call that provided the page
643
+ # token. See https://google.aip.dev/158 for more details.
644
+ # @!attribute [rw] filter
645
+ # @return [::String]
646
+ # Optional. Filter expression.
647
+ # See https://google.aip.dev/160#filtering for more details.
648
+ # @!attribute [rw] order_by
649
+ # @return [::String]
650
+ # Optional. Sort expression.
651
+ # See https://google.aip.dev/132#ordering for more details.
652
+ class ListMirroringDeploymentGroupsRequest
653
+ include ::Google::Protobuf::MessageExts
654
+ extend ::Google::Protobuf::MessageExts::ClassMethods
655
+ end
656
+
657
+ # Response message for ListMirroringDeploymentGroups.
658
+ # @!attribute [rw] mirroring_deployment_groups
659
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringDeploymentGroup>]
660
+ # The deployment groups from the specified parent.
661
+ # @!attribute [rw] next_page_token
662
+ # @return [::String]
663
+ # A token that can be sent as `page_token` to retrieve the next page.
664
+ # If this field is omitted, there are no subsequent pages.
665
+ # See https://google.aip.dev/158 for more details.
666
+ class ListMirroringDeploymentGroupsResponse
667
+ include ::Google::Protobuf::MessageExts
668
+ extend ::Google::Protobuf::MessageExts::ClassMethods
669
+ end
670
+
671
+ # Request message for GetMirroringDeploymentGroup.
672
+ # @!attribute [rw] name
673
+ # @return [::String]
674
+ # Required. The name of the deployment group to retrieve.
675
+ # Format:
676
+ # projects/\\{project}/locations/\\{location}/mirroringDeploymentGroups/\\{mirroring_deployment_group}
677
+ class GetMirroringDeploymentGroupRequest
678
+ include ::Google::Protobuf::MessageExts
679
+ extend ::Google::Protobuf::MessageExts::ClassMethods
680
+ end
681
+
682
+ # Request message for CreateMirroringDeploymentGroup.
683
+ # @!attribute [rw] parent
684
+ # @return [::String]
685
+ # Required. The parent resource where this deployment group will be created.
686
+ # Format: projects/\\{project}/locations/\\{location}
687
+ # @!attribute [rw] mirroring_deployment_group_id
688
+ # @return [::String]
689
+ # Required. The ID to use for the new deployment group, which will become the
690
+ # final component of the deployment group's resource name.
691
+ # @!attribute [rw] mirroring_deployment_group
692
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeploymentGroup]
693
+ # Required. The deployment group to create.
694
+ # @!attribute [rw] request_id
695
+ # @return [::String]
696
+ # Optional. A unique identifier for this request. Must be a UUID4.
697
+ # This request is only idempotent if a `request_id` is provided.
698
+ # See https://google.aip.dev/155 for more details.
699
+ class CreateMirroringDeploymentGroupRequest
700
+ include ::Google::Protobuf::MessageExts
701
+ extend ::Google::Protobuf::MessageExts::ClassMethods
702
+ end
703
+
704
+ # Request message for UpdateMirroringDeploymentGroup.
705
+ # @!attribute [rw] update_mask
706
+ # @return [::Google::Protobuf::FieldMask]
707
+ # Optional. The list of fields to update.
708
+ # Fields are specified relative to the deployment group
709
+ # (e.g. `description`; *not*
710
+ # `mirroring_deployment_group.description`). See
711
+ # https://google.aip.dev/161 for more details.
712
+ # @!attribute [rw] mirroring_deployment_group
713
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeploymentGroup]
714
+ # Required. The deployment group to update.
715
+ # @!attribute [rw] request_id
716
+ # @return [::String]
717
+ # Optional. A unique identifier for this request. Must be a UUID4.
718
+ # This request is only idempotent if a `request_id` is provided.
719
+ # See https://google.aip.dev/155 for more details.
720
+ class UpdateMirroringDeploymentGroupRequest
721
+ include ::Google::Protobuf::MessageExts
722
+ extend ::Google::Protobuf::MessageExts::ClassMethods
723
+ end
724
+
725
+ # Request message for DeleteMirroringDeploymentGroup.
726
+ # @!attribute [rw] name
727
+ # @return [::String]
728
+ # Required. The deployment group to delete.
729
+ # @!attribute [rw] request_id
730
+ # @return [::String]
731
+ # Optional. A unique identifier for this request. Must be a UUID4.
732
+ # This request is only idempotent if a `request_id` is provided.
733
+ # See https://google.aip.dev/155 for more details.
734
+ class DeleteMirroringDeploymentGroupRequest
735
+ include ::Google::Protobuf::MessageExts
736
+ extend ::Google::Protobuf::MessageExts::ClassMethods
737
+ end
738
+
739
+ # A deployment represents a zonal mirroring backend ready to accept
740
+ # GENEVE-encapsulated replica traffic, e.g. a zonal instance group fronted by
741
+ # an internal passthrough load balancer. Deployments are always part of a
742
+ # global deployment group which represents a global mirroring service.
743
+ # @!attribute [rw] name
744
+ # @return [::String]
745
+ # Immutable. Identifier. The resource name of this deployment, for example:
746
+ # `projects/123456789/locations/us-central1-a/mirroringDeployments/my-dep`.
747
+ # See https://google.aip.dev/122 for more details.
748
+ # @!attribute [r] create_time
749
+ # @return [::Google::Protobuf::Timestamp]
750
+ # Output only. The timestamp when the resource was created.
751
+ # See https://google.aip.dev/148#timestamps.
752
+ # @!attribute [r] update_time
753
+ # @return [::Google::Protobuf::Timestamp]
754
+ # Output only. The timestamp when the resource was most recently updated.
755
+ # See https://google.aip.dev/148#timestamps.
756
+ # @!attribute [rw] labels
757
+ # @return [::Google::Protobuf::Map{::String => ::String}]
758
+ # Optional. Labels are key/value pairs that help to organize and filter
759
+ # resources.
760
+ # @!attribute [rw] forwarding_rule
761
+ # @return [::String]
762
+ # Required. Immutable. The regional forwarding rule that fronts the mirroring
763
+ # collectors, for example:
764
+ # `projects/123456789/regions/us-central1/forwardingRules/my-rule`. See
765
+ # https://google.aip.dev/124.
766
+ # @!attribute [rw] mirroring_deployment_group
767
+ # @return [::String]
768
+ # Required. Immutable. The deployment group that this deployment is a part
769
+ # of, for example:
770
+ # `projects/123456789/locations/global/mirroringDeploymentGroups/my-dg`.
771
+ # See https://google.aip.dev/124.
772
+ # @!attribute [r] state
773
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeployment::State]
774
+ # Output only. The current state of the deployment.
775
+ # See https://google.aip.dev/216.
776
+ # @!attribute [r] reconciling
777
+ # @return [::Boolean]
778
+ # Output only. The current state of the resource does not match the user's
779
+ # intended state, and the system is working to reconcile them. This part of
780
+ # the normal operation (e.g. linking a new association to the parent group).
781
+ # See https://google.aip.dev/128.
782
+ # @!attribute [rw] description
783
+ # @return [::String]
784
+ # Optional. User-provided description of the deployment.
785
+ # Used as additional context for the deployment.
786
+ class MirroringDeployment
787
+ include ::Google::Protobuf::MessageExts
788
+ extend ::Google::Protobuf::MessageExts::ClassMethods
789
+
790
+ # @!attribute [rw] key
791
+ # @return [::String]
792
+ # @!attribute [rw] value
793
+ # @return [::String]
794
+ class LabelsEntry
795
+ include ::Google::Protobuf::MessageExts
796
+ extend ::Google::Protobuf::MessageExts::ClassMethods
797
+ end
798
+
799
+ # The current state of the deployment.
800
+ module State
801
+ # State not set (this is not a valid state).
802
+ STATE_UNSPECIFIED = 0
803
+
804
+ # The deployment is ready and in sync with the parent group.
805
+ ACTIVE = 1
806
+
807
+ # The deployment is being created.
808
+ CREATING = 2
809
+
810
+ # The deployment is being deleted.
811
+ DELETING = 3
812
+
813
+ # The deployment is out of sync with the parent group.
814
+ # In most cases, this is a result of a transient issue within the system
815
+ # (e.g. a delayed data-path config) and the system is expected to recover
816
+ # automatically. See the parent deployment group's state for more details.
817
+ OUT_OF_SYNC = 4
818
+
819
+ # An attempt to delete the deployment has failed. This is a terminal state
820
+ # and the deployment is not expected to recover. The only permitted
821
+ # operation is to retry deleting the deployment.
822
+ DELETE_FAILED = 5
823
+ end
824
+ end
825
+
826
+ # Request message for ListMirroringDeployments.
827
+ # @!attribute [rw] parent
828
+ # @return [::String]
829
+ # Required. The parent, which owns this collection of deployments.
830
+ # Example: `projects/123456789/locations/us-central1-a`.
831
+ # See https://google.aip.dev/132 for more details.
832
+ # @!attribute [rw] page_size
833
+ # @return [::Integer]
834
+ # Optional. Requested page size. Server may return fewer items than
835
+ # requested. If unspecified, server will pick an appropriate default. See
836
+ # https://google.aip.dev/158 for more details.
837
+ # @!attribute [rw] page_token
838
+ # @return [::String]
839
+ # Optional. A page token, received from a previous `ListMirroringDeployments`
840
+ # call. Provide this to retrieve the subsequent page. When paginating, all
841
+ # other parameters provided to `ListMirroringDeployments` must match the call
842
+ # that provided the page token. See https://google.aip.dev/158 for more
843
+ # details.
844
+ # @!attribute [rw] filter
845
+ # @return [::String]
846
+ # Optional. Filter expression.
847
+ # See https://google.aip.dev/160#filtering for more details.
848
+ # @!attribute [rw] order_by
849
+ # @return [::String]
850
+ # Optional. Sort expression.
851
+ # See https://google.aip.dev/132#ordering for more details.
852
+ class ListMirroringDeploymentsRequest
853
+ include ::Google::Protobuf::MessageExts
854
+ extend ::Google::Protobuf::MessageExts::ClassMethods
855
+ end
856
+
857
+ # Response message for ListMirroringDeployments.
858
+ # @!attribute [rw] mirroring_deployments
859
+ # @return [::Array<::Google::Cloud::NetworkSecurity::V1::MirroringDeployment>]
860
+ # The deployments from the specified parent.
861
+ # @!attribute [rw] next_page_token
862
+ # @return [::String]
863
+ # A token that can be sent as `page_token` to retrieve the next page.
864
+ # If this field is omitted, there are no subsequent pages.
865
+ # See https://google.aip.dev/158 for more details.
866
+ # @!attribute [rw] unreachable
867
+ # @return [::Array<::String>]
868
+ # Locations that could not be reached.
869
+ class ListMirroringDeploymentsResponse
870
+ include ::Google::Protobuf::MessageExts
871
+ extend ::Google::Protobuf::MessageExts::ClassMethods
872
+ end
873
+
874
+ # Request message for GetMirroringDeployment.
875
+ # @!attribute [rw] name
876
+ # @return [::String]
877
+ # Required. The name of the deployment to retrieve.
878
+ # Format:
879
+ # projects/\\{project}/locations/\\{location}/mirroringDeployments/\\{mirroring_deployment}
880
+ class GetMirroringDeploymentRequest
881
+ include ::Google::Protobuf::MessageExts
882
+ extend ::Google::Protobuf::MessageExts::ClassMethods
883
+ end
884
+
885
+ # Request message for CreateMirroringDeployment.
886
+ # @!attribute [rw] parent
887
+ # @return [::String]
888
+ # Required. The parent resource where this deployment will be created.
889
+ # Format: projects/\\{project}/locations/\\{location}
890
+ # @!attribute [rw] mirroring_deployment_id
891
+ # @return [::String]
892
+ # Required. The ID to use for the new deployment, which will become the final
893
+ # component of the deployment's resource name.
894
+ # @!attribute [rw] mirroring_deployment
895
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeployment]
896
+ # Required. The deployment to create.
897
+ # @!attribute [rw] request_id
898
+ # @return [::String]
899
+ # Optional. A unique identifier for this request. Must be a UUID4.
900
+ # This request is only idempotent if a `request_id` is provided.
901
+ # See https://google.aip.dev/155 for more details.
902
+ class CreateMirroringDeploymentRequest
903
+ include ::Google::Protobuf::MessageExts
904
+ extend ::Google::Protobuf::MessageExts::ClassMethods
905
+ end
906
+
907
+ # Request message for UpdateMirroringDeployment.
908
+ # @!attribute [rw] update_mask
909
+ # @return [::Google::Protobuf::FieldMask]
910
+ # Optional. The list of fields to update.
911
+ # Fields are specified relative to the deployment
912
+ # (e.g. `description`; *not* `mirroring_deployment.description`).
913
+ # See https://google.aip.dev/161 for more details.
914
+ # @!attribute [rw] mirroring_deployment
915
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringDeployment]
916
+ # Required. The deployment to update.
917
+ # @!attribute [rw] request_id
918
+ # @return [::String]
919
+ # Optional. A unique identifier for this request. Must be a UUID4.
920
+ # This request is only idempotent if a `request_id` is provided.
921
+ # See https://google.aip.dev/155 for more details.
922
+ class UpdateMirroringDeploymentRequest
923
+ include ::Google::Protobuf::MessageExts
924
+ extend ::Google::Protobuf::MessageExts::ClassMethods
925
+ end
926
+
927
+ # Request message for DeleteMirroringDeployment.
928
+ # @!attribute [rw] name
929
+ # @return [::String]
930
+ # Required. Name of the resource
931
+ # @!attribute [rw] request_id
932
+ # @return [::String]
933
+ # Optional. A unique identifier for this request. Must be a UUID4.
934
+ # This request is only idempotent if a `request_id` is provided.
935
+ # See https://google.aip.dev/155 for more details.
936
+ class DeleteMirroringDeploymentRequest
937
+ include ::Google::Protobuf::MessageExts
938
+ extend ::Google::Protobuf::MessageExts::ClassMethods
939
+ end
940
+
941
+ # Details about mirroring in a specific cloud location.
942
+ # @!attribute [r] location
943
+ # @return [::String]
944
+ # Output only. The cloud location, e.g. "us-central1-a" or "asia-south1".
945
+ # @!attribute [r] state
946
+ # @return [::Google::Cloud::NetworkSecurity::V1::MirroringLocation::State]
947
+ # Output only. The current state of the association in this location.
948
+ class MirroringLocation
949
+ include ::Google::Protobuf::MessageExts
950
+ extend ::Google::Protobuf::MessageExts::ClassMethods
951
+
952
+ # The current state of a resource in the location.
953
+ module State
954
+ # State not set (this is not a valid state).
955
+ STATE_UNSPECIFIED = 0
956
+
957
+ # The resource is ready and in sync in the location.
958
+ ACTIVE = 1
959
+
960
+ # The resource is out of sync in the location.
961
+ # In most cases, this is a result of a transient issue within the system
962
+ # (e.g. an inaccessible location) and the system is expected to recover
963
+ # automatically.
964
+ OUT_OF_SYNC = 2
965
+ end
966
+ end
967
+ end
968
+ end
969
+ end
970
+ end