google-cloud-resource_manager-v3 0.3.0 → 0.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/AUTHENTICATION.md +1 -1
- data/README.md +3 -3
- data/lib/google/cloud/resource_manager/v3/folders/client.rb +75 -67
- data/lib/google/cloud/resource_manager/v3/folders/operations.rb +14 -16
- data/lib/google/cloud/resource_manager/v3/folders/rest/client.rb +1281 -0
- data/lib/google/cloud/resource_manager/v3/folders/rest/operations.rb +793 -0
- data/lib/google/cloud/resource_manager/v3/folders/rest/service_stub.rb +698 -0
- data/lib/google/cloud/resource_manager/v3/folders/rest.rb +55 -0
- data/lib/google/cloud/resource_manager/v3/folders.rb +7 -1
- data/lib/google/cloud/resource_manager/v3/organizations/client.rb +16 -16
- data/lib/google/cloud/resource_manager/v3/organizations/rest/client.rb +704 -0
- data/lib/google/cloud/resource_manager/v3/organizations/rest/service_stub.rb +344 -0
- data/lib/google/cloud/resource_manager/v3/organizations/rest.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/organizations.rb +7 -1
- data/lib/google/cloud/resource_manager/v3/projects/client.rb +72 -71
- data/lib/google/cloud/resource_manager/v3/projects/operations.rb +14 -16
- data/lib/google/cloud/resource_manager/v3/projects/rest/client.rb +1304 -0
- data/lib/google/cloud/resource_manager/v3/projects/rest/operations.rb +793 -0
- data/lib/google/cloud/resource_manager/v3/projects/rest/service_stub.rb +698 -0
- data/lib/google/cloud/resource_manager/v3/projects/rest.rb +53 -0
- data/lib/google/cloud/resource_manager/v3/projects.rb +7 -1
- data/lib/google/cloud/resource_manager/v3/rest.rb +43 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/client.rb +127 -31
- data/lib/google/cloud/resource_manager/v3/tag_bindings/operations.rb +14 -16
- data/lib/google/cloud/resource_manager/v3/tag_bindings/rest/client.rb +606 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/rest/operations.rb +793 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/rest/service_stub.rb +279 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/rest.rb +54 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings.rb +8 -2
- data/lib/google/cloud/resource_manager/v3/tag_holds/client.rb +640 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/operations.rb +768 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/paths.rb +64 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/rest/client.rb +533 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/rest/operations.rb +793 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/rest/service_stub.rb +226 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds/rest.rb +57 -0
- data/lib/google/cloud/resource_manager/v3/tag_holds.rb +60 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/client.rb +127 -40
- data/lib/google/cloud/resource_manager/v3/tag_keys/operations.rb +14 -16
- data/lib/google/cloud/resource_manager/v3/tag_keys/rest/client.rb +1012 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/rest/operations.rb +793 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/rest/service_stub.rb +578 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/rest.rb +53 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys.rb +7 -1
- data/lib/google/cloud/resource_manager/v3/tag_values/client.rb +139 -47
- data/lib/google/cloud/resource_manager/v3/tag_values/operations.rb +14 -16
- data/lib/google/cloud/resource_manager/v3/tag_values/rest/client.rb +1013 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/rest/operations.rb +793 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/rest/service_stub.rb +578 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/rest.rb +53 -0
- data/lib/google/cloud/resource_manager/v3/tag_values.rb +7 -1
- data/lib/google/cloud/resource_manager/v3/version.rb +1 -1
- data/lib/google/cloud/resource_manager/v3.rb +8 -2
- data/lib/google/cloud/resourcemanager/v3/folders_services_pb.rb +23 -17
- data/lib/google/cloud/resourcemanager/v3/organizations_pb.rb +0 -1
- data/lib/google/cloud/resourcemanager/v3/projects_services_pb.rb +16 -13
- data/lib/google/cloud/resourcemanager/v3/tag_bindings_pb.rb +22 -0
- data/lib/google/cloud/resourcemanager/v3/tag_bindings_services_pb.rb +7 -5
- data/lib/google/cloud/resourcemanager/v3/tag_holds_pb.rb +63 -0
- data/lib/google/cloud/resourcemanager/v3/tag_holds_services_pb.rb +54 -0
- data/lib/google/cloud/resourcemanager/v3/tag_keys_pb.rb +11 -0
- data/lib/google/cloud/resourcemanager/v3/tag_keys_services_pb.rb +6 -2
- data/lib/google/cloud/resourcemanager/v3/tag_values_pb.rb +4 -0
- data/lib/google/cloud/resourcemanager/v3/tag_values_services_pb.rb +7 -4
- data/proto_docs/google/api/client.rb +372 -0
- data/proto_docs/google/api/launch_stage.rb +71 -0
- data/proto_docs/google/cloud/resourcemanager/v3/folders.rb +25 -19
- data/proto_docs/google/cloud/resourcemanager/v3/organizations.rb +13 -11
- data/proto_docs/google/cloud/resourcemanager/v3/projects.rb +32 -30
- data/proto_docs/google/cloud/resourcemanager/v3/tag_bindings.rb +101 -15
- data/proto_docs/google/cloud/resourcemanager/v3/tag_holds.rb +161 -0
- data/proto_docs/google/cloud/resourcemanager/v3/tag_keys.rb +81 -23
- data/proto_docs/google/cloud/resourcemanager/v3/tag_values.rb +52 -29
- data/proto_docs/google/iam/v1/policy.rb +8 -4
- data/proto_docs/google/protobuf/empty.rb +0 -2
- data/proto_docs/google/rpc/status.rb +4 -2
- metadata +46 -8
@@ -26,8 +26,8 @@ module Google
|
|
26
26
|
# Google Cloud Platform resources.
|
27
27
|
# @!attribute [r] name
|
28
28
|
# @return [::String]
|
29
|
-
# Output only. The unique resource name of the project. It is an int64
|
30
|
-
# prefixed by "projects/".
|
29
|
+
# Output only. The unique resource name of the project. It is an int64
|
30
|
+
# generated number prefixed by "projects/".
|
31
31
|
#
|
32
32
|
# Example: `projects/415104041262`
|
33
33
|
# @!attribute [rw] parent
|
@@ -64,9 +64,9 @@ module Google
|
|
64
64
|
# Output only. The time at which this resource was requested for deletion.
|
65
65
|
# @!attribute [r] etag
|
66
66
|
# @return [::String]
|
67
|
-
# Output only. A checksum computed by the server based on the current value
|
68
|
-
# resource. This may be sent on update and delete requests to
|
69
|
-
# client has an up-to-date value before proceeding.
|
67
|
+
# Output only. A checksum computed by the server based on the current value
|
68
|
+
# of the Project resource. This may be sent on update and delete requests to
|
69
|
+
# ensure the client has an up-to-date value before proceeding.
|
70
70
|
# @!attribute [rw] labels
|
71
71
|
# @return [::Google::Protobuf::Map{::String => ::String}]
|
72
72
|
# Optional. The labels associated with this project.
|
@@ -77,7 +77,7 @@ module Google
|
|
77
77
|
# Label values must be between 0 and 63 characters long and must conform
|
78
78
|
# to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
|
79
79
|
#
|
80
|
-
# No more than
|
80
|
+
# No more than 64 labels can be associated with a given resource.
|
81
81
|
#
|
82
82
|
# Clients should store labels in a representation such as JSON that does not
|
83
83
|
# depend on specific characters being disallowed.
|
@@ -131,15 +131,17 @@ module Google
|
|
131
131
|
# method.
|
132
132
|
# @!attribute [rw] parent
|
133
133
|
# @return [::String]
|
134
|
-
# Required. The name of the parent resource
|
134
|
+
# Required. The name of the parent resource whose projects are being listed.
|
135
|
+
# Only children of this parent resource are listed; descendants are not
|
136
|
+
# listed.
|
135
137
|
#
|
136
|
-
#
|
137
|
-
#
|
138
|
+
# If the parent is a folder, use the value `folders/{folder_id}`. If the
|
139
|
+
# parent is an organization, use the value `organizations/{org_id}`.
|
138
140
|
# @!attribute [rw] page_token
|
139
141
|
# @return [::String]
|
140
|
-
# Optional. A pagination token returned from a previous call to
|
141
|
-
# [google.cloud.resourcemanager.v3.Projects.ListProjects]
|
142
|
-
#
|
142
|
+
# Optional. A pagination token returned from a previous call to
|
143
|
+
# [ListProjects] [google.cloud.resourcemanager.v3.Projects.ListProjects] that
|
144
|
+
# indicates from where listing should continue.
|
143
145
|
# @!attribute [rw] page_size
|
144
146
|
# @return [::Integer]
|
145
147
|
# Optional. The maximum number of projects to return in the response.
|
@@ -147,8 +149,8 @@ module Google
|
|
147
149
|
# If unspecified, server picks an appropriate default.
|
148
150
|
# @!attribute [rw] show_deleted
|
149
151
|
# @return [::Boolean]
|
150
|
-
# Optional. Indicate that projects in the `DELETE_REQUESTED` state should
|
151
|
-
# returned. Normally only `ACTIVE` projects are returned.
|
152
|
+
# Optional. Indicate that projects in the `DELETE_REQUESTED` state should
|
153
|
+
# also be returned. Normally only `ACTIVE` projects are returned.
|
152
154
|
class ListProjectsRequest
|
153
155
|
include ::Google::Protobuf::MessageExts
|
154
156
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -192,22 +194,22 @@ module Google
|
|
192
194
|
# @return [::String]
|
193
195
|
# Optional. A query string for searching for projects that the caller has
|
194
196
|
# `resourcemanager.projects.get` permission to. If multiple fields are
|
195
|
-
# included in the query,
|
197
|
+
# included in the query, then it will return results that match any of the
|
196
198
|
# fields. Some eligible fields are:
|
197
199
|
#
|
198
200
|
# ```
|
199
201
|
# | Field | Description |
|
200
202
|
# |-------------------------|----------------------------------------------|
|
201
203
|
# | displayName, name | Filters by displayName. |
|
202
|
-
# | parent | Project's parent
|
203
|
-
# organizations/*) Prefer parent field over parent.type and parent.id
|
204
|
-
#
|
205
|
-
#
|
206
|
-
#
|
207
|
-
#
|
208
|
-
#
|
209
|
-
#
|
210
|
-
# name
|
204
|
+
# | parent | Project's parent (for example: folders/123,
|
205
|
+
# organizations/*). Prefer parent field over parent.type and parent.id.| |
|
206
|
+
# parent.type | Parent's type: `folder` or `organization`. | |
|
207
|
+
# parent.id | Parent's id number (for example: 123) | |
|
208
|
+
# id, projectId | Filters by projectId. | |
|
209
|
+
# state, lifecycleState | Filters by state. | |
|
210
|
+
# labels | Filters by label name or value. | |
|
211
|
+
# labels.\<key\> (where *key* is the name of a label) | Filters by label
|
212
|
+
# name.|
|
211
213
|
# ```
|
212
214
|
#
|
213
215
|
# Search expressions are case insensitive.
|
@@ -223,17 +225,17 @@ module Google
|
|
223
225
|
# | NAME:howl | Equivalent to above. |
|
224
226
|
# | labels.color:* | The project has the label `color`. |
|
225
227
|
# | labels.color:red | The project's label `color` has the value `red`. |
|
226
|
-
# | labels.color:red
|
227
|
-
#
|
228
|
+
# | labels.color:red labels.size:big | The project's label `color` has the
|
229
|
+
# value `red` or its label `size` has the value `big`. |
|
228
230
|
# ```
|
229
231
|
#
|
230
232
|
# If no query is specified, the call will return projects for which the user
|
231
233
|
# has the `resourcemanager.projects.get` permission.
|
232
234
|
# @!attribute [rw] page_token
|
233
235
|
# @return [::String]
|
234
|
-
# Optional. A pagination token returned from a previous call to
|
235
|
-
# [google.cloud.resourcemanager.v3.Projects.ListProjects]
|
236
|
-
#
|
236
|
+
# Optional. A pagination token returned from a previous call to
|
237
|
+
# [ListProjects] [google.cloud.resourcemanager.v3.Projects.ListProjects] that
|
238
|
+
# indicates from where listing should continue.
|
237
239
|
# @!attribute [rw] page_size
|
238
240
|
# @return [::Integer]
|
239
241
|
# Optional. The maximum number of projects to return in the response.
|
@@ -285,7 +287,7 @@ module Google
|
|
285
287
|
#
|
286
288
|
# If the `parent` field is set, the `resourcemanager.projects.create`
|
287
289
|
# permission is checked on the parent resource. If no parent is set and
|
288
|
-
# the authorization credentials belong to an
|
290
|
+
# the authorization credentials belong to an Organization, the parent
|
289
291
|
# will be set to that Organization.
|
290
292
|
class CreateProjectRequest
|
291
293
|
include ::Google::Protobuf::MessageExts
|
@@ -22,9 +22,8 @@ module Google
|
|
22
22
|
module ResourceManager
|
23
23
|
module V3
|
24
24
|
# A TagBinding represents a connection between a TagValue and a cloud
|
25
|
-
# resource
|
26
|
-
#
|
27
|
-
# resource.
|
25
|
+
# resource Once a TagBinding is created, the TagValue is applied to all the
|
26
|
+
# descendants of the Google Cloud resource.
|
28
27
|
# @!attribute [r] name
|
29
28
|
# @return [::String]
|
30
29
|
# Output only. The name of the TagBinding. This is a String of the form:
|
@@ -38,6 +37,15 @@ module Google
|
|
38
37
|
# @return [::String]
|
39
38
|
# The TagValue of the TagBinding.
|
40
39
|
# Must be of the form `tagValues/456`.
|
40
|
+
# @!attribute [rw] tag_value_namespaced_name
|
41
|
+
# @return [::String]
|
42
|
+
# The namespaced name for the TagValue of the TagBinding.
|
43
|
+
# Must be in the format
|
44
|
+
# `{parent_id}/{tag_key_short_name}/{short_name}`.
|
45
|
+
#
|
46
|
+
# For methods that support TagValue namespaced name, only one of
|
47
|
+
# tag_value_namespaced_name or tag_value may be filled. Requests with both
|
48
|
+
# fields will be rejected.
|
41
49
|
class TagBinding
|
42
50
|
include ::Google::Protobuf::MessageExts
|
43
51
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -55,8 +63,8 @@ module Google
|
|
55
63
|
# Required. The TagBinding to be created.
|
56
64
|
# @!attribute [rw] validate_only
|
57
65
|
# @return [::Boolean]
|
58
|
-
# Optional. Set to true to perform the validations necessary for creating the
|
59
|
-
# but not actually perform the action.
|
66
|
+
# Optional. Set to true to perform the validations necessary for creating the
|
67
|
+
# resource, but not actually perform the action.
|
60
68
|
class CreateTagBindingRequest
|
61
69
|
include ::Google::Protobuf::MessageExts
|
62
70
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -82,18 +90,18 @@ module Google
|
|
82
90
|
# The request message to list all TagBindings for a parent.
|
83
91
|
# @!attribute [rw] parent
|
84
92
|
# @return [::String]
|
85
|
-
# Required. The full resource name of a resource for which you want to list
|
86
|
-
# TagBindings.
|
87
|
-
#
|
93
|
+
# Required. The full resource name of a resource for which you want to list
|
94
|
+
# existing TagBindings. E.g.
|
95
|
+
# "//cloudresourcemanager.googleapis.com/projects/123"
|
88
96
|
# @!attribute [rw] page_size
|
89
97
|
# @return [::Integer]
|
90
|
-
# Optional. The maximum number of TagBindings to return in the response. The
|
91
|
-
# allows a maximum of 300 TagBindings to return. If unspecified, the
|
92
|
-
# will use 100 as the default.
|
98
|
+
# Optional. The maximum number of TagBindings to return in the response. The
|
99
|
+
# server allows a maximum of 300 TagBindings to return. If unspecified, the
|
100
|
+
# server will use 100 as the default.
|
93
101
|
# @!attribute [rw] page_token
|
94
102
|
# @return [::String]
|
95
|
-
# Optional. A pagination token returned from a previous call to
|
96
|
-
# that indicates where this listing should continue from.
|
103
|
+
# Optional. A pagination token returned from a previous call to
|
104
|
+
# `ListTagBindings` that indicates where this listing should continue from.
|
97
105
|
class ListTagBindingsRequest
|
98
106
|
include ::Google::Protobuf::MessageExts
|
99
107
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -102,8 +110,7 @@ module Google
|
|
102
110
|
# The ListTagBindings response.
|
103
111
|
# @!attribute [rw] tag_bindings
|
104
112
|
# @return [::Array<::Google::Cloud::ResourceManager::V3::TagBinding>]
|
105
|
-
# A possibly paginated list of TagBindings for the specified
|
106
|
-
# resource.
|
113
|
+
# A possibly paginated list of TagBindings for the specified resource.
|
107
114
|
# @!attribute [rw] next_page_token
|
108
115
|
# @return [::String]
|
109
116
|
# Pagination token.
|
@@ -121,6 +128,85 @@ module Google
|
|
121
128
|
include ::Google::Protobuf::MessageExts
|
122
129
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
123
130
|
end
|
131
|
+
|
132
|
+
# The request message to ListEffectiveTags
|
133
|
+
# @!attribute [rw] parent
|
134
|
+
# @return [::String]
|
135
|
+
# Required. The full resource name of a resource for which you want to list
|
136
|
+
# the effective tags. E.g.
|
137
|
+
# "//cloudresourcemanager.googleapis.com/projects/123"
|
138
|
+
# @!attribute [rw] page_size
|
139
|
+
# @return [::Integer]
|
140
|
+
# Optional. The maximum number of effective tags to return in the response.
|
141
|
+
# The server allows a maximum of 300 effective tags to return in a single
|
142
|
+
# page. If unspecified, the server will use 100 as the default.
|
143
|
+
# @!attribute [rw] page_token
|
144
|
+
# @return [::String]
|
145
|
+
# Optional. A pagination token returned from a previous call to
|
146
|
+
# `ListEffectiveTags` that indicates from where this listing should continue.
|
147
|
+
class ListEffectiveTagsRequest
|
148
|
+
include ::Google::Protobuf::MessageExts
|
149
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
150
|
+
end
|
151
|
+
|
152
|
+
# The response of ListEffectiveTags.
|
153
|
+
# @!attribute [rw] effective_tags
|
154
|
+
# @return [::Array<::Google::Cloud::ResourceManager::V3::EffectiveTag>]
|
155
|
+
# A possibly paginated list of effective tags for the specified resource.
|
156
|
+
# @!attribute [rw] next_page_token
|
157
|
+
# @return [::String]
|
158
|
+
# Pagination token.
|
159
|
+
#
|
160
|
+
# If the result set is too large to fit in a single response, this token
|
161
|
+
# is returned. It encodes the position of the current result cursor.
|
162
|
+
# Feeding this value into a new list request with the `page_token` parameter
|
163
|
+
# gives the next page of the results.
|
164
|
+
#
|
165
|
+
# When `next_page_token` is not filled in, there is no next page and
|
166
|
+
# the list returned is the last page in the result set.
|
167
|
+
#
|
168
|
+
# Pagination tokens have a limited lifetime.
|
169
|
+
class ListEffectiveTagsResponse
|
170
|
+
include ::Google::Protobuf::MessageExts
|
171
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
172
|
+
end
|
173
|
+
|
174
|
+
# An EffectiveTag represents a tag that applies to a resource during policy
|
175
|
+
# evaluation. Tags can be either directly bound to a resource or inherited from
|
176
|
+
# its ancestor. EffectiveTag contains the name and
|
177
|
+
# namespaced_name of the tag value and tag key, with additional fields of
|
178
|
+
# `inherited` to indicate the inheritance status of the effective tag.
|
179
|
+
# @!attribute [rw] tag_value
|
180
|
+
# @return [::String]
|
181
|
+
# Resource name for TagValue in the format `tagValues/456`.
|
182
|
+
# @!attribute [rw] namespaced_tag_value
|
183
|
+
# @return [::String]
|
184
|
+
# Namespaced name of the TagValue. Now only supported in the format
|
185
|
+
# `{organization_id}/{tag_key_short_name}/{tag_value_short_name}`.
|
186
|
+
# Other formats will be supported when we add non-org parented tags.
|
187
|
+
# @!attribute [rw] tag_key
|
188
|
+
# @return [::String]
|
189
|
+
# The name of the TagKey, in the format `tagKeys/{id}`, such as
|
190
|
+
# `tagKeys/123`.
|
191
|
+
# @!attribute [rw] namespaced_tag_key
|
192
|
+
# @return [::String]
|
193
|
+
# The namespaced_name of the TagKey. Now only supported in the format of
|
194
|
+
# `{organization_id}/{tag_key_short_name}`. Other formats will be
|
195
|
+
# supported when we add non-org parented tags.
|
196
|
+
# @!attribute [rw] tag_key_parent_name
|
197
|
+
# @return [::String]
|
198
|
+
# The parent name of the tag key.
|
199
|
+
# Must be in the format `organizations/{organization_id}`.
|
200
|
+
# @!attribute [rw] inherited
|
201
|
+
# @return [::Boolean]
|
202
|
+
# Indicates the inheritance status of a tag value
|
203
|
+
# attached to the given resource. If the tag value is inherited from one of
|
204
|
+
# the resource's ancestors, inherited will be true. If false, then the tag
|
205
|
+
# value is directly attached to the resource, inherited will be false.
|
206
|
+
class EffectiveTag
|
207
|
+
include ::Google::Protobuf::MessageExts
|
208
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
209
|
+
end
|
124
210
|
end
|
125
211
|
end
|
126
212
|
end
|
@@ -0,0 +1,161 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Copyright 2023 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 ResourceManager
|
23
|
+
module V3
|
24
|
+
# A TagHold represents the use of a TagValue that is not captured by
|
25
|
+
# TagBindings. If a TagValue has any TagHolds, deletion will be blocked.
|
26
|
+
# This resource is intended to be created in the same cloud location as the
|
27
|
+
# `holder`.
|
28
|
+
# @!attribute [r] name
|
29
|
+
# @return [::String]
|
30
|
+
# Output only. The resource name of a TagHold. This is a String of the form:
|
31
|
+
# `tagValues/{tag-value-id}/tagHolds/{tag-hold-id}`
|
32
|
+
# (e.g. `tagValues/123/tagHolds/456`). This resource name is generated by
|
33
|
+
# the server.
|
34
|
+
# @!attribute [rw] holder
|
35
|
+
# @return [::String]
|
36
|
+
# Required. The name of the resource where the TagValue is being used. Must
|
37
|
+
# be less than 200 characters. E.g.
|
38
|
+
# `//compute.googleapis.com/compute/projects/myproject/regions/us-east-1/instanceGroupManagers/instance-group`
|
39
|
+
# @!attribute [rw] origin
|
40
|
+
# @return [::String]
|
41
|
+
# Optional. An optional string representing the origin of this request. This
|
42
|
+
# field should include human-understandable information to distinguish
|
43
|
+
# origins from each other. Must be less than 200 characters. E.g.
|
44
|
+
# `migs-35678234`
|
45
|
+
# @!attribute [rw] help_link
|
46
|
+
# @return [::String]
|
47
|
+
# Optional. A URL where an end user can learn more about removing this hold.
|
48
|
+
# E.g.
|
49
|
+
# `https://cloud.google.com/resource-manager/docs/tags/tags-creating-and-managing`
|
50
|
+
# @!attribute [r] create_time
|
51
|
+
# @return [::Google::Protobuf::Timestamp]
|
52
|
+
# Output only. The time this TagHold was created.
|
53
|
+
class TagHold
|
54
|
+
include ::Google::Protobuf::MessageExts
|
55
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
56
|
+
end
|
57
|
+
|
58
|
+
# The request message to create a TagHold.
|
59
|
+
# @!attribute [rw] parent
|
60
|
+
# @return [::String]
|
61
|
+
# Required. The resource name of the TagHold's parent TagValue. Must be of
|
62
|
+
# the form: `tagValues/{tag-value-id}`.
|
63
|
+
# @!attribute [rw] tag_hold
|
64
|
+
# @return [::Google::Cloud::ResourceManager::V3::TagHold]
|
65
|
+
# Required. The TagHold to be created.
|
66
|
+
# @!attribute [rw] validate_only
|
67
|
+
# @return [::Boolean]
|
68
|
+
# Optional. Set to true to perform the validations necessary for creating the
|
69
|
+
# resource, but not actually perform the action.
|
70
|
+
class CreateTagHoldRequest
|
71
|
+
include ::Google::Protobuf::MessageExts
|
72
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
73
|
+
end
|
74
|
+
|
75
|
+
# Runtime operation information for creating a TagHold.
|
76
|
+
# (-- The metadata is currently empty, but may include information in the
|
77
|
+
# future. --)
|
78
|
+
class CreateTagHoldMetadata
|
79
|
+
include ::Google::Protobuf::MessageExts
|
80
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
81
|
+
end
|
82
|
+
|
83
|
+
# The request message to delete a TagHold.
|
84
|
+
# @!attribute [rw] name
|
85
|
+
# @return [::String]
|
86
|
+
# Required. The resource name of the TagHold to delete. Must be of the form:
|
87
|
+
# `tagValues/{tag-value-id}/tagHolds/{tag-hold-id}`.
|
88
|
+
# @!attribute [rw] validate_only
|
89
|
+
# @return [::Boolean]
|
90
|
+
# Optional. Set to true to perform the validations necessary for deleting the
|
91
|
+
# resource, but not actually perform the action.
|
92
|
+
class DeleteTagHoldRequest
|
93
|
+
include ::Google::Protobuf::MessageExts
|
94
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
95
|
+
end
|
96
|
+
|
97
|
+
# Runtime operation information for deleting a TagHold.
|
98
|
+
# (-- The metadata is currently empty, but may include information in the
|
99
|
+
# future. --)
|
100
|
+
class DeleteTagHoldMetadata
|
101
|
+
include ::Google::Protobuf::MessageExts
|
102
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
103
|
+
end
|
104
|
+
|
105
|
+
# The request message for listing the TagHolds under a TagValue.
|
106
|
+
# @!attribute [rw] parent
|
107
|
+
# @return [::String]
|
108
|
+
# Required. The resource name of the parent TagValue. Must be of the form:
|
109
|
+
# `tagValues/{tag-value-id}`.
|
110
|
+
# @!attribute [rw] page_size
|
111
|
+
# @return [::Integer]
|
112
|
+
# Optional. The maximum number of TagHolds to return in the response. The
|
113
|
+
# server allows a maximum of 300 TagHolds to return. If unspecified, the
|
114
|
+
# server will use 100 as the default.
|
115
|
+
# @!attribute [rw] page_token
|
116
|
+
# @return [::String]
|
117
|
+
# Optional. A pagination token returned from a previous call to
|
118
|
+
# `ListTagHolds` that indicates where this listing should continue from.
|
119
|
+
# @!attribute [rw] filter
|
120
|
+
# @return [::String]
|
121
|
+
# Optional. Criteria used to select a subset of TagHolds parented by the
|
122
|
+
# TagValue to return. This field follows the syntax defined by aip.dev/160;
|
123
|
+
# the `holder` and `origin` fields are supported for filtering. Currently
|
124
|
+
# only `AND` syntax is supported. Some example queries are:
|
125
|
+
#
|
126
|
+
# * `holder =
|
127
|
+
# //compute.googleapis.com/compute/projects/myproject/regions/us-east-1/instanceGroupManagers/instance-group`
|
128
|
+
# * `origin = 35678234`
|
129
|
+
# * `holder =
|
130
|
+
# //compute.googleapis.com/compute/projects/myproject/regions/us-east-1/instanceGroupManagers/instance-group
|
131
|
+
# AND origin = 35678234`
|
132
|
+
class ListTagHoldsRequest
|
133
|
+
include ::Google::Protobuf::MessageExts
|
134
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
135
|
+
end
|
136
|
+
|
137
|
+
# The ListTagHolds response.
|
138
|
+
# @!attribute [rw] tag_holds
|
139
|
+
# @return [::Array<::Google::Cloud::ResourceManager::V3::TagHold>]
|
140
|
+
# A possibly paginated list of TagHolds.
|
141
|
+
# @!attribute [rw] next_page_token
|
142
|
+
# @return [::String]
|
143
|
+
# Pagination token.
|
144
|
+
#
|
145
|
+
# If the result set is too large to fit in a single response, this token
|
146
|
+
# is returned. It encodes the position of the current result cursor.
|
147
|
+
# Feeding this value into a new list request with the `page_token` parameter
|
148
|
+
# gives the next page of the results.
|
149
|
+
#
|
150
|
+
# When `next_page_token` is not filled in, there is no next page and
|
151
|
+
# the list returned is the last page in the result set.
|
152
|
+
#
|
153
|
+
# Pagination tokens have a limited lifetime.
|
154
|
+
class ListTagHoldsResponse
|
155
|
+
include ::Google::Protobuf::MessageExts
|
156
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
157
|
+
end
|
158
|
+
end
|
159
|
+
end
|
160
|
+
end
|
161
|
+
end
|
@@ -33,8 +33,8 @@ module Google
|
|
33
33
|
# Must be of the form `organizations/{org_id}`.
|
34
34
|
# @!attribute [rw] short_name
|
35
35
|
# @return [::String]
|
36
|
-
# Required. Immutable. The user friendly name for a TagKey. The short name
|
37
|
-
# unique for TagKeys within the same tag namespace.
|
36
|
+
# Required. Immutable. The user friendly name for a TagKey. The short name
|
37
|
+
# should be unique for TagKeys within the same tag namespace.
|
38
38
|
#
|
39
39
|
# The short name must be 1-63 characters, beginning and ending with
|
40
40
|
# an alphanumeric character ([a-z0-9A-Z]) with dashes (-), underscores (_),
|
@@ -44,7 +44,8 @@ module Google
|
|
44
44
|
# Output only. Immutable. Namespaced name of the TagKey.
|
45
45
|
# @!attribute [rw] description
|
46
46
|
# @return [::String]
|
47
|
-
# Optional. User-assigned description of the TagKey. Must not exceed 256
|
47
|
+
# Optional. User-assigned description of the TagKey. Must not exceed 256
|
48
|
+
# characters.
|
48
49
|
#
|
49
50
|
# Read-write.
|
50
51
|
# @!attribute [r] create_time
|
@@ -55,11 +56,36 @@ module Google
|
|
55
56
|
# Output only. Update time.
|
56
57
|
# @!attribute [rw] etag
|
57
58
|
# @return [::String]
|
58
|
-
# Optional. Entity tag which users can pass to prevent race conditions. This
|
59
|
-
# always set in server responses. See UpdateTagKeyRequest for
|
59
|
+
# Optional. Entity tag which users can pass to prevent race conditions. This
|
60
|
+
# field is always set in server responses. See UpdateTagKeyRequest for
|
61
|
+
# details.
|
62
|
+
# @!attribute [rw] purpose
|
63
|
+
# @return [::Google::Cloud::ResourceManager::V3::Purpose]
|
64
|
+
# Optional. A purpose denotes that this Tag is intended for use in policies
|
65
|
+
# of a specific policy engine, and will involve that policy engine in
|
66
|
+
# management operations involving this Tag. A purpose does not grant a
|
67
|
+
# policy engine exclusive rights to the Tag, and it may be referenced by
|
68
|
+
# other policy engines.
|
69
|
+
#
|
70
|
+
# A purpose cannot be changed once set.
|
71
|
+
# @!attribute [rw] purpose_data
|
72
|
+
# @return [::Google::Protobuf::Map{::String => ::String}]
|
73
|
+
# Optional. Purpose data corresponds to the policy system that the tag is
|
74
|
+
# intended for. See documentation for `Purpose` for formatting of this field.
|
75
|
+
#
|
76
|
+
# Purpose data cannot be changed once set.
|
60
77
|
class TagKey
|
61
78
|
include ::Google::Protobuf::MessageExts
|
62
79
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
80
|
+
|
81
|
+
# @!attribute [rw] key
|
82
|
+
# @return [::String]
|
83
|
+
# @!attribute [rw] value
|
84
|
+
# @return [::String]
|
85
|
+
class PurposeDataEntry
|
86
|
+
include ::Google::Protobuf::MessageExts
|
87
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
88
|
+
end
|
63
89
|
end
|
64
90
|
|
65
91
|
# The request message for listing all TagKeys under a parent resource.
|
@@ -69,9 +95,9 @@ module Google
|
|
69
95
|
# Must be of the form `folders/{folder_id}` or `organizations/{org_id}`.
|
70
96
|
# @!attribute [rw] page_size
|
71
97
|
# @return [::Integer]
|
72
|
-
# Optional. The maximum number of TagKeys to return in the response. The
|
73
|
-
# a maximum of 300 TagKeys to return. If unspecified, the
|
74
|
-
# as the default.
|
98
|
+
# Optional. The maximum number of TagKeys to return in the response. The
|
99
|
+
# server allows a maximum of 300 TagKeys to return. If unspecified, the
|
100
|
+
# server will use 100 as the default.
|
75
101
|
# @!attribute [rw] page_token
|
76
102
|
# @return [::String]
|
77
103
|
# Optional. A pagination token returned from a previous call to `ListTagKey`
|
@@ -104,15 +130,27 @@ module Google
|
|
104
130
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
105
131
|
end
|
106
132
|
|
133
|
+
# The request message for getting a TagKey by its namespaced name.
|
134
|
+
# @!attribute [rw] name
|
135
|
+
# @return [::String]
|
136
|
+
# Required. A namespaced tag key name in the format
|
137
|
+
# `{parentId}/{tagKeyShort}`, such as `42/foo` for a key with short name
|
138
|
+
# "foo" under the organization with ID 42 or `r2-d2/bar` for a key with short
|
139
|
+
# name "bar" under the project `r2-d2`.
|
140
|
+
class GetNamespacedTagKeyRequest
|
141
|
+
include ::Google::Protobuf::MessageExts
|
142
|
+
extend ::Google::Protobuf::MessageExts::ClassMethods
|
143
|
+
end
|
144
|
+
|
107
145
|
# The request message for creating a TagKey.
|
108
146
|
# @!attribute [rw] tag_key
|
109
147
|
# @return [::Google::Cloud::ResourceManager::V3::TagKey]
|
110
|
-
# Required. The TagKey to be created. Only fields `short_name`,
|
111
|
-
# and `parent` are considered during the creation request.
|
148
|
+
# Required. The TagKey to be created. Only fields `short_name`,
|
149
|
+
# `description`, and `parent` are considered during the creation request.
|
112
150
|
# @!attribute [rw] validate_only
|
113
151
|
# @return [::Boolean]
|
114
|
-
# Optional. Set to true to perform validations necessary for creating the
|
115
|
-
# not actually perform the action.
|
152
|
+
# Optional. Set to true to perform validations necessary for creating the
|
153
|
+
# resource, but not actually perform the action.
|
116
154
|
class CreateTagKeyRequest
|
117
155
|
include ::Google::Protobuf::MessageExts
|
118
156
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -127,10 +165,10 @@ module Google
|
|
127
165
|
# The request message for updating a TagKey.
|
128
166
|
# @!attribute [rw] tag_key
|
129
167
|
# @return [::Google::Cloud::ResourceManager::V3::TagKey]
|
130
|
-
# Required. The new definition of the TagKey. Only the `description` and
|
131
|
-
# can be updated by this request. If the `etag` field is not
|
132
|
-
# must match the `etag` field of the existing tag key. Otherwise,
|
133
|
-
# `
|
168
|
+
# Required. The new definition of the TagKey. Only the `description` and
|
169
|
+
# `etag` fields can be updated by this request. If the `etag` field is not
|
170
|
+
# empty, it must match the `etag` field of the existing tag key. Otherwise,
|
171
|
+
# `ABORTED` will be returned.
|
134
172
|
# @!attribute [rw] update_mask
|
135
173
|
# @return [::Google::Protobuf::FieldMask]
|
136
174
|
# Fields to be updated. The mask may only contain `description` or
|
@@ -154,17 +192,17 @@ module Google
|
|
154
192
|
# The request message for deleting a TagKey.
|
155
193
|
# @!attribute [rw] name
|
156
194
|
# @return [::String]
|
157
|
-
# Required. The resource name of a TagKey to be deleted in the format
|
158
|
-
# The TagKey cannot be a parent of any existing TagValues or
|
159
|
-
# deleted successfully.
|
195
|
+
# Required. The resource name of a TagKey to be deleted in the format
|
196
|
+
# `tagKeys/123`. The TagKey cannot be a parent of any existing TagValues or
|
197
|
+
# it will not be deleted successfully.
|
160
198
|
# @!attribute [rw] validate_only
|
161
199
|
# @return [::Boolean]
|
162
|
-
# Optional. Set as true to perform validations necessary for deletion, but
|
163
|
-
# perform the action.
|
200
|
+
# Optional. Set as true to perform validations necessary for deletion, but
|
201
|
+
# not actually perform the action.
|
164
202
|
# @!attribute [rw] etag
|
165
203
|
# @return [::String]
|
166
|
-
# Optional. The etag known to the client for the expected state of the
|
167
|
-
# to be used for optimistic concurrency.
|
204
|
+
# Optional. The etag known to the client for the expected state of the
|
205
|
+
# TagKey. This is to be used for optimistic concurrency.
|
168
206
|
class DeleteTagKeyRequest
|
169
207
|
include ::Google::Protobuf::MessageExts
|
170
208
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
@@ -175,6 +213,26 @@ module Google
|
|
175
213
|
include ::Google::Protobuf::MessageExts
|
176
214
|
extend ::Google::Protobuf::MessageExts::ClassMethods
|
177
215
|
end
|
216
|
+
|
217
|
+
# A purpose for each policy engine requiring such an integration. A single
|
218
|
+
# policy engine may have multiple purposes defined, however a TagKey may only
|
219
|
+
# specify a single purpose.
|
220
|
+
module Purpose
|
221
|
+
# Unspecified purpose.
|
222
|
+
PURPOSE_UNSPECIFIED = 0
|
223
|
+
|
224
|
+
# Purpose for Compute Engine firewalls.
|
225
|
+
# A corresponding purpose_data should be set for the network the tag is
|
226
|
+
# intended for. The key should be 'network' and the value should be in
|
227
|
+
# either of these two formats:
|
228
|
+
# -https://www.googleapis.com/compute/\\{compute_version}/projects/\\{project_id}/global/networks/\\{network_id}
|
229
|
+
# -\\{project_id}/\\{network_name}
|
230
|
+
#
|
231
|
+
# Examples:
|
232
|
+
# -https://www.googleapis.com/compute/staging_v1/projects/fail-closed-load-testing/global/networks/6992953698831725600
|
233
|
+
# -fail-closed-load-testing/load-testing-network
|
234
|
+
GCE_FIREWALL = 1
|
235
|
+
end
|
178
236
|
end
|
179
237
|
end
|
180
238
|
end
|