diff --git a/Makefile b/Makefile index a9d53314..15bc35a2 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -# Copyright 2019 Google LLC +# Copyright 2023 Google LLC # # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. diff --git a/README.md b/README.md index c06c2932..553a86fd 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,9 @@ This is a collection of submodules that make it easier to non-destructively mana * [Audit Config](modules/audit_config) * [BigQuery IAM](modules/bigquery_datasets_iam) * [Billing Accounts IAM](modules/billing_accounts_iam) +* [Cloud Run Service IAM](modules/cloud_run_services_iam) * [Custom Role IAM](modules/custom_role_iam) +* [DNS Zone IAM](modules/dns_zones_iam) * [Folders IAM](modules/folders_iam) * [KMS Crypto Keys IAM](modules/kms_crypto_keys_iam) * [KMS_Key Rings IAM](modules/kms_key_rings_iam) @@ -13,10 +15,10 @@ This is a collection of submodules that make it easier to non-destructively mana * [Projects IAM](modules/projects_iam) * [Pubsub Subscriptions IAM](modules/pubsub_subscriptions_iam) * [Pubsub Topics IAM](modules/pubsub_topics_iam) +* [Secret Manager IAM](modules/secret_manager_iam) * [Service Accounts IAM](modules/service_accounts_iam) * [Storage Buckets IAM](modules/storage_buckets_iam) * [Subnets IAM](modules/subnets_iam) -* [Secret Manager IAM](modules/secret_manager_iam) ## Compatibility This module is meant for use with Terraform 0.13+ and tested using Terraform 1.0+. If you find incompatibilities using Terraform >=0.13, please open an issue. @@ -40,7 +42,7 @@ Full examples are in the [examples](./examples/) folder, but basic usage is as f ```hcl module "projects_iam_bindings" { source = "terraform-google-modules/iam/google//modules/projects_iam" - version = "~> 7.5" + version = "~> 8.0" projects = ["project-123456", "project-9876543"] @@ -67,7 +69,7 @@ The module also offers an **authoritative** mode which will remove all roles not ```hcl module "storage_buckets_iam_bindings" { source = "terraform-google-modules/iam/google//modules/storage_buckets_iam" - version = "~> 6.4" + version = "~> 8.0" storage_buckets = ["my-storage-bucket"] @@ -124,6 +126,7 @@ You can choose the following resource types to apply the IAM bindings: - Kms Key Rings (`kms_key_rings` variable) - Kms Crypto Keys (`kms_crypto_keys` variable) - Secret Manager Secrets (`secrets` variable) +- DNS Zones (`managed_zones` variable) Set the specified variable on the module call to choose the resources to affect. Remember to set the `mode` [variable](#additive-and-authoritative-modes) and give enough [permissions](#permissions) to manage the selected resource as well. Note that the `bindings` variable accepts an empty map `{}` passed in as an argument in the case that resources don't have IAM bindings to apply. @@ -186,6 +189,9 @@ In order to execute a submodule you must have a Service Account with an appropri - Secret Manager: - Secret Manager Admin: Full access to administer Secret Manager. - Custom: Add secretmanager.secrets.getIamPolicy and secretmanager.secrets.setIamPolicy permissions. +- DNS Zone: + - DNS Administrator : Full access to administer DNS Zone. + - Custom: Add dns.managedZones.setIamPolicy, dns.managedZones.list and dns.managedZones.getIamPolicy permissions. ## Install diff --git a/examples/dns_zone/README.md b/examples/dns_zone/README.md new file mode 100644 index 00000000..fe765884 --- /dev/null +++ b/examples/dns_zone/README.md @@ -0,0 +1,19 @@ +# DNS ZOne Example + +This example illustrates how to use the `bigquery_datasets_iam` submodule + + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| group\_email | Email for group to receive roles (ex. group@example.com) | `string` | n/a | yes | +| project\_id | Project ID to create BigQuery resources in | `string` | n/a | yes | +| sa\_email | Email for Service Account to receive roles (Ex. default-sa@example-project-id.iam.gserviceaccount.com) | `string` | n/a | yes | +| user\_email | Email for group to receive roles (Ex. user@example.com) | `string` | n/a | yes | + +## Outputs + +No output. + + diff --git a/examples/dns_zone/main.tf b/examples/dns_zone/main.tf new file mode 100644 index 00000000..0c22f0e0 --- /dev/null +++ b/examples/dns_zone/main.tf @@ -0,0 +1,50 @@ +/** + * Copyright 2021 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/********************************************* + Module dns_zone_iam_binding calling + *********************************************/ +module "dns_zones_iam_binding" { + source = "../../modules/dns_zones_iam/" + project = var.project_id + managed_zones = [ + google_dns_managed_zone.dns_zone_one.name, + ] + mode = "authoritative" + + bindings = { + "roles/viewer" = [ + "serviceAccount:${var.sa_email}", + "group:${var.group_email}", + "user:${var.user_email}", + ] + "roles/dns.reader" = [ + "serviceAccount:${var.sa_email}", + "group:${var.group_email}", + "user:${var.user_email}", + ] + } +} + +resource "google_dns_managed_zone" "dns_zone_one" { + project = var.project_id + name = "test-iam-dns-${random_id.test.hex}-one" + dns_name = "example-${random_id.test.hex}.com." +} + +resource "random_id" "test" { + byte_length = 4 +} diff --git a/examples/dns_zone/variables.tf b/examples/dns_zone/variables.tf new file mode 100644 index 00000000..958ce877 --- /dev/null +++ b/examples/dns_zone/variables.tf @@ -0,0 +1,38 @@ +/** + * Copyright 2019 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +variable "group_email" { + type = string + description = "Email for group to receive roles (ex. group@example.com)" +} + +variable "sa_email" { + type = string + description = "Email for Service Account to receive roles (Ex. default-sa@example-project-id.iam.gserviceaccount.com)" +} + +variable "user_email" { + type = string + description = "Email for group to receive roles (Ex. user@example.com)" +} + +/****************************************** + bigquery_dataset_iam_binding variables + *****************************************/ +variable "project_id" { + type = string + description = "Project ID to create BigQuery resources in" +} diff --git a/examples/dns_zone/versions.tf b/examples/dns_zone/versions.tf new file mode 100644 index 00000000..31d0a1bf --- /dev/null +++ b/examples/dns_zone/versions.tf @@ -0,0 +1,29 @@ +/** + * Copyright 2021 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +terraform { + required_version = ">= 0.13" + required_providers { + google = { + source = "hashicorp/google" + version = "~> 4.0" + } + google-beta = { + source = "hashicorp/google-beta" + version = "~> 4.0" + } + } +} diff --git a/metadata.yaml b/metadata.yaml index 731b3243..a3bb2f95 100644 --- a/metadata.yaml +++ b/metadata.yaml @@ -152,3 +152,4 @@ spec: - iap.googleapis.com - secretmanager.googleapis.com - bigquery.googleapis.com + - dns.googleapis.com diff --git a/modules/artifact_registry_iam/main.tf b/modules/artifact_registry_iam/main.tf index b5030622..789d3c6a 100644 --- a/modules/artifact_registry_iam/main.tf +++ b/modules/artifact_registry_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/artifact_registry_iam/outputs.tf b/modules/artifact_registry_iam/outputs.tf index 8da49063..b74c913f 100644 --- a/modules/artifact_registry_iam/outputs.tf +++ b/modules/artifact_registry_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/artifact_registry_iam/variables.tf b/modules/artifact_registry_iam/variables.tf index 507c00a2..deab1468 100644 --- a/modules/artifact_registry_iam/variables.tf +++ b/modules/artifact_registry_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/artifact_registry_iam/versions.tf b/modules/artifact_registry_iam/versions.tf index 6fad5878..2f203eef 100644 --- a/modules/artifact_registry_iam/versions.tf +++ b/modules/artifact_registry_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/audit_config/main.tf b/modules/audit_config/main.tf index 4f712376..9760b593 100644 --- a/modules/audit_config/main.tf +++ b/modules/audit_config/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/audit_config/outputs.tf b/modules/audit_config/outputs.tf index e59d4c71..e6c046d0 100644 --- a/modules/audit_config/outputs.tf +++ b/modules/audit_config/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/audit_config/variables.tf b/modules/audit_config/variables.tf index 701ed495..1466352c 100644 --- a/modules/audit_config/variables.tf +++ b/modules/audit_config/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/audit_config/versions.tf b/modules/audit_config/versions.tf index 2171c449..48306503 100644 --- a/modules/audit_config/versions.tf +++ b/modules/audit_config/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/bigquery_datasets_iam/main.tf b/modules/bigquery_datasets_iam/main.tf index 64674050..46954ad8 100644 --- a/modules/bigquery_datasets_iam/main.tf +++ b/modules/bigquery_datasets_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/bigquery_datasets_iam/outputs.tf b/modules/bigquery_datasets_iam/outputs.tf index b3b96f2a..b6945646 100644 --- a/modules/bigquery_datasets_iam/outputs.tf +++ b/modules/bigquery_datasets_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/bigquery_datasets_iam/variables.tf b/modules/bigquery_datasets_iam/variables.tf index 9de7821a..2c896e9e 100644 --- a/modules/bigquery_datasets_iam/variables.tf +++ b/modules/bigquery_datasets_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/bigquery_datasets_iam/versions.tf b/modules/bigquery_datasets_iam/versions.tf index 4cbb2b5f..018a5bb2 100644 --- a/modules/bigquery_datasets_iam/versions.tf +++ b/modules/bigquery_datasets_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/billing_accounts_iam/main.tf b/modules/billing_accounts_iam/main.tf index ea8796f7..cf306356 100644 --- a/modules/billing_accounts_iam/main.tf +++ b/modules/billing_accounts_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/billing_accounts_iam/outputs.tf b/modules/billing_accounts_iam/outputs.tf index cd8e5a42..d5caed03 100644 --- a/modules/billing_accounts_iam/outputs.tf +++ b/modules/billing_accounts_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/billing_accounts_iam/variables.tf b/modules/billing_accounts_iam/variables.tf index 377df426..1aba49bc 100644 --- a/modules/billing_accounts_iam/variables.tf +++ b/modules/billing_accounts_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "billing_account_ids" { description = "Billing Accounts IDs list to add the IAM policies/bindings" default = [] diff --git a/modules/billing_accounts_iam/versions.tf b/modules/billing_accounts_iam/versions.tf index beb57712..9286c520 100644 --- a/modules/billing_accounts_iam/versions.tf +++ b/modules/billing_accounts_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/cloud_run_services_iam/main.tf b/modules/cloud_run_services_iam/main.tf index eec85593..ed6d6b17 100644 --- a/modules/cloud_run_services_iam/main.tf +++ b/modules/cloud_run_services_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/cloud_run_services_iam/outputs.tf b/modules/cloud_run_services_iam/outputs.tf index 0e1917d0..c12add81 100644 --- a/modules/cloud_run_services_iam/outputs.tf +++ b/modules/cloud_run_services_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/cloud_run_services_iam/variables.tf b/modules/cloud_run_services_iam/variables.tf index d15bf353..75506ccb 100644 --- a/modules/cloud_run_services_iam/variables.tf +++ b/modules/cloud_run_services_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/custom_role_iam/main.tf b/modules/custom_role_iam/main.tf index 6a757715..364e1231 100644 --- a/modules/custom_role_iam/main.tf +++ b/modules/custom_role_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2020 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/custom_role_iam/outputs.tf b/modules/custom_role_iam/outputs.tf index f96fffea..3981181d 100644 --- a/modules/custom_role_iam/outputs.tf +++ b/modules/custom_role_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/custom_role_iam/variables.tf b/modules/custom_role_iam/variables.tf index e57cf8ad..1881730d 100644 --- a/modules/custom_role_iam/variables.tf +++ b/modules/custom_role_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/custom_role_iam/versions.tf b/modules/custom_role_iam/versions.tf index e2ff6eeb..2b15e854 100644 --- a/modules/custom_role_iam/versions.tf +++ b/modules/custom_role_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/dns_zones_iam/README.md b/modules/dns_zones_iam/README.md new file mode 100644 index 00000000..2f85b07e --- /dev/null +++ b/modules/dns_zones_iam/README.md @@ -0,0 +1,48 @@ +# Module DNS Zone IAM + +This submodule is used to assign roles on DNS zones. + +## Example Usage +``` +module "dns_zones_iam_binding" { + source = "../../modules/dns_zones_iam/" + project = var.project_id + managed_zones = [ + google_dns_managed_zone.dns_zone_one.name, + ] + mode = "authoritative" + + bindings = { + "roles/viewer" = [ + "serviceAccount:${var.sa_email}", + "group:${var.group_email}", + "user:${var.user_email}", + ] + "roles/dns.reader" = [ + "serviceAccount:${var.sa_email}", + "group:${var.group_email}", + "user:${var.user_email}", + ] + } +} +``` + + +## Inputs + +| Name | Description | Type | Default | Required | +|------|-------------|------|---------|:--------:| +| bindings | Map of role (key) and list of members (value) to add the IAM policies/bindings | `map(any)` | n/a | yes | +| managed\_zones | List of managed zone to add the IAM policies/bindings | `list(string)` | n/a | yes | +| mode | Mode for adding the IAM policies/bindings, additive and authoritative | `string` | `"additive"` | no | +| project | Project to add the IAM policies/bindings | `string` | n/a | yes | + +## Outputs + +| Name | Description | +|------|-------------| +| managed\_zones | DNS Managed Zones which received for bindings. | +| members | Members which were bound to the bigquery datasets. | +| roles | Roles which were assigned to members. | + + diff --git a/modules/dns_zones_iam/main.tf b/modules/dns_zones_iam/main.tf new file mode 100644 index 00000000..310cab96 --- /dev/null +++ b/modules/dns_zones_iam/main.tf @@ -0,0 +1,47 @@ +/** + * Copyright 2023 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +/****************************************** + Run helper module to get generic calculated data + *****************************************/ +module "helper" { + source = "../helper" + bindings = var.bindings + mode = var.mode + entities = var.managed_zones +} + +/****************************************** + DNS Zone IAM binding authoritative + *****************************************/ +resource "google_dns_managed_zone_iam_binding" "dns_zone_iam_authoritative" { + for_each = module.helper.set_authoritative + project = var.project + managed_zone = module.helper.bindings_authoritative[each.key].name + role = module.helper.bindings_authoritative[each.key].role + members = module.helper.bindings_authoritative[each.key].members +} + +/****************************************** + DNS Zone Topic IAM binding additive + *****************************************/ +resource "google_dns_managed_zone_iam_member" "dns_zone_iam_additive" { + for_each = module.helper.set_additive + project = var.project + managed_zone = module.helper.bindings_additive[each.key].name + role = module.helper.bindings_additive[each.key].role + member = module.helper.bindings_additive[each.key].member +} diff --git a/modules/dns_zones_iam/metadata.yaml b/modules/dns_zones_iam/metadata.yaml new file mode 100644 index 00000000..fb566fb4 --- /dev/null +++ b/modules/dns_zones_iam/metadata.yaml @@ -0,0 +1,142 @@ +# Copyright 2023 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +apiVersion: blueprints.cloud.google.com/v1alpha1 +kind: BlueprintMetadata +metadata: + name: terraform-google-iam + annotations: + config.kubernetes.io/local-config: "true" +spec: + title: Module bigquery_datasets IAM + source: + repo: https://github.com/terraform-google-modules/terraform-google-iam.git + sourceType: git + version: 7.4.1 + actuationTool: + type: Terraform + version: '>= 0.13' + examples: + - name: bigquery_dataset + location: examples/bigquery_dataset + - name: billing_account + location: examples/billing_account + - name: custom_role_org + location: examples/custom_role_org + - name: custom_role_project + location: examples/custom_role_project + - name: folder + location: examples/folder + - name: kms_crypto_key + location: examples/kms_crypto_key + - name: kms_key_ring + location: examples/kms_key_ring + - name: member_iam + location: examples/member_iam + - name: organization + location: examples/organization + - name: project + location: examples/project + - name: project_conditions + location: examples/project_conditions + - name: pubsub_subscription + location: examples/pubsub_subscription + - name: pubsub_topic + location: examples/pubsub_topic + - name: secret_manager + location: examples/secret_manager + - name: service_account + location: examples/service_account + - name: stackdriver_agent_roles + location: examples/stackdriver_agent_roles + - name: storage_bucket + location: examples/storage_bucket + - name: subnet + location: examples/subnet + variables: + - name: bigquery_datasets + description: BigQuery dataset IDs list to add the IAM policies/bindings + type: list(string) + required: true + - name: bindings + description: Map of role (key) and list of members (value) to add the IAM policies/bindings + type: map(any) + required: true + - name: mode + description: Mode for adding the IAM policies/bindings, additive and authoritative + type: string + default: additive + required: false + - name: project + description: Project to add the IAM policies/bindings + type: string + required: true + outputs: + - name: bigquery_datasets + description: Bigquery dataset IDs which received for bindings. + - name: members + description: Members which were bound to the bigquery datasets. + - name: roles + description: Roles which were assigned to members. + roles: + - level: Project + roles: + - roles/resourcemanager.projectCreator + - roles/resourcemanager.folderAdmin + - roles/resourcemanager.folderIamAdmin + - roles/owner + - roles/billing.projectManager + - roles/composer.worker + - level: Project + roles: + - roles/billing.user + - level: Project + roles: + - roles/billing.admin + - level: Project + roles: + - roles/iam.organizationRoleAdmin + - roles/orgpolicy.policyAdmin + - roles/resourcemanager.organizationAdmin + - level: Project + roles: + - roles/owner + - roles/resourcemanager.projectIamAdmin + - roles/iam.serviceAccountAdmin + - roles/compute.admin + - roles/compute.networkAdmin + - roles/compute.storageAdmin + - roles/pubsub.admin + - roles/cloudkms.admin + - roles/storage.admin + - roles/composer.worker + - roles/secretmanager.admin + services: + - admin.googleapis.com + - appengine.googleapis.com + - cloudbilling.googleapis.com + - cloudresourcemanager.googleapis.com + - compute.googleapis.com + - iam.googleapis.com + - iamcredentials.googleapis.com + - oslogin.googleapis.com + - serviceusage.googleapis.com + - cloudkms.googleapis.com + - pubsub.googleapis.com + - storage-api.googleapis.com + - servicenetworking.googleapis.com + - storage-component.googleapis.com + - iap.googleapis.com + - secretmanager.googleapis.com + - bigquery.googleapis.com diff --git a/modules/dns_zones_iam/outputs.tf b/modules/dns_zones_iam/outputs.tf new file mode 100644 index 00000000..70bb85cf --- /dev/null +++ b/modules/dns_zones_iam/outputs.tf @@ -0,0 +1,31 @@ +/** + * Copyright 2023 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +output "managed_zones" { + value = distinct(module.helper.bindings_by_member[*].name) + description = "DNS Managed Zones which received for bindings." + depends_on = [google_dns_managed_zone_iam_binding.dns_zone_iam_authoritative, google_dns_managed_zone_iam_member.dns_zone_iam_additive, ] +} + +output "roles" { + value = distinct(module.helper.bindings_by_member[*].role) + description = "Roles which were assigned to members." +} + +output "members" { + value = distinct(module.helper.bindings_by_member[*].member) + description = "Members which were bound to the bigquery datasets." +} diff --git a/modules/dns_zones_iam/variables.tf b/modules/dns_zones_iam/variables.tf new file mode 100644 index 00000000..7d18c9f6 --- /dev/null +++ b/modules/dns_zones_iam/variables.tf @@ -0,0 +1,36 @@ +/** + * Copyright 2023 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +variable "project" { + description = "Project to add the IAM policies/bindings" + type = string +} + +variable "managed_zones" { + description = "List of managed zone to add the IAM policies/bindings" + type = list(string) +} + +variable "mode" { + description = "Mode for adding the IAM policies/bindings, additive and authoritative" + type = string + default = "additive" +} + +variable "bindings" { + description = "Map of role (key) and list of members (value) to add the IAM policies/bindings" + type = map(any) +} diff --git a/modules/dns_zones_iam/versions.tf b/modules/dns_zones_iam/versions.tf new file mode 100644 index 00000000..8328c453 --- /dev/null +++ b/modules/dns_zones_iam/versions.tf @@ -0,0 +1,31 @@ +/** + * Copyright 2023 Google LLC + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +terraform { + required_version = ">= 0.13" + required_providers { + + google = { + source = "hashicorp/google" + version = ">= 4.48, < 5.0" + } + } + + provider_meta "google" { + module_name = "blueprints/terraform/terraform-google-iam:dns_zone_iam/v7.5.0" + } + +} diff --git a/modules/folders_iam/main.tf b/modules/folders_iam/main.tf index 36b64aa8..c8e3013b 100644 --- a/modules/folders_iam/main.tf +++ b/modules/folders_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/folders_iam/outputs.tf b/modules/folders_iam/outputs.tf index aaa80129..f1880b81 100644 --- a/modules/folders_iam/outputs.tf +++ b/modules/folders_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/folders_iam/variables.tf b/modules/folders_iam/variables.tf index 0b4a0a4e..e9afecc8 100644 --- a/modules/folders_iam/variables.tf +++ b/modules/folders_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "folders" { description = "Folders list to add the IAM policies/bindings" default = [] diff --git a/modules/folders_iam/versions.tf b/modules/folders_iam/versions.tf index 4e598873..79f347ea 100644 --- a/modules/folders_iam/versions.tf +++ b/modules/folders_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/helper/main.tf b/modules/helper/main.tf index 0044c244..376c8bcb 100644 --- a/modules/helper/main.tf +++ b/modules/helper/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/helper/outputs.tf b/modules/helper/outputs.tf index 6925d13a..96ad7728 100644 --- a/modules/helper/outputs.tf +++ b/modules/helper/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/helper/variables.tf b/modules/helper/variables.tf index 2c0185af..94abbece 100644 --- a/modules/helper/variables.tf +++ b/modules/helper/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/helper/versions.tf b/modules/helper/versions.tf index c001c4e3..7db1e49b 100644 --- a/modules/helper/versions.tf +++ b/modules/helper/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/kms_crypto_keys_iam/main.tf b/modules/kms_crypto_keys_iam/main.tf index ccea6244..40539352 100644 --- a/modules/kms_crypto_keys_iam/main.tf +++ b/modules/kms_crypto_keys_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/kms_crypto_keys_iam/outputs.tf b/modules/kms_crypto_keys_iam/outputs.tf index 9358ac3d..90db98d3 100644 --- a/modules/kms_crypto_keys_iam/outputs.tf +++ b/modules/kms_crypto_keys_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/kms_crypto_keys_iam/variables.tf b/modules/kms_crypto_keys_iam/variables.tf index 14d76065..49c635a8 100644 --- a/modules/kms_crypto_keys_iam/variables.tf +++ b/modules/kms_crypto_keys_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "kms_crypto_keys" { description = "KMS crypto keys list to add the IAM policies/bindings" default = [] diff --git a/modules/kms_crypto_keys_iam/versions.tf b/modules/kms_crypto_keys_iam/versions.tf index b035ca0a..e9cb6944 100644 --- a/modules/kms_crypto_keys_iam/versions.tf +++ b/modules/kms_crypto_keys_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/kms_key_rings_iam/main.tf b/modules/kms_key_rings_iam/main.tf index 2d4a92b5..9ff2ef6a 100644 --- a/modules/kms_key_rings_iam/main.tf +++ b/modules/kms_key_rings_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/kms_key_rings_iam/outputs.tf b/modules/kms_key_rings_iam/outputs.tf index 643e1510..5c471b36 100644 --- a/modules/kms_key_rings_iam/outputs.tf +++ b/modules/kms_key_rings_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/kms_key_rings_iam/variables.tf b/modules/kms_key_rings_iam/variables.tf index 512644f0..18fb2acf 100644 --- a/modules/kms_key_rings_iam/variables.tf +++ b/modules/kms_key_rings_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "kms_key_rings" { description = "KMS Key Rings list to add the IAM policies/bindings" default = [] diff --git a/modules/kms_key_rings_iam/versions.tf b/modules/kms_key_rings_iam/versions.tf index 2604f962..445fd8d5 100644 --- a/modules/kms_key_rings_iam/versions.tf +++ b/modules/kms_key_rings_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/member_iam/main.tf b/modules/member_iam/main.tf index ce5e4586..b99b2ed3 100644 --- a/modules/member_iam/main.tf +++ b/modules/member_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/member_iam/outputs.tf b/modules/member_iam/outputs.tf index 7840f357..4ba56ae6 100644 --- a/modules/member_iam/outputs.tf +++ b/modules/member_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/member_iam/variables.tf b/modules/member_iam/variables.tf index 31d73a0d..8f096240 100644 --- a/modules/member_iam/variables.tf +++ b/modules/member_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/member_iam/versions.tf b/modules/member_iam/versions.tf index bdfe7ae2..b9aa2f4c 100644 --- a/modules/member_iam/versions.tf +++ b/modules/member_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/organizations_iam/main.tf b/modules/organizations_iam/main.tf index 70d7c52c..5d212a86 100644 --- a/modules/organizations_iam/main.tf +++ b/modules/organizations_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/organizations_iam/outputs.tf b/modules/organizations_iam/outputs.tf index 93a7f0fc..f23b4561 100644 --- a/modules/organizations_iam/outputs.tf +++ b/modules/organizations_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/organizations_iam/variables.tf b/modules/organizations_iam/variables.tf index f64e24bd..448ef0b5 100644 --- a/modules/organizations_iam/variables.tf +++ b/modules/organizations_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "organizations" { description = "Organizations list to add the IAM policies/bindings" default = [] diff --git a/modules/organizations_iam/versions.tf b/modules/organizations_iam/versions.tf index e577dca5..af6c370e 100644 --- a/modules/organizations_iam/versions.tf +++ b/modules/organizations_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/projects_iam/main.tf b/modules/projects_iam/main.tf index d5b8c2e8..9c3e128e 100644 --- a/modules/projects_iam/main.tf +++ b/modules/projects_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/projects_iam/outputs.tf b/modules/projects_iam/outputs.tf index f669ce78..e555caef 100644 --- a/modules/projects_iam/outputs.tf +++ b/modules/projects_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/projects_iam/variables.tf b/modules/projects_iam/variables.tf index daf5b0b0..1095062a 100644 --- a/modules/projects_iam/variables.tf +++ b/modules/projects_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/projects_iam/versions.tf b/modules/projects_iam/versions.tf index a2d63192..e6f962fd 100644 --- a/modules/projects_iam/versions.tf +++ b/modules/projects_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_subscriptions_iam/main.tf b/modules/pubsub_subscriptions_iam/main.tf index 57a4639e..d122e5d6 100644 --- a/modules/pubsub_subscriptions_iam/main.tf +++ b/modules/pubsub_subscriptions_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_subscriptions_iam/outputs.tf b/modules/pubsub_subscriptions_iam/outputs.tf index 8a37af12..41b07cb4 100644 --- a/modules/pubsub_subscriptions_iam/outputs.tf +++ b/modules/pubsub_subscriptions_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_subscriptions_iam/variables.tf b/modules/pubsub_subscriptions_iam/variables.tf index 8eedec6f..a215784c 100644 --- a/modules/pubsub_subscriptions_iam/variables.tf +++ b/modules/pubsub_subscriptions_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_subscriptions_iam/versions.tf b/modules/pubsub_subscriptions_iam/versions.tf index 73bb9ca9..a65d0594 100644 --- a/modules/pubsub_subscriptions_iam/versions.tf +++ b/modules/pubsub_subscriptions_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_topics_iam/main.tf b/modules/pubsub_topics_iam/main.tf index 20efa389..1c0e1a89 100644 --- a/modules/pubsub_topics_iam/main.tf +++ b/modules/pubsub_topics_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_topics_iam/outputs.tf b/modules/pubsub_topics_iam/outputs.tf index d83cb83f..4db7d666 100644 --- a/modules/pubsub_topics_iam/outputs.tf +++ b/modules/pubsub_topics_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_topics_iam/variables.tf b/modules/pubsub_topics_iam/variables.tf index 03aa51b4..da724273 100644 --- a/modules/pubsub_topics_iam/variables.tf +++ b/modules/pubsub_topics_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/pubsub_topics_iam/versions.tf b/modules/pubsub_topics_iam/versions.tf index 06adbfd0..ec6e04da 100644 --- a/modules/pubsub_topics_iam/versions.tf +++ b/modules/pubsub_topics_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/secret_manager_iam/main.tf b/modules/secret_manager_iam/main.tf index f82147b6..aaf4b790 100644 --- a/modules/secret_manager_iam/main.tf +++ b/modules/secret_manager_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/secret_manager_iam/outputs.tf b/modules/secret_manager_iam/outputs.tf index 20846d48..a0a54093 100644 --- a/modules/secret_manager_iam/outputs.tf +++ b/modules/secret_manager_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/secret_manager_iam/variables.tf b/modules/secret_manager_iam/variables.tf index c94a1ae3..47af185e 100644 --- a/modules/secret_manager_iam/variables.tf +++ b/modules/secret_manager_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/secret_manager_iam/versions.tf b/modules/secret_manager_iam/versions.tf index 3d6ea4bc..5908d7a5 100644 --- a/modules/secret_manager_iam/versions.tf +++ b/modules/secret_manager_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/service_accounts_iam/main.tf b/modules/service_accounts_iam/main.tf index e87d19fe..cdc298e0 100644 --- a/modules/service_accounts_iam/main.tf +++ b/modules/service_accounts_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/service_accounts_iam/outputs.tf b/modules/service_accounts_iam/outputs.tf index d218221b..ebba98dd 100644 --- a/modules/service_accounts_iam/outputs.tf +++ b/modules/service_accounts_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/service_accounts_iam/variables.tf b/modules/service_accounts_iam/variables.tf index d04e8552..b9192a6d 100644 --- a/modules/service_accounts_iam/variables.tf +++ b/modules/service_accounts_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/service_accounts_iam/versions.tf b/modules/service_accounts_iam/versions.tf index 68821b9c..b5f63c70 100644 --- a/modules/service_accounts_iam/versions.tf +++ b/modules/service_accounts_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/storage_buckets_iam/main.tf b/modules/storage_buckets_iam/main.tf index 57c4fa34..7e526f77 100644 --- a/modules/storage_buckets_iam/main.tf +++ b/modules/storage_buckets_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/storage_buckets_iam/outputs.tf b/modules/storage_buckets_iam/outputs.tf index ad2b2e2b..120629d7 100644 --- a/modules/storage_buckets_iam/outputs.tf +++ b/modules/storage_buckets_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/storage_buckets_iam/variables.tf b/modules/storage_buckets_iam/variables.tf index 9b28403c..7d6d841a 100644 --- a/modules/storage_buckets_iam/variables.tf +++ b/modules/storage_buckets_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "storage_buckets" { description = "Storage Buckets list to add the IAM policies/bindings" default = [] diff --git a/modules/storage_buckets_iam/versions.tf b/modules/storage_buckets_iam/versions.tf index e3573731..316599ea 100644 --- a/modules/storage_buckets_iam/versions.tf +++ b/modules/storage_buckets_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/subnets_iam/main.tf b/modules/subnets_iam/main.tf index 4ca4b81e..aff2e4f2 100644 --- a/modules/subnets_iam/main.tf +++ b/modules/subnets_iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/subnets_iam/outputs.tf b/modules/subnets_iam/outputs.tf index 33cb1ee9..d5ed92b3 100644 --- a/modules/subnets_iam/outputs.tf +++ b/modules/subnets_iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/subnets_iam/variables.tf b/modules/subnets_iam/variables.tf index 1b5cba67..a515715b 100644 --- a/modules/subnets_iam/variables.tf +++ b/modules/subnets_iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/modules/subnets_iam/versions.tf b/modules/subnets_iam/versions.tf index 322afbb7..9185b697 100644 --- a/modules/subnets_iam/versions.tf +++ b/modules/subnets_iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/additive/main.tf b/test/fixtures/additive/main.tf index 624f55e1..f609d159 100644 --- a/test/fixtures/additive/main.tf +++ b/test/fixtures/additive/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/additive/outputs.tf b/test/fixtures/additive/outputs.tf index 8eb2aed7..a676e93d 100644 --- a/test/fixtures/additive/outputs.tf +++ b/test/fixtures/additive/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/additive/variables.tf b/test/fixtures/additive/variables.tf index 2ccfcf20..615269b7 100644 --- a/test/fixtures/additive/variables.tf +++ b/test/fixtures/additive/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/additive/versions.tf b/test/fixtures/additive/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/additive/versions.tf +++ b/test/fixtures/additive/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/authoritative/main.tf b/test/fixtures/authoritative/main.tf index c78dd01e..c23b80b1 100644 --- a/test/fixtures/authoritative/main.tf +++ b/test/fixtures/authoritative/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/authoritative/outputs.tf b/test/fixtures/authoritative/outputs.tf index 7f96e34f..988866dd 100644 --- a/test/fixtures/authoritative/outputs.tf +++ b/test/fixtures/authoritative/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/authoritative/variables.tf b/test/fixtures/authoritative/variables.tf index 2ccfcf20..615269b7 100644 --- a/test/fixtures/authoritative/variables.tf +++ b/test/fixtures/authoritative/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/authoritative/versions.tf b/test/fixtures/authoritative/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/authoritative/versions.tf +++ b/test/fixtures/authoritative/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/billing-iam/main.tf b/test/fixtures/billing-iam/main.tf index 501835d8..2dc49576 100644 --- a/test/fixtures/billing-iam/main.tf +++ b/test/fixtures/billing-iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/billing-iam/outputs.tf b/test/fixtures/billing-iam/outputs.tf index e5195a31..93cc817b 100644 --- a/test/fixtures/billing-iam/outputs.tf +++ b/test/fixtures/billing-iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/billing-iam/variables.tf b/test/fixtures/billing-iam/variables.tf index 7bc1ccf7..e45fe870 100644 --- a/test/fixtures/billing-iam/variables.tf +++ b/test/fixtures/billing-iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/billing-iam/versions.tf b/test/fixtures/billing-iam/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/billing-iam/versions.tf +++ b/test/fixtures/billing-iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/custom-role/main.tf b/test/fixtures/custom-role/main.tf index 3619adc8..2ea0ef90 100644 --- a/test/fixtures/custom-role/main.tf +++ b/test/fixtures/custom-role/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/custom-role/outputs.tf b/test/fixtures/custom-role/outputs.tf index 82f63564..8e116101 100644 --- a/test/fixtures/custom-role/outputs.tf +++ b/test/fixtures/custom-role/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/custom-role/variables.tf b/test/fixtures/custom-role/variables.tf index 54f62e97..2bfa9f33 100644 --- a/test/fixtures/custom-role/variables.tf +++ b/test/fixtures/custom-role/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/custom-role/versions.tf b/test/fixtures/custom-role/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/custom-role/versions.tf +++ b/test/fixtures/custom-role/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/helper/base/main.tf b/test/fixtures/helper/base/main.tf index 554d2194..2297faa0 100644 --- a/test/fixtures/helper/base/main.tf +++ b/test/fixtures/helper/base/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -140,3 +140,13 @@ resource "google_bigquery_dataset" "dataset" { project = var.base_project_id dataset_id = replace("${local.prefix}_ds_${count.index}-${random_id.test[count.index].hex}", "-", "_") } + +# DNS Zone + +resource "google_dns_managed_zone" "test" { + count = local.n + + project = var.base_project_id + name = "${local.prefix}-dns-${count.index}-${random_id.test[count.index].hex}" + dns_name = "example-${random_id.test[count.index].hex}.com." +} diff --git a/test/fixtures/helper/base/outputs.tf b/test/fixtures/helper/base/outputs.tf index 263210a8..531db835 100644 --- a/test/fixtures/helper/base/outputs.tf +++ b/test/fixtures/helper/base/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -81,3 +81,8 @@ output "datasets" { value = google_bigquery_dataset.dataset.*.dataset_id description = "bigquery datasets created for bindings." } + +output "dns_zone" { + value = google_dns_managed_zone.test.*.name + description = "DNS Zones created for bindings." +} diff --git a/test/fixtures/helper/base/variables.tf b/test/fixtures/helper/base/variables.tf index cc0dcb4e..815280f7 100644 --- a/test/fixtures/helper/base/variables.tf +++ b/test/fixtures/helper/base/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/helper/base/versions.tf b/test/fixtures/helper/base/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/helper/base/versions.tf +++ b/test/fixtures/helper/base/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/helper/iam.tf b/test/fixtures/helper/iam.tf index 69232409..cca233f9 100644 --- a/test/fixtures/helper/iam.tf +++ b/test/fixtures/helper/iam.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -122,3 +122,11 @@ module "iam_binding_secret_manager" { project = var.project_id bindings = local.basic_bindings } + +module "iam_binding_dns_zone" { + source = "../../../modules/dns_zones_iam" + mode = var.mode + managed_zones = module.base.dns_zone + project = var.project_id + bindings = local.basic_bindings +} diff --git a/test/fixtures/helper/main.tf b/test/fixtures/helper/main.tf index fe9c137e..09c0c17c 100644 --- a/test/fixtures/helper/main.tf +++ b/test/fixtures/helper/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/helper/outputs.tf b/test/fixtures/helper/outputs.tf index 2284379e..55de94dc 100644 --- a/test/fixtures/helper/outputs.tf +++ b/test/fixtures/helper/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/helper/variables.tf b/test/fixtures/helper/variables.tf index 6e603071..1bc6f092 100644 --- a/test/fixtures/helper/variables.tf +++ b/test/fixtures/helper/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/helper/versions.tf b/test/fixtures/helper/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/helper/versions.tf +++ b/test/fixtures/helper/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/member-iam/main.tf b/test/fixtures/member-iam/main.tf index 41fc7f44..118db658 100644 --- a/test/fixtures/member-iam/main.tf +++ b/test/fixtures/member-iam/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/member-iam/outputs.tf b/test/fixtures/member-iam/outputs.tf index 1fe8440f..d3efcaa4 100644 --- a/test/fixtures/member-iam/outputs.tf +++ b/test/fixtures/member-iam/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/member-iam/variables.tf b/test/fixtures/member-iam/variables.tf index cfe11290..aa8f2299 100644 --- a/test/fixtures/member-iam/variables.tf +++ b/test/fixtures/member-iam/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/member-iam/versions.tf b/test/fixtures/member-iam/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/member-iam/versions.tf +++ b/test/fixtures/member-iam/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/main.tf b/test/fixtures/static-and-dynamic/main.tf index 15bb8d8c..dcf27da1 100644 --- a/test/fixtures/static-and-dynamic/main.tf +++ b/test/fixtures/static-and-dynamic/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/outputs.tf b/test/fixtures/static-and-dynamic/outputs.tf index 68fb08f8..3c2b988c 100644 --- a/test/fixtures/static-and-dynamic/outputs.tf +++ b/test/fixtures/static-and-dynamic/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/static_projects/main.tf b/test/fixtures/static-and-dynamic/static_projects/main.tf index 54802795..216c2193 100644 --- a/test/fixtures/static-and-dynamic/static_projects/main.tf +++ b/test/fixtures/static-and-dynamic/static_projects/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/static_projects/outputs.tf b/test/fixtures/static-and-dynamic/static_projects/outputs.tf index bc35088c..66b7a5de 100644 --- a/test/fixtures/static-and-dynamic/static_projects/outputs.tf +++ b/test/fixtures/static-and-dynamic/static_projects/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/static_projects/variables.tf b/test/fixtures/static-and-dynamic/static_projects/variables.tf index 4c48e564..6eadd8c0 100644 --- a/test/fixtures/static-and-dynamic/static_projects/variables.tf +++ b/test/fixtures/static-and-dynamic/static_projects/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/static_projects/versions.tf b/test/fixtures/static-and-dynamic/static_projects/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/static-and-dynamic/static_projects/versions.tf +++ b/test/fixtures/static-and-dynamic/static_projects/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/variables.tf b/test/fixtures/static-and-dynamic/variables.tf index a10d4d58..5d14023b 100644 --- a/test/fixtures/static-and-dynamic/variables.tf +++ b/test/fixtures/static-and-dynamic/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/fixtures/static-and-dynamic/versions.tf b/test/fixtures/static-and-dynamic/versions.tf index 31d0a1bf..ed477932 100644 --- a/test/fixtures/static-and-dynamic/versions.tf +++ b/test/fixtures/static-and-dynamic/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/setup/iam.tf b/test/setup/iam.tf index 4d110639..4f0869bb 100644 --- a/test/setup/iam.tf +++ b/test/setup/iam.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -33,6 +33,7 @@ locals { "roles/storage.admin", "roles/composer.worker", "roles/secretmanager.admin", + "roles/dns.admin", ] int_required_folder_roles = [ diff --git a/test/setup/main.tf b/test/setup/main.tf index cde97453..5382d5de 100644 --- a/test/setup/main.tf +++ b/test/setup/main.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -54,6 +54,7 @@ module "iam-project" { "iap.googleapis.com", "secretmanager.googleapis.com", "bigquery.googleapis.com", + "dns.googleapis.com", ] } diff --git a/test/setup/outputs.tf b/test/setup/outputs.tf index 7b738174..e89325a4 100644 --- a/test/setup/outputs.tf +++ b/test/setup/outputs.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. diff --git a/test/setup/variables.tf b/test/setup/variables.tf index f06665a4..09b2483c 100644 --- a/test/setup/variables.tf +++ b/test/setup/variables.tf @@ -1,5 +1,5 @@ /** - * Copyright 2019 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -13,6 +13,7 @@ * See the License for the specific language governing permissions and * limitations under the License. */ + variable "org_id" { description = "The numeric organization id" } diff --git a/test/setup/versions.tf b/test/setup/versions.tf index 01dcf17b..d707a6e8 100644 --- a/test/setup/versions.tf +++ b/test/setup/versions.tf @@ -1,5 +1,5 @@ /** - * Copyright 2021 Google LLC + * Copyright 2023 Google LLC * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License.