templates/terraform/google_bigquery_dataset.tf.jinja2 (46 lines of code) (raw):

/** * Copyright 2022 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. */ resource "google_bigquery_dataset" "{{ dataset_id }}" { dataset_id = "{{ dataset_id }}" project = var.project_id {% if friendly_name -%} friendly_name = "{{ friendly_name }}" {% endif -%} {% if description -%} description = {{ description|tojson }} {% endif -%} {% if location -%} location = "{{ location }}" {% endif -%} } {% if iam_policies and iam_policies["bigquery_datasets"] and (dataset_id in iam_policies["bigquery_datasets"]) -%} data "google_iam_policy" "bq_ds__{{ dataset_id }}" { dynamic "binding" { for_each = var.iam_policies["bigquery_datasets"]["{{ dataset_id }}"] content { role = binding.value["role"] members = binding.value["members"] } } } resource "google_bigquery_dataset_iam_policy" "{{ dataset_id }}" { dataset_id = google_bigquery_dataset.{{ dataset_id }}.dataset_id policy_data = data.google_iam_policy.bq_ds__{{ dataset_id }}.policy_data } {% endif -%} output "bigquery_dataset-{{ dataset_id }}-dataset_id" { value = google_bigquery_dataset.{{ dataset_id }}.dataset_id }