| 
2 | 2 | 
 
  | 
3 | 3 | This module will deploy Foundational Onboarding resources in GCP for a single project, or for a GCP Organization.  | 
4 | 4 | The Foundational Onboarding module serves the following functions:  | 
 | 5 | + | 
5 | 6 | - retrieving inventory for single project, or for all projects within an Organization.  | 
6 | 7 | - running organization scraping in the case of organizational onboarding within GCP Organization.  | 
7 | 8 | 
 
  | 
8 | 9 | If instrumenting a project, the following resources will be created:  | 
 | 10 | + | 
9 | 11 | - All the necessary `Service Accounts` and `Policies` to enable the Onboarding operation at the project level  | 
10 |  | -- A `Service Account key` and added role permissions to the `Service Account`, to allow Sysdig to authenticate to GCP on your behalf to validate resources.  | 
11 |  | -- A cloud account in the Sysdig Backend, associated with the GCP project and with the required component to serve the foundational functions.  | 
 | 12 | +- A `Service Account key` and added role permissions to the `Service Account`, to allow Sysdig to authenticate to GCP on  | 
 | 13 | +  your behalf to validate resources.  | 
 | 14 | +- A cloud account in the Sysdig Backend, associated with the GCP project and with the required component to serve the  | 
 | 15 | +  foundational functions.  | 
12 | 16 | 
 
  | 
13 | 17 | If instrumenting an Organziation, the following resources will be created:  | 
 | 18 | + | 
14 | 19 | - All the necessary `Service Accounts` and `Policies` to enable the Onboarding operation at the organization level  | 
15 |  | -- A `Service Account key` and added role permissions to the `Service Account`, to allow Sysdig to authenticate to GCP on your behalf to validate resources.  | 
16 |  | -- A cloud account in the Sysdig Backend, associated with the management project and with the required component to serve the foundational functions.  | 
17 |  | -- A cloud organization in the Sysdig Backend, associated with the GCP Organization to fetch the organization structure to install Sysdig Secure for Cloud on.  | 
 | 20 | +- A `Service Account key` and added role permissions to the `Service Account`, to allow Sysdig to authenticate to GCP on  | 
 | 21 | +  your behalf to validate resources.  | 
 | 22 | +- A cloud account in the Sysdig Backend, associated with the management project and with the required component to serve  | 
 | 23 | +  the foundational functions.  | 
 | 24 | +- A cloud organization in the Sysdig Backend, associated with the GCP Organization to fetch the organization structure  | 
 | 25 | +  to install Sysdig Secure for Cloud on.  | 
18 | 26 | 
 
  | 
19 | 27 | Note:  | 
20 |  | -- The outputs from the foundational module, such as `sysdig_secure_account_id` are needed as inputs to the other features/integrations modules for subsequent modular installs.  | 
 | 28 | + | 
 | 29 | +- The outputs from the foundational module, such as `sysdig_secure_account_id` are needed as inputs to the other  | 
 | 30 | +  features/integrations modules for subsequent modular installs.  | 
21 | 31 | 
 
  | 
22 | 32 | <!-- BEGINNING OF PRE-COMMIT-TERRAFORM DOCS HOOK -->  | 
 | 33 | + | 
23 | 34 | ## Requirements  | 
24 | 35 | 
 
  | 
25 |  | -| Name | Version   |  | 
26 |  | -|------|-----------|  | 
 | 36 | +| Name                                                                      | Version   |  | 
 | 37 | +|---------------------------------------------------------------------------|-----------|  | 
