google-cloud-resource_manager-v3 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (70) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +201 -0
  5. data/README.md +139 -0
  6. data/lib/google-cloud-resource_manager-v3.rb +21 -0
  7. data/lib/google/cloud/resource_manager/v3.rb +43 -0
  8. data/lib/google/cloud/resource_manager/v3/folders.rb +52 -0
  9. data/lib/google/cloud/resource_manager/v3/folders/client.rb +1328 -0
  10. data/lib/google/cloud/resource_manager/v3/folders/credentials.rb +52 -0
  11. data/lib/google/cloud/resource_manager/v3/folders/operations.rb +664 -0
  12. data/lib/google/cloud/resource_manager/v3/folders/paths.rb +47 -0
  13. data/lib/google/cloud/resource_manager/v3/organizations.rb +49 -0
  14. data/lib/google/cloud/resource_manager/v3/organizations/client.rb +739 -0
  15. data/lib/google/cloud/resource_manager/v3/organizations/credentials.rb +52 -0
  16. data/lib/google/cloud/resource_manager/v3/organizations/paths.rb +47 -0
  17. data/lib/google/cloud/resource_manager/v3/projects.rb +50 -0
  18. data/lib/google/cloud/resource_manager/v3/projects/client.rb +1356 -0
  19. data/lib/google/cloud/resource_manager/v3/projects/credentials.rb +52 -0
  20. data/lib/google/cloud/resource_manager/v3/projects/operations.rb +664 -0
  21. data/lib/google/cloud/resource_manager/v3/projects/paths.rb +47 -0
  22. data/lib/google/cloud/resource_manager/v3/tag_bindings.rb +51 -0
  23. data/lib/google/cloud/resource_manager/v3/tag_bindings/client.rb +552 -0
  24. data/lib/google/cloud/resource_manager/v3/tag_bindings/credentials.rb +52 -0
  25. data/lib/google/cloud/resource_manager/v3/tag_bindings/operations.rb +664 -0
  26. data/lib/google/cloud/resource_manager/v3/tag_bindings/paths.rb +47 -0
  27. data/lib/google/cloud/resource_manager/v3/tag_keys.rb +50 -0
  28. data/lib/google/cloud/resource_manager/v3/tag_keys/client.rb +987 -0
  29. data/lib/google/cloud/resource_manager/v3/tag_keys/credentials.rb +52 -0
  30. data/lib/google/cloud/resource_manager/v3/tag_keys/operations.rb +664 -0
  31. data/lib/google/cloud/resource_manager/v3/tag_keys/paths.rb +47 -0
  32. data/lib/google/cloud/resource_manager/v3/tag_values.rb +50 -0
  33. data/lib/google/cloud/resource_manager/v3/tag_values/client.rb +983 -0
  34. data/lib/google/cloud/resource_manager/v3/tag_values/credentials.rb +52 -0
  35. data/lib/google/cloud/resource_manager/v3/tag_values/operations.rb +664 -0
  36. data/lib/google/cloud/resource_manager/v3/tag_values/paths.rb +47 -0
  37. data/lib/google/cloud/resource_manager/v3/version.rb +28 -0
  38. data/lib/google/cloud/resourcemanager/v3/folders_pb.rb +113 -0
  39. data/lib/google/cloud/resourcemanager/v3/folders_services_pb.rb +166 -0
  40. data/lib/google/cloud/resourcemanager/v3/organizations_pb.rb +66 -0
  41. data/lib/google/cloud/resourcemanager/v3/organizations_services_pb.rb +73 -0
  42. data/lib/google/cloud/resourcemanager/v3/projects_pb.rb +113 -0
  43. data/lib/google/cloud/resourcemanager/v3/projects_services_pb.rb +187 -0
  44. data/lib/google/cloud/resourcemanager/v3/tag_bindings_pb.rb +55 -0
  45. data/lib/google/cloud/resourcemanager/v3/tag_bindings_services_pb.rb +55 -0
  46. data/lib/google/cloud/resourcemanager/v3/tag_keys_pb.rb +79 -0
  47. data/lib/google/cloud/resourcemanager/v3/tag_keys_services_pb.rb +77 -0
  48. data/lib/google/cloud/resourcemanager/v3/tag_values_pb.rb +79 -0
  49. data/lib/google/cloud/resourcemanager/v3/tag_values_services_pb.rb +78 -0
  50. data/proto_docs/README.md +4 -0
  51. data/proto_docs/google/api/field_behavior.rb +71 -0
  52. data/proto_docs/google/api/resource.rb +283 -0
  53. data/proto_docs/google/cloud/resourcemanager/v3/folders.rb +307 -0
  54. data/proto_docs/google/cloud/resourcemanager/v3/organizations.rb +152 -0
  55. data/proto_docs/google/cloud/resourcemanager/v3/projects.rb +395 -0
  56. data/proto_docs/google/cloud/resourcemanager/v3/tag_bindings.rb +127 -0
  57. data/proto_docs/google/cloud/resourcemanager/v3/tag_keys.rb +181 -0
  58. data/proto_docs/google/cloud/resourcemanager/v3/tag_values.rb +179 -0
  59. data/proto_docs/google/iam/v1/iam_policy.rb +80 -0
  60. data/proto_docs/google/iam/v1/options.rb +40 -0
  61. data/proto_docs/google/iam/v1/policy.rb +248 -0
  62. data/proto_docs/google/longrunning/operations.rb +164 -0
  63. data/proto_docs/google/protobuf/any.rb +141 -0
  64. data/proto_docs/google/protobuf/duration.rb +98 -0
  65. data/proto_docs/google/protobuf/empty.rb +36 -0
  66. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  67. data/proto_docs/google/protobuf/timestamp.rb +129 -0
  68. data/proto_docs/google/rpc/status.rb +46 -0
  69. data/proto_docs/google/type/expr.rb +75 -0
  70. metadata +283 -0
