Class: Google::Cloud::ResourceManager::V3::Projects::Rest::Client
- Inherits:
-
Object
- Object
- Google::Cloud::ResourceManager::V3::Projects::Rest::Client
- Includes:
- Paths
- Defined in:
- lib/google/cloud/resource_manager/v3/projects/rest/client.rb
Overview
REST client for the Projects service.
Manages Google Cloud Projects.
Defined Under Namespace
Classes: Configuration
Instance Attribute Summary collapse
-
#operations_client ⇒ ::Google::Cloud::ResourceManager::V3::Projects::Rest::Operations
readonly
Get the associated client for long-running operations.
Class Method Summary collapse
-
.configure {|config| ... } ⇒ Client::Configuration
Configure the Projects Client class.
Instance Method Summary collapse
-
#configure {|config| ... } ⇒ Client::Configuration
Configure the Projects Client instance.
-
#create_project(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Operation
Request that a new project be created.
-
#delete_project(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Operation
Marks the project identified by the specified
name
(for example,projects/415104041262
) for deletion. -
#get_iam_policy(request, options = nil) {|result, operation| ... } ⇒ ::Google::Iam::V1::Policy
Returns the IAM access control policy for the specified project, in the format
projects/{ProjectIdOrNumber}
e.g. -
#get_project(request, options = nil) {|result, operation| ... } ⇒ ::Google::Cloud::ResourceManager::V3::Project
Retrieves the project identified by the specified
name
(for example,projects/415104041262
). -
#initialize {|config| ... } ⇒ Client
constructor
Create a new Projects REST client object.
-
#list_projects(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::Project>
Lists projects that are direct children of the specified folder or organization resource.
-
#move_project(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Operation
Move a project to another place in your resource hierarchy, under a new resource parent.
-
#search_projects(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::Project>
Search for projects that the caller has both
resourcemanager.projects.get
permission on, and also satisfy the specified query. -
#set_iam_policy(request, options = nil) {|result, operation| ... } ⇒ ::Google::Iam::V1::Policy
Sets the IAM access control policy for the specified project, in the format
projects/{ProjectIdOrNumber}
e.g. -
#test_iam_permissions(request, options = nil) {|result, operation| ... } ⇒ ::Google::Iam::V1::TestIamPermissionsResponse
Returns permissions that a caller has on the specified project, in the format
projects/{ProjectIdOrNumber}
e.g. -
#undelete_project(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Operation
Restores the project identified by the specified
name
(for example,projects/415104041262
). -
#universe_domain ⇒ String
The effective universe domain.
-
#update_project(request, options = nil) {|result, operation| ... } ⇒ ::Gapic::Operation
Updates the
display_name
and labels of the project identified by the specifiedname
(for example,projects/415104041262
).
Methods included from Paths
Constructor Details
#initialize {|config| ... } ⇒ Client
Create a new Projects REST client object.
152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 152 def initialize # Create the configuration object @config = Configuration.new Client.configure # Yield the configuration if needed yield @config if block_given? # Create credentials credentials = @config.credentials # Use self-signed JWT if the endpoint is unchanged from default, # but only if the default endpoint does not have a region prefix. enable_self_signed_jwt = @config.endpoint.nil? || (@config.endpoint == Configuration::DEFAULT_ENDPOINT && !@config.endpoint.split(".").first.include?("-")) credentials ||= Credentials.default scope: @config.scope, enable_self_signed_jwt: enable_self_signed_jwt if credentials.is_a?(::String) || credentials.is_a?(::Hash) credentials = Credentials.new credentials, scope: @config.scope end @quota_project_id = @config.quota_project @quota_project_id ||= credentials.quota_project_id if credentials.respond_to? :quota_project_id @operations_client = ::Google::Cloud::ResourceManager::V3::Projects::Rest::Operations.new do |config| config.credentials = credentials config.quota_project = @quota_project_id config.endpoint = @config.endpoint config.universe_domain = @config.universe_domain end @projects_stub = ::Google::Cloud::ResourceManager::V3::Projects::Rest::ServiceStub.new( endpoint: @config.endpoint, endpoint_template: DEFAULT_ENDPOINT_TEMPLATE, universe_domain: @config.universe_domain, credentials: credentials ) end |
Instance Attribute Details
#operations_client ⇒ ::Google::Cloud::ResourceManager::V3::Projects::Rest::Operations (readonly)
Get the associated client for long-running operations.
195 196 197 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 195 def operations_client @operations_client end |
Class Method Details
.configure {|config| ... } ⇒ Client::Configuration
Configure the Projects Client class.
See Configuration for a description of the configuration fields.
61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 61 def self.configure @configure ||= begin namespace = ["Google", "Cloud", "ResourceManager", "V3"] parent_config = while namespace.any? parent_name = namespace.join "::" parent_const = const_get parent_name break parent_const.configure if parent_const.respond_to? :configure namespace.pop end default_config = Client::Configuration.new parent_config default_config.rpcs.get_project.timeout = 60.0 default_config.rpcs.get_project.retry_policy = { initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [14] } default_config.rpcs.list_projects.timeout = 60.0 default_config.rpcs.list_projects.retry_policy = { initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [14] } default_config.rpcs.search_projects.timeout = 60.0 default_config.rpcs.create_project.timeout = 60.0 default_config.rpcs.update_project.timeout = 60.0 default_config.rpcs.move_project.timeout = 60.0 default_config.rpcs.delete_project.timeout = 60.0 default_config.rpcs.undelete_project.timeout = 60.0 default_config.rpcs.get_iam_policy.timeout = 60.0 default_config.rpcs.get_iam_policy.retry_policy = { initial_delay: 0.1, max_delay: 60.0, multiplier: 1.3, retry_codes: [14] } default_config.rpcs.set_iam_policy.timeout = 60.0 default_config end yield @configure if block_given? @configure end |
Instance Method Details
#configure {|config| ... } ⇒ Client::Configuration
Configure the Projects Client instance.
The configuration is set to the derived mode, meaning that values can be changed, but structural changes (adding new fields, etc.) are not allowed. Structural changes should be made on configure.
See Configuration for a description of the configuration fields.
122 123 124 125 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 122 def configure yield @config if block_given? @config end |
#create_project(request, options = nil) ⇒ ::Gapic::Operation #create_project(project: nil) ⇒ ::Gapic::Operation
Request that a new project be created. The result is an Operation
which
can be used to track the creation process. This process usually takes a few
seconds, but can sometimes take much longer. The tracking Operation
is
automatically deleted after a few hours, so there is no need to call
DeleteOperation
.
579 580 581 582 583 584 585 586 587 588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604 605 606 607 608 609 610 611 612 613 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 579 def create_project request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::CreateProjectRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.create_project..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.create_project.timeout, metadata: , retry_policy: @config.rpcs.create_project.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.create_project request, do |result, operation| result = ::Gapic::Operation.new result, @operations_client, options: yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#delete_project(request, options = nil) ⇒ ::Gapic::Operation #delete_project(name: nil) ⇒ ::Gapic::Operation
Marks the project identified by the specified
name
(for example, projects/415104041262
) for deletion.
This method will only affect the project if it has a lifecycle state of ACTIVE.
This method changes the Project's lifecycle state from ACTIVE to DELETE_REQUESTED. The deletion starts at an unspecified time, at which point the Project is no longer accessible.
Until the deletion completes, you can check the lifecycle state checked by retrieving the project with [GetProject] [google.cloud.resourcemanager.v3.Projects.GetProject], and the project remains visible to [ListProjects] [google.cloud.resourcemanager.v3.Projects.ListProjects]. However, you cannot update the project.
After the deletion completes, the project is not retrievable by the [GetProject] [google.cloud.resourcemanager.v3.Projects.GetProject], [ListProjects] [google.cloud.resourcemanager.v3.Projects.ListProjects], and SearchProjects methods.
This method behaves idempotently, such that deleting a DELETE_REQUESTED
project will not cause an error, but also won't do anything.
The caller must have resourcemanager.projects.delete
permissions for this
project.
891 892 893 894 895 896 897 898 899 900 901 902 903 904 905 906 907 908 909 910 911 912 913 914 915 916 917 918 919 920 921 922 923 924 925 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 891 def delete_project request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::DeleteProjectRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.delete_project..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.delete_project.timeout, metadata: , retry_policy: @config.rpcs.delete_project.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.delete_project request, do |result, operation| result = ::Gapic::Operation.new result, @operations_client, options: yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#get_iam_policy(request, options = nil) ⇒ ::Google::Iam::V1::Policy #get_iam_policy(resource: nil, options: nil) ⇒ ::Google::Iam::V1::Policy
Returns the IAM access control policy for the specified project, in the
format projects/{ProjectIdOrNumber}
e.g. projects/123.
Permission is denied if the policy or the resource do not exist.
1072 1073 1074 1075 1076 1077 1078 1079 1080 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 1091 1092 1093 1094 1095 1096 1097 1098 1099 1100 1101 1102 1103 1104 1105 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 1072 def get_iam_policy request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::GetIamPolicyRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.get_iam_policy..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.get_iam_policy.timeout, metadata: , retry_policy: @config.rpcs.get_iam_policy.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.get_iam_policy request, do |result, operation| yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#get_project(request, options = nil) ⇒ ::Google::Cloud::ResourceManager::V3::Project #get_project(name: nil) ⇒ ::Google::Cloud::ResourceManager::V3::Project
Retrieves the project identified by the specified name
(for example,
projects/415104041262
).
The caller must have resourcemanager.projects.get
permission
for this project.
246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265 266 267 268 269 270 271 272 273 274 275 276 277 278 279 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 246 def get_project request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::GetProjectRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.get_project..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.get_project.timeout, metadata: , retry_policy: @config.rpcs.get_project.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.get_project request, do |result, operation| yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#list_projects(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::Project> #list_projects(parent: nil, page_token: nil, page_size: nil, show_deleted: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::Project>
Lists projects that are direct children of the specified folder or
organization resource. list()
provides a strongly consistent view of the
projects underneath the specified parent resource. list()
returns
projects sorted based upon the (ascending) lexical ordering of their
display_name
. The caller must have resourcemanager.projects.list
permission on the identified parent.
349 350 351 352 353 354 355 356 357 358 359 360 361 362 363 364 365 366 367 368 369 370 371 372 373 374 375 376 377 378 379 380 381 382 383 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 349 def list_projects request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::ListProjectsRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.list_projects..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.list_projects.timeout, metadata: , retry_policy: @config.rpcs.list_projects.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.list_projects request, do |result, operation| result = ::Gapic::Rest::PagedEnumerable.new @projects_stub, :list_projects, "projects", request, result, yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#move_project(request, options = nil) ⇒ ::Gapic::Operation #move_project(name: nil, destination_parent: nil) ⇒ ::Gapic::Operation
Move a project to another place in your resource hierarchy, under a new resource parent.
Returns an operation which can be used to track the process of the project
move workflow.
Upon success, the Operation.response
field will be populated with the
moved project.
The caller must have resourcemanager.projects.move
permission on the
project, on the project's current and proposed new parent.
If project has no current parent, or it currently does not have an
associated organization resource, you will also need the
resourcemanager.projects.setIamPolicy
permission in the project.
773 774 775 776 777 778 779 780 781 782 783 784 785 786 787 788 789 790 791 792 793 794 795 796 797 798 799 800 801 802 803 804 805 806 807 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 773 def move_project request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::MoveProjectRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.move_project..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.move_project.timeout, metadata: , retry_policy: @config.rpcs.move_project.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.move_project request, do |result, operation| result = ::Gapic::Operation.new result, @operations_client, options: yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#search_projects(request, options = nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::Project> #search_projects(query: nil, page_token: nil, page_size: nil) ⇒ ::Gapic::Rest::PagedEnumerable<::Google::Cloud::ResourceManager::V3::Project>
Search for projects that the caller has both resourcemanager.projects.get
permission on, and also satisfy the specified query.
This method returns projects in an unspecified order.
This method is eventually consistent with project mutations; this means that a newly created project may not appear in the results or recent updates to an existing project may not be reflected in the results. To retrieve the latest state of a project, use the GetProject method.
481 482 483 484 485 486 487 488 489 490 491 492 493 494 495 496 497 498 499 500 501 502 503 504 505 506 507 508 509 510 511 512 513 514 515 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 481 def search_projects request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::SearchProjectsRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.search_projects..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.search_projects.timeout, metadata: , retry_policy: @config.rpcs.search_projects.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.search_projects request, do |result, operation| result = ::Gapic::Rest::PagedEnumerable.new @projects_stub, :search_projects, "projects", request, result, yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#set_iam_policy(request, options = nil) ⇒ ::Google::Iam::V1::Policy #set_iam_policy(resource: nil, policy: nil, update_mask: nil) ⇒ ::Google::Iam::V1::Policy
Sets the IAM access control policy for the specified project, in the
format projects/{ProjectIdOrNumber}
e.g. projects/123.
CAUTION: This method will replace the existing policy, and cannot be used to append additional IAM settings.
Note: Removing service accounts from policies or changing their roles can render services completely inoperable. It is important to understand how the service account is being used before removing or updating its roles.
The following constraints apply when using setIamPolicy()
:
Project does not support
allUsers
andallAuthenticatedUsers
asmembers
in aBinding
of aPolicy
.The owner role can be granted to a
user
,serviceAccount
, or a group that is part of an organization. For example, [email protected] could be added as an owner to a project in the myownpersonaldomain.com organization, but not the examplepetstore.com organization.Service accounts can be made owners of a project directly without any restrictions. However, to be added as an owner, a user must be invited using the Cloud Platform console and must accept the invitation.
A user cannot be granted the owner role using
setIamPolicy()
. The user must be granted the owner role using the Cloud Platform Console and must explicitly accept the invitation.Invitations to grant the owner role cannot be sent using
setIamPolicy()
; they must be sent only using the Cloud Platform Console.If the project is not part of an organization, there must be at least one owner who has accepted the Terms of Service (ToS) agreement in the policy. Calling
setIamPolicy()
to remove the last ToS-accepted owner from the policy will fail. This restriction also applies to legacy projects that no longer have owners who have accepted the ToS. Edits to IAM policies will be rejected until the lack of a ToS-accepting owner is rectified. If the project is part of an organization, you can remove all owners, potentially making the organization inaccessible.
1202 1203 1204 1205 1206 1207 1208 1209 1210 1211 1212 1213 1214 1215 1216 1217 1218 1219 1220 1221 1222 1223 1224 1225 1226 1227 1228 1229 1230 1231 1232 1233 1234 1235 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 1202 def set_iam_policy request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::SetIamPolicyRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.set_iam_policy..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.set_iam_policy.timeout, metadata: , retry_policy: @config.rpcs.set_iam_policy.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.set_iam_policy request, do |result, operation| yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#test_iam_permissions(request, options = nil) ⇒ ::Google::Iam::V1::TestIamPermissionsResponse #test_iam_permissions(resource: nil, permissions: nil) ⇒ ::Google::Iam::V1::TestIamPermissionsResponse
Returns permissions that a caller has on the specified project, in the
format projects/{ProjectIdOrNumber}
e.g. projects/123..
1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 1300 1301 1302 1303 1304 1305 1306 1307 1308 1309 1310 1311 1312 1313 1314 1315 1316 1317 1318 1319 1320 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 1287 def request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Iam::V1::TestIamPermissionsRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs...to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs..timeout, metadata: , retry_policy: @config.rpcs..retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub. request, do |result, operation| yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#undelete_project(request, options = nil) ⇒ ::Gapic::Operation #undelete_project(name: nil) ⇒ ::Gapic::Operation
Restores the project identified by the specified
name
(for example, projects/415104041262
).
You can only use this method for a project that has a lifecycle state of
[DELETE_REQUESTED]
[Projects.State.DELETE_REQUESTED].
After deletion starts, the project cannot be restored.
The caller must have resourcemanager.projects.undelete
permission for
this project.
987 988 989 990 991 992 993 994 995 996 997 998 999 1000 1001 1002 1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 987 def undelete_project request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::UndeleteProjectRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.undelete_project..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.undelete_project.timeout, metadata: , retry_policy: @config.rpcs.undelete_project.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.undelete_project request, do |result, operation| result = ::Gapic::Operation.new result, @operations_client, options: yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |
#universe_domain ⇒ String
The effective universe domain
132 133 134 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 132 def universe_domain @projects_stub.universe_domain end |
#update_project(request, options = nil) ⇒ ::Gapic::Operation #update_project(project: nil, update_mask: nil) ⇒ ::Gapic::Operation
Updates the display_name
and labels of the project identified by the
specified name
(for example, projects/415104041262
). Deleting all
labels requires an update mask for labels field.
The caller must have resourcemanager.projects.update
permission for this
project.
672 673 674 675 676 677 678 679 680 681 682 683 684 685 686 687 688 689 690 691 692 693 694 695 696 697 698 699 700 701 702 703 704 705 706 |
# File 'lib/google/cloud/resource_manager/v3/projects/rest/client.rb', line 672 def update_project request, = nil raise ::ArgumentError, "request must be provided" if request.nil? request = ::Gapic::Protobuf.coerce request, to: ::Google::Cloud::ResourceManager::V3::UpdateProjectRequest # Converts hash and nil to an options object = ::Gapic::CallOptions.new(**.to_h) if .respond_to? :to_h # Customize the options with defaults = @config.rpcs.update_project..to_h # Set x-goog-api-client and x-goog-user-project headers [:"x-goog-api-client"] ||= ::Gapic::Headers.x_goog_api_client \ lib_name: @config.lib_name, lib_version: @config.lib_version, gapic_version: ::Google::Cloud::ResourceManager::V3::VERSION, transports_version_send: [:rest] [:"x-goog-user-project"] = @quota_project_id if @quota_project_id .apply_defaults timeout: @config.rpcs.update_project.timeout, metadata: , retry_policy: @config.rpcs.update_project.retry_policy .apply_defaults timeout: @config.timeout, metadata: @config., retry_policy: @config.retry_policy @projects_stub.update_project request, do |result, operation| result = ::Gapic::Operation.new result, @operations_client, options: yield result, operation if block_given? return result end rescue ::Gapic::Rest::Error => e raise ::Google::Cloud::Error.from_error(e) end |