27 | 38 | | <a name="requirement_terraform"></a> [terraform](#requirement\_terraform) | >= 1.0.0  |  | 
28 |  | -| <a name="requirement_google"></a> [google](#requirement\_google) | >= 4.21.0 |  | 
29 |  | -| <a name="requirement_sysdig"></a> [sysdig](#requirement\_sysdig) | >= 1.34.0 |  | 
 | 39 | +| <a name="requirement_google"></a> [google](#requirement\_google)          | >= 4.21.0 |  | 
 | 40 | +| <a name="requirement_sysdig"></a> [sysdig](#requirement\_sysdig)          | >= 1.34.0 |  | 
30 | 41 | 
 
  | 
31 | 42 | ## Providers  | 
32 | 43 | 
 
  | 
33 |  | -| Name | Version |  | 
34 |  | -|------|---------|  | 
35 |  | -| <a name="provider_google"></a> [google](#provider\_google) | 5.0.0 |  | 
36 |  | -| <a name="provider_random"></a> [random](#provider\_random) | >= 3.1 |  | 
 | 44 | +| Name                                                       | Version |  | 
 | 45 | +|------------------------------------------------------------|---------|  | 
 | 46 | +| <a name="provider_google"></a> [google](#provider\_google) | 5.0.0   |  | 
 | 47 | +| <a name="provider_random"></a> [random](#provider\_random) | >= 3.1  |  | 
37 | 48 | 
 
  | 
38 | 49 | ## Modules  | 
39 | 50 | 
 
  | 
40 | 51 | No modules.  | 
41 | 52 | 
 
  | 
42 | 53 | ## Resources  | 
43 | 54 | 
 
  | 
44 |  | -| [google_service_account.onboarding_auth](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account) | resource |  | 
45 |  | -| [google_organization.org](https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/organization) | data source |  | 
46 |  | -| [google_project.project](https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/project) | data source |  | 
 | 55 | +| [google_service_account.onboarding_auth](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account) |  | 
 | 56 | +resource |  | 
 | 57 | +| [google_organization.org](https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/organization) |  | 
 | 58 | +data source |  | 
 | 59 | +| [google_project.project](https://registry.terraform.io/providers/hashicorp/google/latest/docs/data-sources/project) |  | 
 | 60 | +data source |  | 
47 | 61 | | [random_id.suffix](https://registry.terraform.io/providers/hashicorp/random/latest/docs/resources/id) | resource |  | 
48 |  | -| [google_project_iam_member.browser](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/google_project_iam#google_project_iam_member) | resource |  | 
49 |  | -| [google_organization_iam_member.browser](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/google_organization_iam#google_organization_iam_member) | resource |  | 
50 |  | -| [google_service_account_key.onboarding_service_account_key](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account_key) | resource |  | 
51 |  | -| [sysdig_secure_cloud_auth_account.google_account](https://registry.terraform.io/providers/sysdiglabs/sysdig/latest/docs/resources/secure_cloud_auth_account) | resource |  | 
52 |  | -| [sysdig_secure_organization.google_organization](https://registry.terraform.io/providers/sysdiglabs/sysdig/latest/docs/resources/secure_organization) | resource |  | 
 | 62 | +| [google_project_iam_member.browser](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/google_project_iam#google_project_iam_member) |  | 
 | 63 | +resource |  | 
 | 64 | +| [google_organization_iam_member.browser](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/google_organization_iam#google_organization_iam_member) |  | 
 | 65 | +resource |  | 
 | 66 | +| [google_service_account_key.onboarding_service_account_key](https://registry.terraform.io/providers/hashicorp/google/latest/docs/resources/service_account_key) |  | 
 | 67 | +resource |  | 
 | 68 | +| [sysdig_secure_cloud_auth_account.google_account](https://registry.terraform.io/providers/sysdiglabs/sysdig/latest/docs/resources/secure_cloud_auth_account) |  | 
 | 69 | +resource |  | 
 | 70 | +| [sysdig_secure_organization.google_organization](https://registry.terraform.io/providers/sysdiglabs/sysdig/latest/docs/resources/secure_organization) |  | 
 | 71 | +resource |  | 
53 | 72 | 
 
  | 
54 | 73 | ## Inputs  | 
55 | 74 | 
 
  | 
56 |  | -| Name                                                                                          | Description                                                                                                                                                                             | Type          | Default | Required |  | 
57 |  | -|-----------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|---------|:--------:|  | 
58 |  | -| <a name="input_is_organizational"></a> [is\_organizational](#input\_is\_organizational)       | (Optional) Set this field to 'true' to deploy secure-for-cloud to a GCP Organization.                                                                                                   | `bool`        | `false` |    no    |  | 
59 |  | -| <a name="input_organization_domain"></a> [organization\_domain](#input\_organization\_domain) | Organization domain. e.g. sysdig.com                                                                                                                                                    | `string`      | `""`    |    no    |  | 
60 |  | -| <a name="input_project_id"></a> [project\_id](#input\_project\_id)                            | (Required) Target Project identifier provided by the customer                                                                                                                           | `string`      | n/a     |   yes    |  | 
61 |  | -| <a name="input_suffix"></a> [suffix](#input\_suffix)                                          | (Optional) Suffix to uniquely identify resources during multiple installs. If not provided, random value is autogenerated                                                               | `string`      | `null`  |    no    |  | 
62 |  | -| <a name="input_management_group_ids"></a> [suffix](#input\_management\_group\_ids)            | TO BE DEPRECATED: Please work with Sysdig to migrate to using `include_folders` instead.<br>List of management group ids w.r.t an org install. If not provided, set to empty by default | `set(string)` | `[]`    |    no    |  | 
63 |  | -| <a name="input_include_folders"></a> [suffix](#input\_include\_folders)                       | folders to include for organization in the format 'folders/{folder_id}'. i.e: folders/123456789012                                                                                      | `set(string)` | `[]`    |    no    |  | 
64 |  | -| <a name="input_exclude_folders"></a> [suffix](#input\_exclude\_folders)                       | folders to exclude for organization in the format 'folders/{folder_id}'. i.e: folders/123456789012                                                                                      | `set(string)` | `[]`    |    no    |  | 
65 |  | -| <a name="input_include_projects"></a> [suffix](#input\_include\_projects)                     | projects to include for organization. i.e: my-project-id                                                                                                                                | `set(string)` | `[]`    |    no    |  | 
66 |  | -| <a name="input_exclude_projects"></a> [suffix](#input\_exclude\_projects)                     | projects to exclude for organization. i.e: my-project-id                                                                                                                                | `set(string)` | `[]`    |    no    |  | 
67 |  | - | 
68 |  | - | 
 | 75 | +| Name                                                                                          | Description                                                                                                                                                                                                    | Type          | Default | Required |  | 
 | 76 | +|-----------------------------------------------------------------------------------------------|----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------|---------|:--------:|  | 
 | 77 | +| <a name="input_is_organizational"></a> [is\_organizational](#input\_is\_organizational)       | (Optional) Set this field to 'true' to deploy secure-for-cloud to a GCP Organization.                                                                                                                          | `bool`        | `false` |    no    |  | 
 | 78 | +| <a name="input_organization_domain"></a> [organization\_domain](#input\_organization\_domain) | Organization domain. e.g. sysdig.com                                                                                                                                                                           | `string`      | `""`    |    no    |  | 
 | 79 | +| <a name="input_project_id"></a> [project\_id](#input\_project\_id)                            | (Required) Target Project identifier provided by the customer                                                                                                                                                  | `string`      | n/a     |   yes    |  | 
 | 80 | +| <a name="input_suffix"></a> [suffix](#input\_suffix)                                          | (Optional) Suffix to uniquely identify resources during multiple installs. If not provided, random value is autogenerated                                                                                      | `string`      | `null`  |    no    |  | 
 | 81 | +| <a name="input_management_group_ids"></a> [suffix](#input\_management\_group\_ids)            | TO BE DEPRECATED on 30th November, 2025: Please work with Sysdig to migrate to using `include_folders` instead.<br>List of management group ids w.r.t an org install. If not provided, set to empty by default | `set(string)` | `[]`    |    no    |  | 
 | 82 | +| <a name="input_include_folders"></a> [suffix](#input\_include\_folders)                       | folders to include for organization in the format 'folders/{folder_id}'. i.e: folders/123456789012                                                                                                             | `set(string)` | `[]`    |    no    |  | 
 | 83 | +| <a name="input_exclude_folders"></a> [suffix](#input\_exclude\_folders)                       | folders to exclude for organization in the format 'folders/{folder_id}'. i.e: folders/123456789012                                                                                                             | `set(string)` | `[]`    |    no    |  | 
 | 84 | +| <a name="input_include_projects"></a> [suffix](#input\_include\_projects)                     | projects to include for organization. i.e: my-project-id                                                                                                                                                       | `set(string)` | `[]`    |    no    |  | 
 | 85 | +| <a name="input_exclude_projects"></a> [suffix](#input\_exclude\_projects)                     | projects to exclude for organization. i.e: my-project-id                                                                                                                                                       | `set(string)` | `[]`    |    no    |  | 
69 | 86 | 
 
  | 
70 | 87 | ## Outputs  | 
71 | 88 | 
 
  | 
 | 
0 commit comments