@@ -0,0 +1,47 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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
+ module TagValues
25
+ # Path helper methods for the TagValues API.
26
+ module Paths
27
+ ##
28
+ # Create a fully-qualified TagValue resource string.
29
+ #
30
+ # The resource will be in the following format:
31
+ #
32
+ # `tagValues/{tag_value}`
33
+ #
34
+ # @param tag_value [String]
35
+ #
36
+ # @return [::String]
37
+ def tag_value_path tag_value:
38
+ "tagValues/#{tag_value}"
39
+ end
40
+
41
+ extend self
42
+ end
43
+ end
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2021 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
+ VERSION = "0.1.0"
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,113 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/resourcemanager/v3/folders.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
10
+ require 'google/iam/v1/iam_policy_pb'
11
+ require 'google/iam/v1/policy_pb'
12
+ require 'google/longrunning/operations_pb'
13
+ require 'google/protobuf/field_mask_pb'
14
+ require 'google/protobuf/timestamp_pb'
15
+ Google::Protobuf::DescriptorPool.generated_pool.build do
16
+ add_file("google/cloud/resourcemanager/v3/folders.proto", :syntax => :proto3) do
17
+ add_message "google.cloud.resourcemanager.v3.Folder" do
18
+ optional :name, :string, 1
19
+ optional :parent, :string, 2
20
+ optional :display_name, :string, 3
21
+ optional :state, :enum, 4, "google.cloud.resourcemanager.v3.Folder.State"
22
+ optional :create_time, :message, 5, "google.protobuf.Timestamp"
23
+ optional :update_time, :message, 6, "google.protobuf.Timestamp"
24
+ optional :delete_time, :message, 7, "google.protobuf.Timestamp"
25
+ optional :etag, :string, 8
26
+ end
27
+ add_enum "google.cloud.resourcemanager.v3.Folder.State" do
28
+ value :STATE_UNSPECIFIED, 0
29
+ value :ACTIVE, 1
30
+ value :DELETE_REQUESTED, 2
31
+ end
32
+ add_message "google.cloud.resourcemanager.v3.GetFolderRequest" do
33
+ optional :name, :string, 1
34
+ end
35
+ add_message "google.cloud.resourcemanager.v3.ListFoldersRequest" do
36
+ optional :parent, :string, 1
37
+ optional :page_size, :int32, 2
38
+ optional :page_token, :string, 3
39
+ optional :show_deleted, :bool, 4
40
+ end
41
+ add_message "google.cloud.resourcemanager.v3.ListFoldersResponse" do
42
+ repeated :folders, :message, 1, "google.cloud.resourcemanager.v3.Folder"
43
+ optional :next_page_token, :string, 2
44
+ end
45
+ add_message "google.cloud.resourcemanager.v3.SearchFoldersRequest" do
46
+ optional :page_size, :int32, 1
47
+ optional :page_token, :string, 2
48
+ optional :query, :string, 3
49
+ end
50
+ add_message "google.cloud.resourcemanager.v3.SearchFoldersResponse" do
51
+ repeated :folders, :message, 1, "google.cloud.resourcemanager.v3.Folder"
52
+ optional :next_page_token, :string, 2
53
+ end
54
+ add_message "google.cloud.resourcemanager.v3.CreateFolderRequest" do
55
+ optional :folder, :message, 2, "google.cloud.resourcemanager.v3.Folder"
56
+ end
57
+ add_message "google.cloud.resourcemanager.v3.CreateFolderMetadata" do
58
+ optional :display_name, :string, 1
59
+ optional :parent, :string, 2
60
+ end
61
+ add_message "google.cloud.resourcemanager.v3.UpdateFolderRequest" do
62
+ optional :folder, :message, 1, "google.cloud.resourcemanager.v3.Folder"
63
+ optional :update_mask, :message, 2, "google.protobuf.FieldMask"
64
+ end
65
+ add_message "google.cloud.resourcemanager.v3.UpdateFolderMetadata" do
66
+ end
67
+ add_message "google.cloud.resourcemanager.v3.MoveFolderRequest" do
68
+ optional :name, :string, 1
69
+ optional :destination_parent, :string, 2
70
+ end
71
+ add_message "google.cloud.resourcemanager.v3.MoveFolderMetadata" do
72
+ optional :display_name, :string, 1
73
+ optional :source_parent, :string, 2
74
+ optional :destination_parent, :string, 3
75
+ end
76
+ add_message "google.cloud.resourcemanager.v3.DeleteFolderRequest" do
77
+ optional :name, :string, 1
78
+ end
79
+ add_message "google.cloud.resourcemanager.v3.DeleteFolderMetadata" do
80
+ end
81
+ add_message "google.cloud.resourcemanager.v3.UndeleteFolderRequest" do
82
+ optional :name, :string, 1
83
+ end
84
+ add_message "google.cloud.resourcemanager.v3.UndeleteFolderMetadata" do
85
+ end
86
+ end
87
+ end
88
+
89
+ module Google
90
+ module Cloud
91
+ module ResourceManager
92
+ module V3
93
+ Folder = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.Folder").msgclass
94
+ Folder::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.Folder.State").enummodule
95
+ GetFolderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.GetFolderRequest").msgclass
96
+ ListFoldersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.ListFoldersRequest").msgclass
97
+ ListFoldersResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.ListFoldersResponse").msgclass
98
+ SearchFoldersRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.SearchFoldersRequest").msgclass
99
+ SearchFoldersResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.SearchFoldersResponse").msgclass
100
+ CreateFolderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.CreateFolderRequest").msgclass
101
+ CreateFolderMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.CreateFolderMetadata").msgclass
102
+ UpdateFolderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.UpdateFolderRequest").msgclass
103
+ UpdateFolderMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.UpdateFolderMetadata").msgclass
104
+ MoveFolderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.MoveFolderRequest").msgclass
105
+ MoveFolderMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.MoveFolderMetadata").msgclass
106
+ DeleteFolderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.DeleteFolderRequest").msgclass
107
+ DeleteFolderMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.DeleteFolderMetadata").msgclass
108
+ UndeleteFolderRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.UndeleteFolderRequest").msgclass
109
+ UndeleteFolderMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.UndeleteFolderMetadata").msgclass
110
+ end
111
+ end
112
+ end
113
+ end
@@ -0,0 +1,166 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/resourcemanager/v3/folders.proto for package 'Google.Cloud.ResourceManager.V3'
3
+ # Original file comments:
4
+ # Copyright 2021 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/resourcemanager/v3/folders_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module ResourceManager
25
+ module V3
26
+ module Folders
27
+ # Manages Cloud Platform folder resources.
28
+ # Folders can be used to organize the resources under an
29
+ # organization and to control the policies applied to groups of resources.
30
+ class Service
31
+
32
+ include GRPC::GenericService
33
+
34
+ self.marshal_class_method = :encode
35
+ self.unmarshal_class_method = :decode
36
+ self.service_name = 'google.cloud.resourcemanager.v3.Folders'
37
+
38
+ # Retrieves a folder identified by the supplied resource name.
39
+ # Valid folder resource names have the format `folders/{folder_id}`
40
+ # (for example, `folders/1234`).
41
+ # The caller must have `resourcemanager.folders.get` permission on the
42
+ # identified folder.
43
+ rpc :GetFolder, ::Google::Cloud::ResourceManager::V3::GetFolderRequest, ::Google::Cloud::ResourceManager::V3::Folder
44
+ # Lists the folders that are direct descendants of supplied parent resource.
45
+ # `list()` provides a strongly consistent view of the folders underneath
46
+ # the specified parent resource.
47
+ # `list()` returns folders sorted based upon the (ascending) lexical ordering
48
+ # of their display_name.
49
+ # The caller must have `resourcemanager.folders.list` permission on the
50
+ # identified parent.
51
+ rpc :ListFolders, ::Google::Cloud::ResourceManager::V3::ListFoldersRequest, ::Google::Cloud::ResourceManager::V3::ListFoldersResponse
52
+ # Search for folders that match specific filter criteria.
53
+ # `search()` provides an eventually consistent view of the folders a user has
54
+ # access to which meet the specified filter criteria.
55
+ #
56
+ # This will only return folders on which the caller has the
57
+ # permission `resourcemanager.folders.get`.
58
+ rpc :SearchFolders, ::Google::Cloud::ResourceManager::V3::SearchFoldersRequest, ::Google::Cloud::ResourceManager::V3::SearchFoldersResponse
59
+ # Creates a folder in the resource hierarchy.
60
+ # Returns an `Operation` which can be used to track the progress of the
61
+ # folder creation workflow.
62
+ # Upon success, the `Operation.response` field will be populated with the
63
+ # created Folder.
64
+ #
65
+ # In order to succeed, the addition of this new folder must not violate
66
+ # the folder naming, height, or fanout constraints.
67
+ #
68
+ # + The folder's `display_name` must be distinct from all other folders that
69
+ # share its parent.
70
+ # + The addition of the folder must not cause the active folder hierarchy
71
+ # to exceed a height of 10. Note, the full active + deleted folder hierarchy
72
+ # is allowed to reach a height of 20; this provides additional headroom when
73
+ # moving folders that contain deleted folders.
74
+ # + The addition of the folder must not cause the total number of folders
75
+ # under its parent to exceed 300.
76
+ #
77
+ # If the operation fails due to a folder constraint violation, some errors
78
+ # may be returned by the `CreateFolder` request, with status code
79
+ # `FAILED_PRECONDITION` and an error description. Other folder constraint
80
+ # violations will be communicated in the `Operation`, with the specific
81
+ # `PreconditionFailure` returned in the details list in the `Operation.error`
82
+ # field.
83
+ #
84
+ # The caller must have `resourcemanager.folders.create` permission on the
85
+ # identified parent.
86
+ rpc :CreateFolder, ::Google::Cloud::ResourceManager::V3::CreateFolderRequest, ::Google::Longrunning::Operation
87
+ # Updates a folder, changing its `display_name`.
88
+ # Changes to the folder `display_name` will be rejected if they violate
89
+ # either the `display_name` formatting rules or the naming constraints
90
+ # described in the [CreateFolder][google.cloud.resourcemanager.v3.Folders.CreateFolder] documentation.
91
+ #
92
+ # The folder's `display_name` must start and end with a letter or digit,
93
+ # may contain letters, digits, spaces, hyphens and underscores and can be
94
+ # between 3 and 30 characters. This is captured by the regular expression:
95
+ # `[\p{L}\p{N}][\p{L}\p{N}_- ]{1,28}[\p{L}\p{N}]`.
96
+ # The caller must have `resourcemanager.folders.update` permission on the
97
+ # identified folder.
98
+ #
99
+ # If the update fails due to the unique name constraint then a
100
+ # `PreconditionFailure` explaining this violation will be returned
101
+ # in the Status.details field.
102
+ rpc :UpdateFolder, ::Google::Cloud::ResourceManager::V3::UpdateFolderRequest, ::Google::Longrunning::Operation
103
+ # Moves a folder under a new resource parent.
104
+ # Returns an `Operation` which can be used to track the progress of the
105
+ # folder move workflow.
106
+ # Upon success, the `Operation.response` field will be populated with the
107
+ # moved folder.
108
+ # Upon failure, a `FolderOperationError` categorizing the failure cause will
109
+ # be returned - if the failure occurs synchronously then the
110
+ # `FolderOperationError` will be returned in the `Status.details` field.
111
+ # If it occurs asynchronously, then the FolderOperation will be returned
112
+ # in the `Operation.error` field.
113
+ # In addition, the `Operation.metadata` field will be populated with a
114
+ # `FolderOperation` message as an aid to stateless clients.
115
+ # Folder moves will be rejected if they violate either the naming, height,
116
+ # or fanout constraints described in the
117
+ # [CreateFolder][google.cloud.resourcemanager.v3.Folders.CreateFolder] documentation.
118
+ # The caller must have `resourcemanager.folders.move` permission on the
119
+ # folder's current and proposed new parent.
120
+ rpc :MoveFolder, ::Google::Cloud::ResourceManager::V3::MoveFolderRequest, ::Google::Longrunning::Operation
121
+ # Requests deletion of a folder. The folder is moved into the
122
+ # [DELETE_REQUESTED][google.cloud.resourcemanager.v3.Folder.State.DELETE_REQUESTED] state
123
+ # immediately, and is deleted approximately 30 days later. This method may
124
+ # only be called on an empty folder, where a folder is empty if it doesn't
125
+ # contain any folders or projects in the [ACTIVE][google.cloud.resourcemanager.v3.Folder.State.ACTIVE] state.
126
+ # If called on a folder in [DELETE_REQUESTED][google.cloud.resourcemanager.v3.Folder.State.DELETE_REQUESTED]
127
+ # state the operation will result in a no-op success.
128
+ # The caller must have `resourcemanager.folders.delete` permission on the
129
+ # identified folder.
130
+ rpc :DeleteFolder, ::Google::Cloud::ResourceManager::V3::DeleteFolderRequest, ::Google::Longrunning::Operation
131
+ # Cancels the deletion request for a folder. This method may be called on a
132
+ # folder in any state. If the folder is in the [ACTIVE][google.cloud.resourcemanager.v3.Folder.State.ACTIVE]
133
+ # state the result will be a no-op success. In order to succeed, the folder's
134
+ # parent must be in the [ACTIVE][google.cloud.resourcemanager.v3.Folder.State.ACTIVE] state. In addition,
135
+ # reintroducing the folder into the tree must not violate folder naming,
136
+ # height, and fanout constraints described in the
137
+ # [CreateFolder][google.cloud.resourcemanager.v3.Folders.CreateFolder] documentation.
138
+ # The caller must have `resourcemanager.folders.undelete` permission on the
139
+ # identified folder.
140
+ rpc :UndeleteFolder, ::Google::Cloud::ResourceManager::V3::UndeleteFolderRequest, ::Google::Longrunning::Operation
141
+ # Gets the access control policy for a folder. The returned policy may be
142
+ # empty if no such policy or resource exists. The `resource` field should
143
+ # be the folder's resource name, for example: "folders/1234".
144
+ # The caller must have `resourcemanager.folders.getIamPolicy` permission
145
+ # on the identified folder.
146
+ rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
147
+ # Sets the access control policy on a folder, replacing any existing policy.
148
+ # The `resource` field should be the folder's resource name, for example:
149
+ # "folders/1234".
150
+ # The caller must have `resourcemanager.folders.setIamPolicy` permission
151
+ # on the identified folder.
152
+ rpc :SetIamPolicy, ::Google::Iam::V1::SetIamPolicyRequest, ::Google::Iam::V1::Policy
153
+ # Returns permissions that a caller has on the specified folder.
154
+ # The `resource` field should be the folder's resource name,
155
+ # for example: "folders/1234".
156
+ #
157
+ # There are no permissions required for making this API call.
158
+ rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
159
+ end
160
+
161
+ Stub = Service.rpc_stub_class
162
+ end
163
+ end
164
+ end
165
+ end
166
+ end
@@ -0,0 +1,66 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # source: google/cloud/resourcemanager/v3/organizations.proto
3
+
4
+ require 'google/protobuf'
5
+
6
+ require 'google/api/annotations_pb'
7
+ require 'google/api/client_pb'
8
+ require 'google/api/field_behavior_pb'
9
+ require 'google/api/resource_pb'
10
+ require 'google/iam/v1/iam_policy_pb'
11
+ require 'google/iam/v1/policy_pb'
12
+ require 'google/longrunning/operations_pb'
13
+ require 'google/protobuf/timestamp_pb'
14
+ Google::Protobuf::DescriptorPool.generated_pool.build do
15
+ add_file("google/cloud/resourcemanager/v3/organizations.proto", :syntax => :proto3) do
16
+ add_message "google.cloud.resourcemanager.v3.Organization" do
17
+ optional :name, :string, 1
18
+ optional :display_name, :string, 2
19
+ optional :state, :enum, 4, "google.cloud.resourcemanager.v3.Organization.State"
20
+ optional :create_time, :message, 5, "google.protobuf.Timestamp"
21
+ optional :update_time, :message, 6, "google.protobuf.Timestamp"
22
+ optional :delete_time, :message, 7, "google.protobuf.Timestamp"
23
+ optional :etag, :string, 8
24
+ oneof :owner do
25
+ optional :directory_customer_id, :string, 3
26
+ end
27
+ end
28
+ add_enum "google.cloud.resourcemanager.v3.Organization.State" do
29
+ value :STATE_UNSPECIFIED, 0
30
+ value :ACTIVE, 1
31
+ value :DELETE_REQUESTED, 2
32
+ end
33
+ add_message "google.cloud.resourcemanager.v3.GetOrganizationRequest" do
34
+ optional :name, :string, 1
35
+ end
36
+ add_message "google.cloud.resourcemanager.v3.SearchOrganizationsRequest" do
37
+ optional :page_size, :int32, 1
38
+ optional :page_token, :string, 2
39
+ optional :query, :string, 3
40
+ end
41
+ add_message "google.cloud.resourcemanager.v3.SearchOrganizationsResponse" do
42
+ repeated :organizations, :message, 1, "google.cloud.resourcemanager.v3.Organization"
43
+ optional :next_page_token, :string, 2
44
+ end
45
+ add_message "google.cloud.resourcemanager.v3.DeleteOrganizationMetadata" do
46
+ end
47
+ add_message "google.cloud.resourcemanager.v3.UndeleteOrganizationMetadata" do
48
+ end
49
+ end
50
+ end
51
+
52
+ module Google
53
+ module Cloud
54
+ module ResourceManager
55
+ module V3
56
+ Organization = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.Organization").msgclass
57
+ Organization::State = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.Organization.State").enummodule
58
+ GetOrganizationRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.GetOrganizationRequest").msgclass
59
+ SearchOrganizationsRequest = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.SearchOrganizationsRequest").msgclass
60
+ SearchOrganizationsResponse = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.SearchOrganizationsResponse").msgclass
61
+ DeleteOrganizationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.DeleteOrganizationMetadata").msgclass
62
+ UndeleteOrganizationMetadata = ::Google::Protobuf::DescriptorPool.generated_pool.lookup("google.cloud.resourcemanager.v3.UndeleteOrganizationMetadata").msgclass
63
+ end
64
+ end
65
+ end
66
+ end
@@ -0,0 +1,73 @@
1
+ # Generated by the protocol buffer compiler. DO NOT EDIT!
2
+ # Source: google/cloud/resourcemanager/v3/organizations.proto for package 'Google.Cloud.ResourceManager.V3'
3
+ # Original file comments:
4
+ # Copyright 2021 Google LLC
5
+ #
6
+ # Licensed under the Apache License, Version 2.0 (the "License");
7
+ # you may not use this file except in compliance with the License.
8
+ # You may obtain a copy of the License at
9
+ #
10
+ # http://www.apache.org/licenses/LICENSE-2.0
11
+ #
12
+ # Unless required by applicable law or agreed to in writing, software
13
+ # distributed under the License is distributed on an "AS IS" BASIS,
14
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
15
+ # See the License for the specific language governing permissions and
16
+ # limitations under the License.
17
+ #
18
+
19
+ require 'grpc'
20
+ require 'google/cloud/resourcemanager/v3/organizations_pb'
21
+
22
+ module Google
23
+ module Cloud
24
+ module ResourceManager
25
+ module V3
26
+ module Organizations
27
+ # Allows users to manage their organization resources.
28
+ class Service
29
+
30
+ include GRPC::GenericService
31
+
32
+ self.marshal_class_method = :encode
33
+ self.unmarshal_class_method = :decode
34
+ self.service_name = 'google.cloud.resourcemanager.v3.Organizations'
35
+
36
+ # Fetches an organization resource identified by the specified resource name.
37
+ rpc :GetOrganization, ::Google::Cloud::ResourceManager::V3::GetOrganizationRequest, ::Google::Cloud::ResourceManager::V3::Organization
38
+ # Searches organization resources that are visible to the user and satisfy
39
+ # the specified filter. This method returns organizations in an unspecified
40
+ # order. New organizations do not necessarily appear at the end of the
41
+ # results, and may take a small amount of time to appear.
42
+ #
43
+ # Search will only return organizations on which the user has the permission
44
+ # `resourcemanager.organizations.get`
45
+ rpc :SearchOrganizations, ::Google::Cloud::ResourceManager::V3::SearchOrganizationsRequest, ::Google::Cloud::ResourceManager::V3::SearchOrganizationsResponse
46
+ # Gets the access control policy for an organization resource. The policy may
47
+ # be empty if no such policy or resource exists. The `resource` field should
48
+ # be the organization's resource name, for example: "organizations/123".
49
+ #
50
+ # Authorization requires the IAM permission
51
+ # `resourcemanager.organizations.getIamPolicy` on the specified organization.
52
+ rpc :GetIamPolicy, ::Google::Iam::V1::GetIamPolicyRequest, ::Google::Iam::V1::Policy
53
+ # Sets the access control policy on an organization resource. Replaces any
54
+ # existing policy. The `resource` field should be the organization's resource
55
+ # name, for example: "organizations/123".
56
+ #
57
+ # Authorization requires the IAM permission
58
+ # `resourcemanager.organizations.setIamPolicy` on the specified organization.
59
+ rpc :SetIamPolicy, ::Google::Iam::V1::SetIamPolicyRequest, ::Google::Iam::V1::Policy
60
+ # Returns the permissions that a caller has on the specified organization.
61
+ # The `resource` field should be the organization's resource name,
62
+ # for example: "organizations/123".
63
+ #
64
+ # There are no permissions required for making this API call.
65
+ rpc :TestIamPermissions, ::Google::Iam::V1::TestIamPermissionsRequest, ::Google::Iam::V1::TestIamPermissionsResponse
66
+ end
67
+
68
+ Stub = Service.rpc_stub_class
69
+ end
70
+ end
71
+ end
72
+ end
73
+ end