Class: Google::Apis::CloudresourcemanagerV1::CloudResourceManagerService
- Inherits:
-
Google::Apis::Core::BaseService
- Object
- Google::Apis::Core::BaseService
- Google::Apis::CloudresourcemanagerV1::CloudResourceManagerService
- Defined in:
- generated/google/apis/cloudresourcemanager_v1/service.rb
Overview
Google Cloud Resource Manager API
The Google Cloud Resource Manager API provides methods for creating, reading, and updating project metadata.
Instance Attribute Summary collapse
-
#key ⇒ String
API key.
-
#quota_user ⇒ String
Available to use for quota purposes for server-side applications.
Attributes inherited from Google::Apis::Core::BaseService
#authorization, #base_path, #batch_path, #client, #client_options, #request_options, #root_url, #upload_path
Instance Method Summary collapse
-
#create_project(project_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Operation
Request that a new Project be created.
-
#delete_project(project_id, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Empty
Marks the Project identified by the specified
project_id
(for example,my- project-123
) for deletion. -
#get_operation(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Operation
Gets the latest state of a long-running operation.
-
#get_organization(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Organization
Fetches an Organization resource identified by the specified resource name.
-
#get_organization_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Gets the access control policy for an Organization resource.
-
#get_project(project_id, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Project
Retrieves the Project identified by the specified
project_id
(for example,my-project-123
). -
#get_project_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Returns the IAM access control policy for the specified Project.
-
#initialize ⇒ CloudResourceManagerService
constructor
A new instance of CloudResourceManagerService.
-
#list_projects(page_token: nil, page_size: nil, filter: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::ListProjectsResponse
Lists Projects that are visible to the user and satisfy the specified filter.
-
#search_organizations(search_organizations_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse
Searches Organization resources that are visible to the user and satisfy the specified filter.
-
#set_organization_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Sets the access control policy on an Organization resource.
-
#set_project_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Sets the IAM access control policy for the specified Project.
-
#test_organization_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse
Returns permissions that a caller has on the specified Organization.
-
#test_project_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse
Returns permissions that a caller has on the specified Project.
-
#undelete_project(project_id, undelete_project_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Empty
Restores the Project identified by the specified
project_id
(for example,my-project-123
). -
#update_project(project_id, project_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Project
Updates the attributes of the Project identified by the specified
project_id
(for example,my-project-123
).
Methods inherited from Google::Apis::Core::BaseService
#batch, #batch_upload, #fetch_all, #http
Constructor Details
#initialize ⇒ CloudResourceManagerService
Returns a new instance of CloudResourceManagerService.
46 47 48 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 46 def initialize super('https://cloudresourcemanager.googleapis.com/', '') end |
Instance Attribute Details
#key ⇒ String
Returns API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.
39 40 41 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 39 def key @key end |
#quota_user ⇒ String
Returns Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.
44 45 46 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 44 def quota_user @quota_user end |
Instance Method Details
#create_project(project_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Operation
Request that a new Project be created. The result is an Operation which can be used to track the creation process. It is automatically deleted after a few hours, so there is no need to call DeleteOperation. Our SLO permits Project creation to take up to 30 seconds at the 90th percentile. As of 2016-08-29, we are observing 6 seconds 50th percentile latency. 95th percentile latency is around 11 seconds. We recommend polling at the 5th second with an exponential backoff.
359 360 361 362 363 364 365 366 367 368 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 359 def create_project(project_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/projects', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::Project::Representation command.request_object = project_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Operation::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Operation command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#delete_project(project_id, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Empty
Marks the Project identified by the specified project_id
(for example, my-
project-123
) for deletion. This method will only affect the Project if the
following criteria are met: + The Project does not have a billing account
associated with it. + The Project 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, and the Project
remains visible to ListProjects. However, you cannot update the project. After
the deletion completes, the Project is not retrievable by the GetProject and
ListProjects methods. The caller must have modify permissions for this Project.
435 436 437 438 439 440 441 442 443 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 435 def delete_project(project_id, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:delete, 'v1/projects/{projectId}', ) command.response_representation = Google::Apis::CloudresourcemanagerV1::Empty::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Empty command.params['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_operation(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Operation
Gets the latest state of a long-running operation. Clients can use this method to poll the operation result at intervals as recommended by the API service.
71 72 73 74 75 76 77 78 79 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 71 def get_operation(name, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+name}', ) command.response_representation = Google::Apis::CloudresourcemanagerV1::Operation::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Operation command.params['name'] = name unless name.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_organization(name, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Organization
Fetches an Organization resource identified by the specified resource name.
133 134 135 136 137 138 139 140 141 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 133 def get_organization(name, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/{+name}', ) command.response_representation = Google::Apis::CloudresourcemanagerV1::Organization::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Organization command.params['name'] = name unless name.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_organization_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Gets the access control policy for an Organization resource. May be empty if
no such policy or resource exists. The resource
field should be the
organization's resource name, e.g. "organizations/123".
205 206 207 208 209 210 211 212 213 214 215 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 205 def get_organization_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+resource}:getIamPolicy', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::GetIamPolicyRequest::Representation command.request_object = get_iam_policy_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Policy::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Policy command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_project(project_id, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Project
Retrieves the Project identified by the specified project_id
(for example,
my-project-123
). The caller must have read permissions for this Project.
275 276 277 278 279 280 281 282 283 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 275 def get_project(project_id, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/projects/{projectId}', ) command.response_representation = Google::Apis::CloudresourcemanagerV1::Project::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Project command.params['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#get_project_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Returns the IAM access control policy for the specified Project. Permission is denied if the policy or the resource does not exist.
505 506 507 508 509 510 511 512 513 514 515 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 505 def get_project_iam_policy(resource, get_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/projects/{resource}:getIamPolicy', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::GetIamPolicyRequest::Representation command.request_object = get_iam_policy_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Policy::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Policy command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#list_projects(page_token: nil, page_size: nil, filter: nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::ListProjectsResponse
Lists Projects that are visible to the user and satisfy the specified filter. This method returns Projects in an unspecified order. New Projects do not necessarily appear at the end of the list.
322 323 324 325 326 327 328 329 330 331 332 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 322 def list_projects(page_token: nil, page_size: nil, filter: nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:get, 'v1/projects', ) command.response_representation = Google::Apis::CloudresourcemanagerV1::ListProjectsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::ListProjectsResponse command.query['pageToken'] = page_token unless page_token.nil? command.query['pageSize'] = page_size unless page_size.nil? command.query['filter'] = filter unless filter.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#search_organizations(search_organizations_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse
Searches Organization resources that are visible to the user and satisfy the specified filter. This method returns Organizations in an unspecified order. New Organizations do not necessarily appear at the end of the results.
102 103 104 105 106 107 108 109 110 111 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 102 def search_organizations(search_organizations_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/organizations:search', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::SearchOrganizationsRequest::Representation command.request_object = search_organizations_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::SearchOrganizationsResponse command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#set_organization_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Sets the access control policy on an Organization resource. Replaces any
existing policy. The resource
field should be the organization's resource
name, e.g. "organizations/123".
168 169 170 171 172 173 174 175 176 177 178 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 168 def set_organization_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+resource}:setIamPolicy', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::SetIamPolicyRequest::Representation command.request_object = set_iam_policy_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Policy::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Policy command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#set_project_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Policy
Sets the IAM access control policy for the specified Project. Replaces any
existing policy. The following constraints apply when using setIamPolicy()
: +
Project does not support allUsers
and allAuthenticatedUsers
as members
in a Binding
of a Policy
. + The owner role can be granted only to user
and serviceAccount
. + 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 via 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. + Membership changes that leave the project without any owners that
have accepted the Terms of Service (ToS) will be rejected. + There must be at
least one owner who has accepted the Terms of Service (ToS) agreement in the
policy. Calling setIamPolicy()
to 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. + Calling this
method requires enabling the App Engine Admin API. 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.
561 562 563 564 565 566 567 568 569 570 571 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 561 def set_project_iam_policy(resource, set_iam_policy_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/projects/{resource}:setIamPolicy', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::SetIamPolicyRequest::Representation command.request_object = set_iam_policy_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Policy::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Policy command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#test_organization_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse
Returns permissions that a caller has on the specified Organization. The
resource
field should be the organization's resource name, e.g. "
organizations/123".
242 243 244 245 246 247 248 249 250 251 252 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 242 def (resource, = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/{+resource}:testIamPermissions', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsRequest::Representation command.request_object = command.response_representation = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#test_project_iam_permissions(resource, test_iam_permissions_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse
Returns permissions that a caller has on the specified Project.
596 597 598 599 600 601 602 603 604 605 606 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 596 def (resource, = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/projects/{resource}:testIamPermissions', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsRequest::Representation command.request_object = command.response_representation = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::TestIamPermissionsResponse command.params['resource'] = resource unless resource.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#undelete_project(project_id, undelete_project_request_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Empty
Restores the Project identified by the specified project_id
(for example,
my-project-123
). You can only use this method for a Project that has a
lifecycle state of DELETE_REQUESTED. After deletion starts, the Project cannot
be restored. The caller must have modify permissions for this Project.
469 470 471 472 473 474 475 476 477 478 479 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 469 def undelete_project(project_id, undelete_project_request_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:post, 'v1/projects/{projectId}:undelete', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::UndeleteProjectRequest::Representation command.request_object = undelete_project_request_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Empty::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Empty command.params['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |
#update_project(project_id, project_object = nil, fields: nil, quota_user: nil, options: nil) {|result, err| ... } ⇒ Google::Apis::CloudresourcemanagerV1::Project
Updates the attributes of the Project identified by the specified project_id
(for example, my-project-123
). The caller must have modify permissions for
this Project.
393 394 395 396 397 398 399 400 401 402 403 |
# File 'generated/google/apis/cloudresourcemanager_v1/service.rb', line 393 def update_project(project_id, project_object = nil, fields: nil, quota_user: nil, options: nil, &block) command = make_simple_command(:put, 'v1/projects/{projectId}', ) command.request_representation = Google::Apis::CloudresourcemanagerV1::Project::Representation command.request_object = project_object command.response_representation = Google::Apis::CloudresourcemanagerV1::Project::Representation command.response_class = Google::Apis::CloudresourcemanagerV1::Project command.params['projectId'] = project_id unless project_id.nil? command.query['fields'] = fields unless fields.nil? command.query['quotaUser'] = quota_user unless quota_user.nil? execute_or_queue_command(command, &block) end |