Method: Gcloud::ResourceManager::Manager#create_project

Defined in:
lib/gcloud/resource_manager/manager.rb

#create_project(project_id, name: nil, labels: nil) ⇒ Gcloud::ResourceManager::Project

Creates a project resource.

Initially, the project resource is owned by its creator exclusively. The creator can later grant permission to others to read or update the project.

Several APIs are activated automatically for the project, including Google Cloud Storage.

Examples:

require "gcloud"

gcloud = Gcloud.new
resource_manager = gcloud.resource_manager
project = resource_manager.create_project "tokyo-rain-123"

A project can also be created with a ‘name` and `labels`:

require "gcloud"

gcloud = Gcloud.new
resource_manager = gcloud.resource_manager
project = resource_manager.create_project "tokyo-rain-123",
                                          name: "Todos Development",
                                          labels: {env: :development}

Parameters:

  • project_id (String)

    The unique, user-assigned ID of the project. It must be 6 to 30 lowercase letters, digits, or hyphens. It must start with a letter. Trailing hyphens are prohibited.

  • name (String) (defaults to: nil)

    The user-assigned name of the project. This field is optional and can remain unset.

    Allowed characters are: lowercase and uppercase letters, numbers, hyphen, single-quote, double-quote, space, and exclamation point.

  • labels (Hash) (defaults to: nil)

    The labels associated with this project.

    Label keys must be between 1 and 63 characters long and must conform to the following regular expression: [a-z]([-a-z0-9]*[a-z0-9])?.

    Label values must be between 0 and 63 characters long and must conform to the regular expression ([a-z]([-a-z0-9]*[a-z0-9])?)?.

    No more than 256 labels can be associated with a given resource.

Returns:



190
191
192
193
# File 'lib/gcloud/resource_manager/manager.rb', line 190

def create_project project_id, name: nil, labels: nil
  gapi = service.create_project project_id, name, labels
  Project.from_gapi gapi, service
end