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.
- checksums.yaml +7 -0
- data/.yardopts +12 -0
- data/AUTHENTICATION.md +169 -0
- data/LICENSE.md +201 -0
- data/README.md +139 -0
- data/lib/google-cloud-resource_manager-v3.rb +21 -0
- data/lib/google/cloud/resource_manager/v3.rb +43 -0
- data/lib/google/cloud/resource_manager/v3/folders.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/folders/client.rb +1328 -0
- data/lib/google/cloud/resource_manager/v3/folders/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/folders/operations.rb +664 -0
- data/lib/google/cloud/resource_manager/v3/folders/paths.rb +47 -0
- data/lib/google/cloud/resource_manager/v3/organizations.rb +49 -0
- data/lib/google/cloud/resource_manager/v3/organizations/client.rb +739 -0
- data/lib/google/cloud/resource_manager/v3/organizations/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/organizations/paths.rb +47 -0
- data/lib/google/cloud/resource_manager/v3/projects.rb +50 -0
- data/lib/google/cloud/resource_manager/v3/projects/client.rb +1356 -0
- data/lib/google/cloud/resource_manager/v3/projects/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/projects/operations.rb +664 -0
- data/lib/google/cloud/resource_manager/v3/projects/paths.rb +47 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings.rb +51 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/client.rb +552 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/operations.rb +664 -0
- data/lib/google/cloud/resource_manager/v3/tag_bindings/paths.rb +47 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys.rb +50 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/client.rb +987 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/operations.rb +664 -0
- data/lib/google/cloud/resource_manager/v3/tag_keys/paths.rb +47 -0
- data/lib/google/cloud/resource_manager/v3/tag_values.rb +50 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/client.rb +983 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/credentials.rb +52 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/operations.rb +664 -0
- data/lib/google/cloud/resource_manager/v3/tag_values/paths.rb +47 -0
- data/lib/google/cloud/resource_manager/v3/version.rb +28 -0
- data/lib/google/cloud/resourcemanager/v3/folders_pb.rb +113 -0
- data/lib/google/cloud/resourcemanager/v3/folders_services_pb.rb +166 -0
- data/lib/google/cloud/resourcemanager/v3/organizations_pb.rb +66 -0
- data/lib/google/cloud/resourcemanager/v3/organizations_services_pb.rb +73 -0
- data/lib/google/cloud/resourcemanager/v3/projects_pb.rb +113 -0
- data/lib/google/cloud/resourcemanager/v3/projects_services_pb.rb +187 -0
- data/lib/google/cloud/resourcemanager/v3/tag_bindings_pb.rb +55 -0
- data/lib/google/cloud/resourcemanager/v3/tag_bindings_services_pb.rb +55 -0
- data/lib/google/cloud/resourcemanager/v3/tag_keys_pb.rb +79 -0
- data/lib/google/cloud/resourcemanager/v3/tag_keys_services_pb.rb +77 -0
- data/lib/google/cloud/resourcemanager/v3/tag_values_pb.rb +79 -0
- data/lib/google/cloud/resourcemanager/v3/tag_values_services_pb.rb +78 -0
- data/proto_docs/README.md +4 -0
- data/proto_docs/google/api/field_behavior.rb +71 -0
- data/proto_docs/google/api/resource.rb +283 -0
- data/proto_docs/google/cloud/resourcemanager/v3/folders.rb +307 -0
- data/proto_docs/google/cloud/resourcemanager/v3/organizations.rb +152 -0
- data/proto_docs/google/cloud/resourcemanager/v3/projects.rb +395 -0
- data/proto_docs/google/cloud/resourcemanager/v3/tag_bindings.rb +127 -0
- data/proto_docs/google/cloud/resourcemanager/v3/tag_keys.rb +181 -0
- data/proto_docs/google/cloud/resourcemanager/v3/tag_values.rb +179 -0
- data/proto_docs/google/iam/v1/iam_policy.rb +80 -0
- data/proto_docs/google/iam/v1/options.rb +40 -0
- data/proto_docs/google/iam/v1/policy.rb +248 -0
- data/proto_docs/google/longrunning/operations.rb +164 -0
- data/proto_docs/google/protobuf/any.rb +141 -0
- data/proto_docs/google/protobuf/duration.rb +98 -0
- data/proto_docs/google/protobuf/empty.rb +36 -0
- data/proto_docs/google/protobuf/field_mask.rb +229 -0
- data/proto_docs/google/protobuf/timestamp.rb +129 -0
- data/proto_docs/google/rpc/status.rb +46 -0
- data/proto_docs/google/type/expr.rb +75 -0
- 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
|