github.com/pbthorste/terraform@v0.8.6-0.20170127005045-deb56bd93da2/website/source/docs/providers/google/r/google_project.html.markdown (about)

     1  ---
     2  layout: "google"
     3  page_title: "Google: google_project"
     4  sidebar_current: "docs-google-project"
     5  description: |-
     6   Allows management of a Google Cloud Platform project. 
     7  ---
     8  
     9  # google\_project
    10  
    11  Allows creation and management of a Google Cloud Platform project and its
    12  associated enabled services/APIs.
    13  
    14  Projects created with this resource must be associated with an Organization.
    15  See the [Organization documentation](https://cloud.google.com/resource-manager/docs/quickstart) for more details.
    16  
    17  The service account used to run Terraform when creating a `google_project`
    18  resource must have `roles/resourcemanager.projectCreator`. See the
    19  [Access Control for Organizations Using IAM](https://cloud.google.com/resource-manager/docs/access-control-org)
    20  doc for more information.
    21  
    22  ## Example Usage
    23  
    24  ```js
    25  resource "google_project" "my_project" {
    26      project_id = "your-project-id"
    27      org_id = "1234567"
    28      services = ["compute_component", "storage-component-json.googleapis.com", "iam.googleapis.com"]
    29  }
    30  ```
    31  
    32  ## Argument Reference
    33  
    34  The following arguments are supported:
    35  
    36  * `project_id` - (Optional) The project ID.
    37      Changing this forces a new project to be created. If this attribute is not
    38      set, `id` must be set. As `id` is deprecated, consider this attribute
    39      required. If you are using `project_id` and creating a new project, the
    40      `org_id` and `name` attributes are also required.
    41  
    42  * `id` - (Deprecated) The project ID.
    43      This attribute has unexpected behaviour and probably does not work
    44      as users would expect; it has been deprecated, and will be removed in future
    45      versions of Terraform. The `project_id` attribute should be used instead. See
    46      [below](#id-field) for more information about its behaviour.
    47  
    48  * `project_id` - (Required) The project ID.
    49      Changing this forces a new project to be created.
    50  
    51  * `org_id` - (Optional) The numeric ID of the organization this project belongs to.
    52      This is required if you are creating a new project.
    53      Changing this forces a new project to be created.
    54  
    55  * `name` - (Optional) The display name of the project.
    56      This is required if you are creating a new project.
    57  
    58  * `services` - (Optional) The services/APIs that are enabled for this project.
    59      For a list of available services, run `gcloud beta service-management list`
    60  
    61  * `skip_delete` - (Optional) If true, the Terraform resource can be deleted
    62      without deleting the Project via the Google API.
    63  
    64  * `policy_data` - (Deprecated) The IAM policy associated with the project.
    65      This argument is no longer supported, and will be removed in a future version
    66      of Terraform. It should be replaced with a `google_project_iam_policy` resource.
    67  
    68  ## Attributes Reference
    69  
    70  In addition to the arguments listed above, the following computed attributes are
    71  exported:
    72  
    73  * `number` - The numeric identifier of the project.
    74  * `policy_etag` - (Deprecated) The etag of the project's IAM policy, used to
    75      determine if the IAM policy has changed. Please use `google_project_iam_policy`'s
    76      `etag` property instead; future versions of Terraform will remove the `policy_etag`
    77      attribute
    78  
    79  ## ID Field
    80  
    81  In previous versions of Terraform, `google_project` resources used an `id` field in
    82  config files to specify the project ID. Unfortunately, due to limitations in Terraform,
    83  this field always looked empty to Terraform. Terraform fell back on using the project
    84  the Google Cloud provider is configured with. If you're using the `id` field in your
    85  configurations, know that it is being ignored, and its value will always be seen as the
    86  ID of the project being used to authenticate Terraform's requests. You should move to the
    87  `project_id` field as soon as possible.