Data Engineering Zoomcamp 2024

Homework 1: Pre-Requisites (Docker, Terraform, SQL) Statistics

Distribution of scores and reported study time for this homework.

Submissions

1198

Median total score

7

Average total score

7

Score distribution

All values are points.

Questions score

Min
-
Median
7.0
Max
7
Q1
6.0
Avg
6.4
Q3
7.0

Learning in public score

Min
-
Median
0.0
Max
7
Q1
0.0
Avg
0.3
Q3
0.0

Total score

Min
-
Median
7.0
Max
15
Q1
6.0
Avg
6.8
Q3
7.0

Time distribution

All values are hours reported by students.

Lectures

Min
0.0
Median
7.0
Max
100.0
Q1
4.0
Avg
10.1
Q3
12.0

Homework

Min
0.0
Median
3.0
Max
120.0
Q1
2.0
Avg
5.1
Q3
5.0

Question breakdown

Correctness and answer distribution per question.

1. Docker tags

1173 / 1198 correct (97.9%)

1 --delete 7 (0.6%)
2 --rc 8 (0.7%)
3 --rmc 7 (0.6%)
4 --rm 1176 (98.2%)

2. Docker run: version of wheel

1139 / 1198 correct (95.1%)

1 0.42.0 1142 (95.3%)
2 1.0.0 10 (0.8%)
3 23.0.1 35 (2.9%)
4 58.1.0 7 (0.6%)

3. Count records

1009 / 1198 correct (84.2%)

1 15767 145 (12.1%)
2 15612 1012 (84.5%)
3 15859 22 (1.8%)
4 89009 9 (0.8%)

4. Largest trip for each day

1103 / 1198 correct (92.1%)

1 2019-09-18 18 (1.5%)
2 2019-09-16 30 (2.5%)
3 2019-09-26 1106 (92.3%)
4 2019-09-21 31 (2.6%)

5. Three biggest pickups

1061 / 1198 correct (88.6%)

1 "Brooklyn" "Manhattan" "Queens" 1064 (88.8%)
2 "Bronx" "Brooklyn" "Manhattan" 53 (4.4%)
3 "Bronx" "Manhattan" "Queens" 46 (3.8%)
4 "Brooklyn" "Queens" "Staten Island" 15 (1.3%)

6. Largest tip

1036 / 1198 correct (86.5%)

1 Central Park 37 (3.1%)
2 Jamaica 18 (1.5%)
3 JFK Airport 1038 (86.6%)
4 Long Island City/Queens Plaza 84 (7.0%)

7. Terraform

1195 / 1198 correct (99.7%)

Answer Count
Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 18
Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 6
- 6
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "trips_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "australia-southeast1" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-365521" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + name = "de-zoomcamp-365521-data-lake" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-zoomcamp-365521-data-lake] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/de-zoomcamp-365521/datasets/trips_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 4
N/A 3
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.week_1_hw_dataset will be created + resource "google_bigquery_dataset" "week_1_hw_dataset" { + creation_time = (known after apply) + dataset_id = "week_1_hw_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "hardy-portal-411910" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.week-1-hw-bucket will be created + resource "google_storage_bucket" "week-1-hw-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "week-1-hw-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.week_1_hw_dataset: Creating... google_storage_bucket.week-1-hw-bucket: Creating... google_storage_bucket.week-1-hw-bucket: Creation complete after 2s [id=week-1-hw-bucket] google_bigquery_dataset.week_1_hw_dataset: Creation complete after 2s [id=projects/hardy-portal-411910/datasets/week_1_hw_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 3
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.trip_data_dataset will be created + resource "google_bigquery_dataset" "trip_data_dataset" { + creation_time = (known after apply) + dataset_id = "trips_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-davidrd123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.trip_data_bucket will be created + resource "google_storage_bucket" "trip_data_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "nyctaxi-zoomcamp-davidrd123" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 3
terraform apply 3
. 3
google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 11s [id=My Bucket #1] google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 7s [id=My Project #1:Taxi Dataset #1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 3
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset_demo will be created + resource "google_bigquery_dataset" "dataset_demo" { + creation_time = (known after apply) + dataset_id = "dataset_demo" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411721" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-411721-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset_demo: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.dataset_demo: Creation complete after 1s [id=projects/terraform-demo-411721/datasets/dataset_demo] google_storage_bucket.demo_bucket: Creation complete after 1s [id=terraform-demo-411721-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 2
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "<The Dataset Name You Want to Use>" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "<Your Project ID>" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "<Your Unique Bucket Name>" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 2
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: create Terraform will perform the following actions: google_bigquery_dataset.demo_dataset will be created resource "google_bigquery_dataset" "demo_dataset" { creation_time = (known after apply) dataset_id = "demo_datasetes" default_collation = (known after apply) delete_contents_on_destroy = false effective_labels = (known after apply) etag = (known after apply) id = (known after apply) is_case_insensitive = (known after apply) last_modified_time = (known after apply) location = "EU" max_time_travel_hours = (known after apply) project = "terraform-demo-412612" self_link = (known after apply) storage_billing_model = (known after apply) terraform_labels = (known after apply) } google_storage_bucket.demo-bucket will be created resource "google_storage_bucket" "demo-bucket" { effective_labels = (known after apply) force_destroy = true id = (known after apply) location = "EU" name = "terraform-demo-412612-terra-bucket" project = (known after apply) public_access_prevention = (known after apply) rpo = (known after apply) self_link = (known after apply) storage_class = "STANDARD" terraform_labels = (known after apply) uniform_bucket_level_access = (known after apply) url = (known after apply) lifecycle_rule { action { type = "AbortIncompleteMultipartUpload" } condition { age = 1 matches_prefix = [] matches_storage_class = [] matches_suffix = [] with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-XXXXXX-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/terraform-demo-XXXXXX/datasets/demo_datasetes] 2
NA 2
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 3s [id=projects/sinuous-env-412614/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=sinuous-env-412614-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 2
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "perfect-science-412620" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.this-is-a-demo-bucket will be created + resource "google_storage_bucket" "this-is-a-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "perfect-science-412620-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 2
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "balmy-chain-412110" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc_data_lake_ny-rides-andre" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/balmy-chain-412110/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_ny-rides-andre] 2
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "black-nucleus-412511" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "black-nucleus-412511-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/black-nucleus-412511/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=black-nucleus-412511-terra-bucket] 2
aws_s3_bucket.test_bucket: Creating... snowflake_database.create_db: Creating... snowflake_warehouse.warehouse: Creating... snowflake_database.create_db: Creation complete after 0s [id=HOMEWORK] snowflake_warehouse.warehouse: Creation complete after 1s [id=HOMEWORK] aws_s3_bucket.test_bucket: Creation complete after 1s [id=740868949166-test-bucket] 1
$ ./terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "terra_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-01152024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-01152024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/dtc-de-course-01152024/datasets/terra_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-01152024-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US-EAST1" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412003" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-EAST1" + name = "terraform-demo-412003-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 0s [id=terraform-demo-412003-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/terraform-demo-412003/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "iron-cycle-412122" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "iron-cycle-412122-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/iron-cycle-412122/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=iron-cycle-412122-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/terraform-de-411309/datasets/ny_taxi_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=terraform-de-411309-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" ä + creation_time = (known after apply) + dataset_id = "demo_dataset_ibrahim_dezc24" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "tokyo-comfort-411321" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) å # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" ä + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-ibrahim_dezc24" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule ä + action ä + type = "AbortIncompleteMultipartUpload" å + condition ä + age = 1 + matches_prefix = ÄÅ + matches_storage_class = ÄÅ + matches_suffix = ÄÅ + with_state = (known after apply) å å å Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s Äid=projects/tokyo-comfort-411321/datasets/demo_dataset_ibrahim_dezc24Å google_storage_bucket.demo-bucket: Creation complete after 1s Äid=terraform-demo-terra-bucket-ibrahim_dezc24Å 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-taxi-412414" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "unique-name-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-taxi-412414/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=unique-name-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "affable-elf-412323" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "affable-elf-412323-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/affable-elf-412323/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=affable-elf-412323-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset_homework will be created + resource "google_bigquery_dataset" "demo_dataset_homework" { + creation_time = (known after apply) + dataset_id = "demo_dataset_homework" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "crypto-iris-412017" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-homework-bucket will be created + resource "google_storage_bucket" "demo-homework-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "crypto-iris-412017-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
# aws_s3_bucket.terraform-ken-bucket will be created + resource "aws_s3_bucket" "terraform-ken-bucket" { + acceleration_status = (known after apply) + acl = (known after apply) + arn = (known after apply) + bucket = "terraform-ken-bucket" + bucket_domain_name = (known after apply) + bucket_prefix = (known after apply) + bucket_regional_domain_name = (known after apply) + force_destroy = false + hosted_zone_id = (known after apply) + id = (known after apply) + object_lock_enabled = (known after apply) + policy = (known after apply) + region = (known after apply) + request_payer = (known after apply) + tags_all = (known after apply) + website_domain = (known after apply) + website_endpoint = (known after apply) } Plan: 1 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_s3_bucket.ter-form-k-bucket: Destroying... [id=ter-form-k-bucket] aws_s3_bucket.terraform-ken-bucket: Creating... aws_s3_bucket.terraform-ken-bucket: Still creating... [10s elapsed] aws_s3_bucket.terraform-ken-bucket: Creation complete after 15s [id=terraform-ken-bucket] 1
Duhok 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_baker_zoomcamp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "spring-line-411501" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-baker-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.my_bigquery_dataset will be created + resource "google_bigquery_dataset" "my_bigquery_dataset" { + creation_time = (known after apply) + dataset_id = "my_bigquery_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411401" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform-demo-terra-bucket will be created + resource "google_storage_bucket" "terraform-demo-terra-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-411401-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.my_bigquery_dataset: Creating... google_storage_bucket.terraform-demo-terra-bucket: Creating... google_storage_bucket.terraform-demo-terra-bucket: Creation complete after 3s [id=dtc-de-course-411401-terra-bucket] google_bigquery_dataset.my_bigquery_dataset: Creation complete after 6s [id=projects/dtc-de-course-411401/datasets/my_bigquery_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.auto-expire: Creating... google_storage_bucket.auto-expire: Creation complete after 1s [id=storage_411719] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/named-perigee-411719/datasets/data_411719] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412517" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-de-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412517/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-de-zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
data.aws_availability_zones.available: Reading... data.aws_availability_zones.available: Read complete after 2s [id=us-east-1] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_default_security_group.redshift_security_group will be created + resource "aws_default_security_group" "redshift_security_group" { + arn = (known after apply) + description = (known after apply) + egress = (known after apply) + id = (known after apply) + ingress = [ + { + cidr_blocks = [ + "0.0.0.0/0", ] + description = "Redshift Port" + from_port = 5439 + ipv6_cidr_blocks = [] + prefix_list_ids = [] + protocol = "tcp" + security_groups = [] + self = false + to_port = 5439 }, ] + name = (known after apply) + name_prefix = (known after apply) + owner_id = (known after apply) + revoke_rules_on_delete = false + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-security-group" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-security-group" } + vpc_id = (known after apply) } # aws_iam_role.redshift-role will be created + resource "aws_iam_role" "redshift-role" { + arn = (known after apply) + assume_role_policy = jsonencode( { + Statement = [ + { + Action = "sts:AssumeRole" + Effect = "Allow" + Principal = { + Service = "redshift.amazonaws.com" } + Sid = "" }, ] + Version = "2012-10-17" } ) + create_date = (known after apply) + force_detach_policies = false + id = (known after apply) + managed_policy_arns = (known after apply) + max_session_duration = 3600 + name = "de-project-dev-redshift-role" + name_prefix = (known after apply) + path = "/" + role_last_used = (known after apply) + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-role" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-role" } + unique_id = (known after apply) } # aws_iam_role_policy.redshift-s3-full-access-policy will be created + resource "aws_iam_role_policy" "redshift-s3-full-access-policy" { + id = (known after apply) + name = "de-project-dev-redshift-role-s3-policy" + policy = jsonencode( { + Statement = [ + { + Action = "s3:*" + Effect = "Allow" + Resource = "*" }, ] + Version = "2012-10-17" } ) + role = (known after apply) } # aws_internet_gateway.redshift-igw will be created + resource "aws_internet_gateway" "redshift-igw" { + arn = (known after apply) + id = (known after apply) + owner_id = (known after apply) + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-igw" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-igw" } + vpc_id = (known after apply) } # aws_redshift_cluster.redshift-cluster will be created + resource "aws_redshift_cluster" "redshift-cluster" { + allow_version_upgrade = true + apply_immediately = false + aqua_configuration_status = (known after apply) + arn = (known after apply) + automated_snapshot_retention_period = 1 + availability_zone = (known after apply) + cluster_identifier = "de-project-cluster" + cluster_nodes = (known after apply) + cluster_parameter_group_name = (known after apply) + cluster_public_key = (known after apply) + cluster_revision_number = (known after apply) + cluster_security_groups = (known after apply) + cluster_subnet_group_name = (known after apply) + cluster_type = "multi-node" + cluster_version = "1.0" + database_name = "de_project_db" + default_iam_role_arn = (known after apply) + dns_name = (known after apply) + encrypted = false + endpoint = (known after apply) + enhanced_vpc_routing = (known after apply) + iam_roles = (known after apply) + id = (known after apply) + kms_key_id = (known after apply) + maintenance_track_name = "current" + manual_snapshot_retention_period = -1 + master_password = (sensitive value) + master_username = "de_project_admin" + node_type = "dc2.large" + number_of_nodes = 2 + port = 5439 + preferred_maintenance_window = (known after apply) + publicly_accessible = true + skip_final_snapshot = true + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-cluster" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-cluster" } + vpc_security_group_ids = (known after apply) } # aws_redshift_subnet_group.redshift-subnet-group will be created + resource "aws_redshift_subnet_group" "redshift-subnet-group" { + arn = (known after apply) + description = "Managed by Terraform" + id = (known after apply) + name = "de-project-dev-redshift-subnet-group" + subnet_ids = (known after apply) + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-subnet-group" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-subnet-group" } } # aws_route_table.redshift-rt-igw will be created + resource "aws_route_table" "redshift-rt-igw" { + arn = (known after apply) + id = (known after apply) + owner_id = (known after apply) + propagating_vgws = (known after apply) + route = [ + { + carrier_gateway_id = "" + cidr_block = "0.0.0.0/0" + core_network_arn = "" + destination_prefix_list_id = "" + egress_only_gateway_id = "" + gateway_id = (known after apply) + instance_id = "" + ipv6_cidr_block = "" + local_gateway_id = "" + nat_gateway_id = "" + network_interface_id = "" + transit_gateway_id = "" + vpc_endpoint_id = "" + vpc_peering_connection_id = "" }, ] + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-public-route-igw" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-public-route-igw" } + vpc_id = (known after apply) } # aws_route_table_association.redshift-subnet-rt-association-igw-az1 will be created + resource "aws_route_table_association" "redshift-subnet-rt-association-igw-az1" { + id = (known after apply) + route_table_id = (known after apply) + subnet_id = (known after apply) } # aws_route_table_association.redshift-subnet-rt-association-igw-az2 will be created + resource "aws_route_table_association" "redshift-subnet-rt-association-igw-az2" { + id = (known after apply) + route_table_id = (known after apply) + subnet_id = (known after apply) } # aws_s3_bucket.data_lake_bucket will be created + resource "aws_s3_bucket" "data_lake_bucket" { + acceleration_status = (known after apply) + acl = (known after apply) + arn = (known after apply) + bucket = "my-data-lake-bucket-adi-07" + bucket_domain_name = (known after apply) + bucket_prefix = (known after apply) + bucket_regional_domain_name = (known after apply) + force_destroy = false + hosted_zone_id = (known after apply) + id = (known after apply) + object_lock_enabled = (known after apply) + policy = (known after apply) + region = (known after apply) + request_payer = (known after apply) + tags_all = (known after apply) + website_domain = (known after apply) + website_endpoint = (known after apply) } # aws_s3_bucket_lifecycle_configuration.bucket-config will be created + resource "aws_s3_bucket_lifecycle_configuration" "bucket-config" { + bucket = (known after apply) + id = (known after apply) + rule { + id = "expiration-rule" + status = "Enabled" + expiration { + days = 30 + expired_object_delete_marker = (known after apply) } } } # aws_s3_bucket_ownership_controls.data_ownership_controls will be created + resource "aws_s3_bucket_ownership_controls" "data_ownership_controls" { + bucket = (known after apply) + id = (known after apply) + rule { + object_ownership = "BucketOwnerEnforced" } } # aws_s3_bucket_versioning.data_versioning_config will be created + resource "aws_s3_bucket_versioning" "data_versioning_config" { + bucket = (known after apply) + id = (known after apply) + versioning_configuration { + mfa_delete = (known after apply) + status = "Enabled" } } # aws_subnet.redshift-subnet-az1 will be created + resource "aws_subnet" "redshift-subnet-az1" { + arn = (known after apply) + assign_ipv6_address_on_creation = false + availability_zone = "us-east-1a" + availability_zone_id = (known after apply) + cidr_block = "10.20.1.0/24" + enable_dns64 = false + enable_resource_name_dns_a_record_on_launch = false + enable_resource_name_dns_aaaa_record_on_launch = false + id = (known after apply) + ipv6_cidr_block_association_id = (known after apply) + ipv6_native = false + map_public_ip_on_launch = false + owner_id = (known after apply) + private_dns_hostname_type_on_launch = (known after apply) + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-subnet-az1" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-subnet-az1" } + vpc_id = (known after apply) } # aws_subnet.redshift-subnet-az2 will be created + resource "aws_subnet" "redshift-subnet-az2" { + arn = (known after apply) + assign_ipv6_address_on_creation = false + availability_zone = "us-east-1b" + availability_zone_id = (known after apply) + cidr_block = "10.20.2.0/24" + enable_dns64 = false + enable_resource_name_dns_a_record_on_launch = false + enable_resource_name_dns_aaaa_record_on_launch = false + id = (known after apply) + ipv6_cidr_block_association_id = (known after apply) + ipv6_native = false + map_public_ip_on_launch = false + owner_id = (known after apply) + private_dns_hostname_type_on_launch = (known after apply) + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-subnet-az2" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-subnet-az2" } + vpc_id = (known after apply) } # aws_vpc.redshift-vpc will be created + resource "aws_vpc" "redshift-vpc" { + arn = (known after apply) + cidr_block = "10.20.0.0/16" + default_network_acl_id = (known after apply) + default_route_table_id = (known after apply) + default_security_group_id = (known after apply) + dhcp_options_id = (known after apply) + enable_classiclink = (known after apply) + enable_classiclink_dns_support = (known after apply) + enable_dns_hostnames = true + enable_dns_support = true + enable_network_address_usage_metrics = (known after apply) + id = (known after apply) + instance_tenancy = "default" + ipv6_association_id = (known after apply) + ipv6_cidr_block = (known after apply) + ipv6_cidr_block_network_border_group = (known after apply) + main_route_table_id = (known after apply) + owner_id = (known after apply) + tags = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-vpc" } + tags_all = { + "Environment" = "dev" + "Name" = "de-project-dev-redshift-vpc" } } Plan: 16 to add, 0 to change, 0 to destroy. Changes to Outputs: + redshift_cluster_dns_name = (known after apply) + redshift_cluster_id = (known after apply) + redshift_iam_role_arn = (known after apply) + redshift_security_group_id = (known after apply) + redshift_subnet_az1_cidr = "10.20.1.0/24" + redshift_subnet_az1_id = (known after apply) + redshift_subnet_az2_cidr = "10.20.2.0/24" + redshift_subnet_az2_id = (known after apply) + redshift_vpc_cidr = "10.20.0.0/16" + redshift_vpc_id = (known after apply) Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_iam_role.redshift-role: Creating... aws_vpc.redshift-vpc: Creating... aws_s3_bucket.data_lake_bucket: Creating... aws_iam_role.redshift-role: Creation complete after 3s [id=de-project-dev-redshift-role] aws_iam_role_policy.redshift-s3-full-access-policy: Creating... aws_iam_role_policy.redshift-s3-full-access-policy: Creation complete after 1s [id=de-project-dev-redshift-role:de-project-dev-redshift-role-s3-policy] aws_s3_bucket.data_lake_bucket: Creation complete after 9s [id=my-data-lake-bucket-adi-07] aws_s3_bucket_ownership_controls.data_ownership_controls: Creating... aws_s3_bucket_versioning.data_versioning_config: Creating... aws_s3_bucket_lifecycle_configuration.bucket-config: Creating... aws_s3_bucket_ownership_controls.data_ownership_controls: Creation complete after 1s [id=my-data-lake-bucket-adi-07] aws_vpc.redshift-vpc: Still creating... [10s elapsed] aws_s3_bucket_versioning.data_versioning_config: Creation complete after 3s [id=my-data-lake-bucket-adi-07] aws_s3_bucket_lifecycle_configuration.bucket-config: Still creating... [10s elapsed] aws_vpc.redshift-vpc: Still creating... [20s elapsed] aws_vpc.redshift-vpc: Creation complete after 22s [id=vpc-08146ab660692bd3e] aws_internet_gateway.redshift-igw: Creating... aws_subnet.redshift-subnet-az1: Creating... aws_subnet.redshift-subnet-az2: Creating... aws_default_security_group.redshift_security_group: Creating... aws_subnet.redshift-subnet-az1: Creation complete after 2s [id=subnet-08a16bdaca8c4f187] aws_internet_gateway.redshift-igw: Creation complete after 2s [id=igw-011f0b54686efd94d] aws_subnet.redshift-subnet-az2: Creation complete after 2s [id=subnet-0ceedd2a02e9285c1] aws_redshift_subnet_group.redshift-subnet-group: Creating... aws_route_table.redshift-rt-igw: Creating... aws_redshift_subnet_group.redshift-subnet-group: Creation complete after 2s [id=de-project-dev-redshift-subnet-group] aws_redshift_cluster.redshift-cluster: Creating... aws_route_table.redshift-rt-igw: Creation complete after 3s [id=rtb-07a92301fe0cc0883] aws_default_security_group.redshift_security_group: Creation complete after 5s [id=sg-053f66166d60b8069] aws_route_table_association.redshift-subnet-rt-association-igw-az1: Creating... aws_route_table_association.redshift-subnet-rt-association-igw-az2: Creating... aws_s3_bucket_lifecycle_configuration.bucket-config: Still creating... [20s elapsed] aws_route_table_association.redshift-subnet-rt-association-igw-az2: Creation complete after 2s [id=rtbassoc-0e4160a29d57a375e] aws_route_table_association.redshift-subnet-rt-association-igw-az1: Creation complete after 2s [id=rtbassoc-0cd9b357eeb27b786] aws_redshift_cluster.redshift-cluster: Still creating... [10s elapsed] aws_s3_bucket_lifecycle_configuration.bucket-config: Still creating... [30s elapsed] aws_s3_bucket_lifecycle_configuration.bucket-config: Creation complete after 34s [id=my-data-lake-bucket-adi-07] aws_redshift_cluster.redshift-cluster: Still creating... [20s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [30s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [40s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [50s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m0s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m10s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m20s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m30s elapsed] aws_redshift_cluster.redshift-cluster: Creation complete after 1m37s [id=de-project-cluster] Apply complete! Resources: 16 added, 0 changed, 0 destroyed. Outputs: redshift_cluster_dns_name = "de-project-cluster.cesckit5e8ft.us-east-1.redshift.amazonaws.com" redshift_cluster_id = "de-project-cluster" redshift_iam_role_arn = "arn:aws:iam::728272605423:role/de-project-dev-redshift-role" redshift_security_group_id = "sg-053f66166d60b8069" redshift_subnet_az1_cidr = "10.20.1.0/24" redshift_subnet_az1_id = "subnet-08a16bdaca8c4f187" redshift_subnet_az2_cidr = "10.20.2.0/24" redshift_subnet_az2_id = "subnet-0ceedd2a02e9285c1" redshift_vpc_cidr = "10.20.0.0/16" redshift_vpc_id = "vpc-08146ab660692bd3e" 1
google_storage_bucket.demo-bucket: Refreshing state... [id=de-zoomcamp-homework-terra-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_hw_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "xxxx-yyyy-11111" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/atomic-athlete-405617/datasets/de_zoomcamp_hw_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
7. Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google _bigquery_dataset" "demo dataset" { + creation_time = (known after apply) + dataset id = "demo_dataset" + default collation = (known after apply) + delete_contents_on_destroy = false + effective labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "polished-citron-330517" + self link = (known after apply) + storage billing model = (known after apply) + terraform_labels = (known after apply) U U } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "polished-citron-330517-terra-bucket" + project = (known after apply) + public_ access_prevention = (known after apply) + self link = (known after apply) + storage_class "STANDARD" + terraform labels = (known after apply) + uniform bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload' } + condition { † age = 1 + matches prefix = [] + matches_storage_class = [] + matches suffix = П + with_state = (known after apply) } add. g to chalige, 0 to destroy. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... ╷ │ Error: error: bucket name validation failed <Your Unique Bucket Name>. See https://cloud.google.com/storage/docs/naming-buckets │ │ with google_storage_bucket.data-lake-bucket, │ on main.tf line 19, in resource "google_storage_bucket" "data-lake-bucket": │ 19: resource "google_storage_bucket" "data-lake-bucket" { │ ╵ ╷ │ Error: Error creating Dataset: googleapi: Error 400: Invalid resource name projects/<Your Project ID>; Project id: <Your Project ID>, badRequest │ │ with google_bigquery_dataset.dataset, │ on main.tf line 44, in resource "google_bigquery_dataset" "dataset": │ 44: resource "google_bigquery_dataset" "dataset" { 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "lustrous-bonito-411623" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "nyc-tl-data-fad2" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/lustrous-bonito-411623/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=nyc-tl-data-fad2] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.de-dataset: Creating... google_storage_bucket.de-bucket: Creating... google_bigquery_dataset.de-dataset: Creation complete after 2s [id=projects/de-project-411714/datasets/de_dataset_411714] google_storage_bucket.de-bucket: Creation complete after 3s [id=de-bucket-de-project-411714] 1
aws_s3_bucket.data-lake-bucket: Refreshing state... [id=dez2024-dez-data-lake] aws_s3_bucket_versioning.bucket_versioning: Refreshing state... [id=dez2024-dez-data-lake] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_redshift_cluster.redshift-cluster will be created + resource "aws_redshift_cluster" "redshift-cluster" { + allow_version_upgrade = true + apply_immediately = false + aqua_configuration_status = (known after apply) + arn = (known after apply) + automated_snapshot_retention_period = 1 + availability_zone = (known after apply) + cluster_identifier = "dez-redshift-cluster" + cluster_namespace_arn = (known after apply) + cluster_nodes = (known after apply) + cluster_parameter_group_name = (known after apply) + cluster_public_key = (known after apply) + cluster_revision_number = (known after apply) + cluster_subnet_group_name = (known after apply) + cluster_type = "single-node" + cluster_version = "1.0" + database_name = "dez_db" + default_iam_role_arn = (known after apply) + dns_name = (known after apply) + encrypted = false + endpoint = (known after apply) + enhanced_vpc_routing = (known after apply) + iam_roles = (known after apply) + id = (known after apply) + kms_key_id = (known after apply) + maintenance_track_name = "current" + manage_master_password = true + manual_snapshot_retention_period = -1 + master_password_secret_arn = (known after apply) + master_password_secret_kms_key_id = (known after apply) + master_username = "dez" + node_type = "dc2.large" + number_of_nodes = 1 + port = 5439 + preferred_maintenance_window = (known after apply) + publicly_accessible = true + skip_final_snapshot = false + tags_all = (known after apply) + vpc_security_group_ids = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_redshift_cluster.redshift-cluster: Creating... aws_redshift_cluster.redshift-cluster: Still creating... [10s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [20s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [30s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [40s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [50s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m0s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m10s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m20s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m30s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m40s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [1m50s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [2m0s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [2m10s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [2m20s elapsed] aws_redshift_cluster.redshift-cluster: Still creating... [2m30s elapsed] aws_redshift_cluster.redshift-cluster: Creation complete after 2m31s [id=dez-redshift-cluster] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/latest-project-410306/datasets/data_tlk_388] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=data_tlk_388] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412320" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412320-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. victorino@victorino-Lenovo-IdeaPad-S145-15IWL:~/Documents/Cursos/DataEngineeringZoomcamp/Module1/2_DOCKER_SQL/terraform_w_var$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412320" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412320-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412320/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412320-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-412019/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-412019-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "inspiring-team-411419" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "inspiring-team-411419-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/inspiring-team-411419/datasets/zoomcamp_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=inspiring-team-411419-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/vivid-layout-412703/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-ksenia" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-demo-terra-bucket-ksenia] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "symmetric-span-412518" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-bucket-naci-001" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/symmetric-span-412518/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-bucket-naci-001] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=zoomcamp-dataengineer-terra-bucket] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/zoomcamp-dataengineer/datasets/demo_dataset] Note: Objects have changed outside of Terraform Terraform detected the following changes made outside of Terraform since the last "terraform apply": # google_storage_bucket.demo-bucket has changed ~ resource "google_storage_bucket" "demo-bucket" { id = "zoomcamp-dataengineer-terra-bucket" + labels = {} name = "zoomcamp-dataengineer-terra-bucket" # (13 unchanged attributes hidden) # (1 unchanged block hidden) } Unless you have made equivalent changes to your configuration, or ignored the relevant attributes using ignore_changes, the following plan may include actions to undo or respond to these changes. ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── No changes. Your infrastructure matches the configuration. Your configuration already matches the changes detected above. If you'd like to update the Terraform state to match, create and apply a refresh-only plan: terraform apply -refresh-only Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "absolute-axis-409317" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "absolute-axis-409317-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/absolute-axis-409317/datasets/zoomcamp_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=absolute-axis-409317-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412002" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412002-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412002/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412002-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dtc-de-course-412005/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412005-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=dtc-de-course-412005-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/gis-data-jenna/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset must be replaced -/+ resource "google_bigquery_dataset" "demo_dataset" { ~ creation_time = 1706500373831 -> (known after apply) ~ dataset_id = "demo_dataset" -> "demo_dataset2" # forces replacement + default_collation = (known after apply) - default_partition_expiration_ms = 5184000000 -> null - default_table_expiration_ms = 5184000000 -> null ~ effective_labels = {} -> (known after apply) ~ etag = "tdkf5jmjo/qVdVtrKZCZQw==" -> (known after apply) ~ id = "projects/gis-data-jenna/datasets/demo_dataset" -> (known after apply) ~ is_case_insensitive = false -> (known after apply) - labels = {} -> null ~ last_modified_time = 1706500373831 -> (known after apply) + max_time_travel_hours = (known after apply) ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/gis-data-jenna/datasets/demo_dataset" -> (known after apply) + storage_billing_model = (known after apply) ~ terraform_labels = {} -> (known after apply) # (3 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "gcp-githubactions-terraform@gis-data-jenna.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-jared20240128" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Destroying... [id=projects/gis-data-jenna/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Destruction complete after 1s google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-jared20240128] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/gis-data-jenna/datasets/demo_dataset2] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "active-district-412605" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.first-bucket-1 will be created + resource "google_storage_bucket" "first-bucket-1" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-bucket-first-1" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.first-bucket-1: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/active-district-412605/datasets/dataset] google_storage_bucket.first-bucket-1: Creation complete after 1s [id=terraform-bucket-first-1] 1
terraform apply var.project Your GCP Project ID Enter a value: swift-emblem-402612 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west4" + max_time_travel_hours = (known after apply) + project = "swift-emblem-402612" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST4" + name = "dtc_data_lake_swift-emblem-402612" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_swift-emblem-402612] google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/swift-emblem-402612/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
   ~/Pr/data-engineering-zoomcamp/01/1/t/terraform_basic    main !1  terraform apply  1 ✘  4s   15:26:17  google_bigquery_dataset.dataset: Refreshing state... [id=projects/unique-alpha-411912/datasets/TheDatasetNameYouWanttoUse] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "ourniqueucketame" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=ourniqueucketame] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "<test-dataset>" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "<jd-learn>" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "<test>" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412704" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412704-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/terraform-demo-412704/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412704-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
mar1@Marwans-MacBook-Pro terraform % terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=de-zoomcamp-week1-terraform-demo-terra-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_week1_terraform_demo_bq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412210" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket must be replaced -/+ resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null ~ effective_labels = {} -> (known after apply) - enable_object_retention = false -> null ~ id = "de-zoomcamp-week1-terraform-demo-terra-bucket" -> (known after apply) - labels = {} -> null ~ name = "de-zoomcamp-week1-terraform-demo-terra-bucket" -> "de_zoomcamp_week1_terraform_demo_bucket" # forces replacement ~ project = "de-zoomcamp-412210" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/de-zoomcamp-week1-terraform-demo-terra-bucket" -> (known after apply) ~ terraform_labels = {} -> (known after apply) ~ uniform_bucket_level_access = false -> (known after apply) ~ url = "gs://de-zoomcamp-week1-terraform-demo-terra-bucket" -> (known after apply) # (3 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Destroying... [id=de-zoomcamp-week1-terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Destruction complete after 2s google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-412210/datasets/de_zoomcamp_week1_terraform_demo_bq_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de_zoomcamp_week1_terraform_demo_bucket] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "bq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST1" + max_time_travel_hours = (known after apply) + project = "cohesive-envoy-411420" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "cohesive-envoy-411420" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/cohesive-envoy-411420/datasets/bq_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=cohesive-envoy-411420] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-course-412219/datasets/demo_dataset] ╷ │ Error: googleapi: Error 403: The billing account for the owning project is disabled in state absent, accountDisabled │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 17, in resource "google_storage_bucket" "demo-bucket": │ 17: resource "google_storage_bucket" "demo-bucket" { 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "hybrid-cabinet-412506" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "hybrid-cabinet-412506-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/hybrid-cabinet-412506/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=hybrid-cabinet-412506-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
-bash-4.2$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/vivid-partition-412012/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "gireesh-terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 4s [id=gireesh-terraform-demo-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. -bash-4.2$ 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "thinking-land-410514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "thinking-land-410514-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/thinking-land-410514/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=thinking-land-410514-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraformdemo-412523" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraformdemo-412523-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraformdemo-412523/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraformdemo-412523-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.data_lake_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/valid-bedrock-411916/datasets/demo_dataset] google_storage_bucket.data_lake_bucket: Creation complete after 1s [id=data_lake_valid-bedrock-411916] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "project_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "data-zoomcamp-410401" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "project-datalake_data-zoomcamp-410401" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 60 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=project-datalake_data-zoomcamp-410401] google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/data-zoomcamp-410401/datasets/project_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/big-bliss-411815/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=big-bliss-411815-terra-bucket] 1
(base) daisylin@M13P-2 terraform_with_variables % terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-demo-terra-bucket_daisylin_2024] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/clever-courier-411518/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=data_lake_bucket_zeta-serenity-412422] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/zeta-serenity-412422/datasets/ny_trips_data] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "neon-notch-412920" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "neon-notch-412920-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/neon-notch-412920/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=neon-notch-412920-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) franklin@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/homework$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_franklin" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_demo_terra_bucket_franklin" + project = (known after apply) (base) franklin@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/homework$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_franklin" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_demo_terra_bucket_franklin" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dezoomcamp-411315/datasets/demo_dataset_franklin] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform_demo_terra_bucket_franklin] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_hw1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dezoomcamp2024-412513" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-terra-bucket-hw1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dezoomcamp2024-412513/datasets/demo_dataset_hw1] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-hw1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_de_411412_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zoomcamp-de-411412" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "zoomcamp-de-411412-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_storage_bucket.demo_bucket: Creation complete after 3s [id=zoomcamp-de-411412-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 8s [id=projects/zoomcamp-de-411412/datasets/zoomcamp_de_411412_demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.data-lake-bucket: Refreshing state... [id=dts-de-course-2024-data-lake-bucket] google_bigquery_dataset.dataset: Refreshing state... [id=projects/dts-de-course-2024/datasets/dts_de_course_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.dataset must be replaced -/+ resource "google_bigquery_dataset" "dataset" { ~ creation_time = 1705668684713 -> (known after apply) ~ dataset_id = "dts_de_course_dataset" -> "demo_dataset" # forces replacement - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null ~ etag = "d5gTYEbEQFQM8dnkmAqlUg==" -> (known after apply) ~ id = "projects/dts-de-course-2024/datasets/dts_de_course_dataset" -> (known after apply) ~ labels = {} -> (known after apply) ~ last_modified_time = 1705668684713 -> (known after apply) ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/dts-de-course-2024/datasets/dts_de_course_dataset" -> (known after apply) # (3 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "dts-de-runnner@dts-de-course-2024.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.data-lake-bucket must be replaced -/+ resource "google_storage_bucket" "data-lake-bucket" { - default_event_based_hold = false -> null ~ id = "dts-de-course-2024-data-lake-bucket" -> (known after apply) - labels = {} -> null ~ name = "dts-de-course-2024-data-lake-bucket" -> "dts-de-course-2024-terra-bucket" # forces replacement ~ project = "dts-de-course-2024" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/dts-de-course-2024-data-lake-bucket" -> (known after apply) ~ url = "gs://dts-de-course-2024-data-lake-bucket" -> (known after apply) # (4 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 30 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } # (1 unchanged block hidden) } Plan: 2 to add, 0 to change, 2 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Destroying... [id=projects/dts-de-course-2024/datasets/dts_de_course_dataset] google_storage_bucket.data-lake-bucket: Destroying... [id=dts-de-course-2024-data-lake-bucket] google_bigquery_dataset.dataset: Destruction complete after 1s google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Destruction complete after 2s google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dts-de-course-2024-terra-bucket] google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/dts-de-course-2024/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "abiding-splicer-412408" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "abiding-splicer-412408-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=abiding-splicer-412408-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/abiding-splicer-412408/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "symbolic-bit-411809" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "symbolic-bit-411809-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/symbolic-bit-411809/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=symbolic-bit-411809-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform is an open-source Infrastructure as Code (IaC) tool developed by HashiCorp. It allows you to define and provision infrastructure and resources in a declarative configuration language. With Terraform, you can manage and automate the deployment of infrastructure components across various cloud providers, on-premises environments, and other infrastructure platforms. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "fast-banner-412410" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "fast-banner-412410-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/fast-banner-412410/datasets/demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 2s [id=fast-banner-412410-terra-bucket] 1
google_storage_bucket.demo-bucket: Refreshing state... [id=steam-life-410920] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "steam-life-410920" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/steam-life-410920/datasets/demo_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
@river:~/docker_sql/terraform$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-de-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-de-zoomcamp-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-de-zoomcamp/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-de-zoomcamp-bucket] 1
google_storage_bucket.demo-expire: Refreshing state... [id=de-zoomcamp-411818-terra-bucket] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/de-zoomcamp-411818/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "bg_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "certain-tangent-339418" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "certain-tangent-339418-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/certain-tangent-339418/datasets/bg_dataset] google_storage_bucket.demo-bucket: Creation complete after 4s [id=certain-tangent-339418-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
aws_s3_bucket.example_bucket: Refreshing state... [id=my-example-bucket] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
$ terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=dtc-de-bucket41119] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/smooth-state-411119/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "weighty-elf-412403" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "weighty-elf-412403-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/weighty-elf-412403/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=weighty-elf-412403-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "calm-athlete-412619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "calm-athlete-412619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/quantum-age-411318/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-quantum-age-411318-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "dtc-de-course-412318" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412318-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-course-412318/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc-de-course-412318-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "silent-window-412916" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "my_demo_terra_data" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } 1
  terrademo  terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.terradataset77 will be created + resource "google_bigquery_dataset" "terradataset77" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dataengineering-412009" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.thebucket77 will be created + resource "google_storage_bucket" "thebucket77" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terra77-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.terradataset77: Creating... google_storage_bucket.thebucket77: Creating... google_bigquery_dataset.terradataset77: Creation complete after 2s [id=projects/dataengineering-412009/datasets/demo_dataset] google_storage_bucket.thebucket77: Creation complete after 3s [id=terra77-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dtc-de-course-412906/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-prs3" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-prs3] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.tf1_dataset will be created + resource "google_bigquery_dataset" "tf1_dataset" { + creation_time = (known after apply) + dataset_id = "tf1_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "1006817309523" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.tf1-bucket will be created + resource "google_storage_bucket" "tf1-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "tf1_dataset-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_inspired-victor-409616] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/inspired-victor-409616/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) jschulle@de-zoomcamp:~/data-engineering-zoomcamp/week_1_basics_n_setup/1_terraform_gcp/terraform$ 1
# google_storage_bucket.Homework-Bucket-testingTerra will be created + resource "google_storage_bucket" "Homework-Bucket-testingTerra" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "unified-surfer-405214-testing_homework" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.Homework-Bucket-testingTerra: Creating... google_storage_bucket.Homework-Bucket-testingTerra: Creation complete after 2s [id=unified-surfer-405214-testing_homework] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_green_tripdata" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "de-zoomcamp-2024-412300" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "de_zoomcamp_green_tripdata" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/de-zoomcamp-2024-412300/datasets/de_zoomcamp_green_tripdata] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=de_zoomcamp_green_tripdata] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "jp-zoomcamp-2024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + max_time_travel_hours = (known after apply) + project = "taxi-rides-ny-000000" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + name = "taxi-rides-ny-000000-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/taxi-rides-ny-000000/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=taxi-rides-ny-000000-terraform-demo-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "my_first_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "northern-music-411504" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "northern-music-411504-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/northern-music-411504/datasets/my_first_dataset] google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Still creating... [20s elapsed] google_storage_bucket.demo-bucket: Still creating... [30s elapsed] google_storage_bucket.demo-bucket: Still creating... [40s elapsed] google_storage_bucket.demo-bucket: Still creating... [50s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m0s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m10s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m20s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m30s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m40s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m50s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m0s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m10s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m20s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m30s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m40s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m50s elapsed] google_storage_bucket.demo-bucket: Creation complete after 2m59s [id=northern-music-411504-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "spring-gift-325521_demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=spring-gift-325521_demo-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_ds will be created + resource "google_bigquery_dataset" "demo_ds" { + creation_time = (known after apply) + dataset_id = "demo_ds" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-terraform-412809" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform_bucket will be created + resource "google_storage_bucket" "terraform_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-terraform-412809_terraform_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_ds: Creating... google_storage_bucket.terraform_bucket: Creating... google_bigquery_dataset.demo_ds: Creation complete after 2s [id=projects/de-terraform-412809/datasets/demo_ds] google_storage_bucket.terraform_bucket: Creation complete after 2s [id=de-terraform-412809_terraform_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "rare_sound_412302_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "rare-sound-412302" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "rare_sound_412302_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/rare-sound-412302/datasets/rare_sound_412302_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=rare_sound_412302_bucket] 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-412623" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-412623-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-412623/datasets/terraform_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-412623-demo-terra-bucket] 1
@DrewDimas ➜ /workspaces/DataCamp2024/Week 1/terraform (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datacamp2024-412820" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datacamp2024-412820-terrabucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Don't have answer. I do all localy, because I'm in Russia and I can't get a free access to Google cloud platform 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_bigquery" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "erudite-justice-412208" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "terraform_zoomcamp_storage_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/erudite-justice-412208/datasets/zoomcamp_bigquery] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform_zoomcamp_storage_bucket] 1
ubuntu@ip-172-31-18-75:~/terrademo$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: - create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created - resource "google_storage_bucket" "demo-bucket" { - effective_labels = (known after apply) - force_destroy = true - id = (known after apply) - location = "US" - name = "terraform-runner-412408-terra-bucket" - project = (known after apply) - public_access_prevention = (known after apply) - self_link = (known after apply) - storage_class = "STANDARD" - terraform_labels = (known after apply) - uniform_bucket_level_access = (known after apply) - url = (known after apply) - lifecycle_rule { - action { - type = "AbortIncompleteMultipartUpload" } - condition { - age = 1 - matches_prefix = [] - matches_storage_class = [] - matches_suffix = [] - with_state = (known after apply) } } - versioning { - enabled = (known after apply) } - website { - main_page_suffix = (known after apply) - not_found_page = (known after apply) } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-runner-412408-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/airy-digit-410117/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=data-lake-bucket-410117] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-411822/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-411822-terra-bucket] 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/data-engineering-zc-2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-zc-2024] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "stellar-cipher-412606" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/stellar-cipher-412606/datasets/demo_dataset] ╷ │ Error: googleapi: Error 409: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again., conflict │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 17, in resource "google_storage_bucket" "demo-bucket": │ 17: resource "google_storage_bucket" "demo-bucket" { │ ╵ @atifiu ➜ /workspaces/ZoomCamp2024 (main) $ terraform apply -var="project=stellar-cipher-412606" google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/stellar-cipher-412606/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-atif" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-atif] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west1" + max_time_travel_hours = (known after apply) + project = "static-mediator-411916" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "static-mediator-411916-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=static-mediator-411916-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/static-mediator-411916/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.data-lake-bucket: Refreshing state... [id=terraform-demo-411718-demo-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "terraform-demo-411718" + self_link = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/terraform-demo-411718/datasets/demo_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataeng_zoomcamp_dataset will be created + resource "google_bigquery_dataset" "dataeng_zoomcamp_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi_trips" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "warm-rock-411419" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.dataeng_zoomcamp_bucket will be created + resource "google_storage_bucket" "dataeng_zoomcamp_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dataeng_zoomcamp_bucket_warm-rock-411419" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataeng_zoomcamp_dataset: Creating... google_storage_bucket.dataeng_zoomcamp_bucket: Creating... google_storage_bucket.dataeng_zoomcamp_bucket: Creation complete after 2s [id=dataeng_zoomcamp_bucket_warm-rock-411419] google_bigquery_dataset.dataeng_zoomcamp_dataset: Creation complete after 2s [id=projects/warm-rock-411419/datasets/ny_taxi_trips] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412016" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412016-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/terraform-demo-412016/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412016-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-412521/datasets/demo_terra_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_terra_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412521" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412521-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412521/datasets/demo_terra_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-demo-412521-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "my_ny_taxi_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "ny-taxi-olexa" + self_link = (known after apply) } # google_storage_bucket.mydata-lake-bucket will be created + resource "google_storage_bucket" "mydata-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "my-datalake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.mydata-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/ny-taxi-olexa/datasets/my_ny_taxi_dataset] google_storage_bucket.mydata-lake-bucket: Creation complete after 2s [id=my-datalake-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-emi" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-emi-tf-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-emi/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-emi-tf-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "engaged-ground-412415" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-bucket-de-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/engaged-ground-412415/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-bucket-de-zoomcamp] 1
terraform apply -var="project=oceanic-guard-325117" Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "oceanic_guard_325117_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "oceanic-guard-325117" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "oceanic-guard-325117-test-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/oceanic-guard-325117/datasets/oceanic_guard_325117_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=oceanic-guard-325117-test-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/emaily-dev-346007/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.emily-new-bucket will be created + resource "google_storage_bucket" "emily-new-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "emily-new-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.emily-new-bucket: Creating... google_storage_bucket.emily-new-bucket: Creation complete after 2s [id=emily-new-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "focused-elysium-411215" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "focused-elysium-411215-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/focused-elysium-411215/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=focused-elysium-411215-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
cyn64@DESKTOP-61N3CL0 MINGW64 ~/repo/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412616" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412616-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412616/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-412616-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
comebackfor this--just checking currents 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/datacamp2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=datacamp2024-terra-bucket] 1
Apply complete! Resources: 46 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-409909" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "409909-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dezoomcamp-409909/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=409909-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply -var="project=de-zoomcamp-412118" Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412118" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc_data_lake_de-zoomcamp-412118" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412118/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc_data_lake_de-zoomcamp-412118] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-johnwebb" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
❯ terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=taxi-bucket-inrsta] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dataeng2024/datasets/taxi_dataset_inrsta] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dezoocamp/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket-fb297a0d58dd will be created + resource "google_storage_bucket" "demo-bucket-fb297a0d58dd" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-fb297a0d58dd" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket-fb297a0d58dd: Creating... google_storage_bucket.demo-bucket-fb297a0d58dd: Creation complete after 1s [id=terraform-demo-terra-bucket-fb297a0d58dd] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "example_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "mimetic-math-411501" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "mimetic-math-411501-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/mimetic-math-411501/datasets/example_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=mimetic-math-411501-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.datatalks_bq_dataset_24 will be created + resource "google_bigquery_dataset" "datatalks_bq_dataset_24" { + creation_time = (known after apply) + dataset_id = "bq_dataset_24" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datatalks-de-412700" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.datatalks_gcs_bucket_24 will be created + resource "google_storage_bucket" "datatalks_gcs_bucket_24" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "gcs_bucket_24" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.datatalks_bq_dataset_24: Creating... google_storage_bucket.datatalks_gcs_bucket_24: Creating... google_bigquery_dataset.datatalks_bq_dataset_24: Creation complete after 1s [id=projects/datatalks-de-412700/datasets/bq_dataset_24] google_storage_bucket.datatalks_gcs_bucket_24: Creation complete after 1s [id=gcs_bucket_24] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
/de-zoomcamp-2024/01-basics-n-setup/1_terraform_gcp/terraform_with_variables (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "yellow_taxi_trips" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "woven-edge-412500" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "woven-edge-412500-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/woven-edge-412500/datasets/yellow_taxi_trips] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=woven-edge-412500-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
https://github.com/dilip4data/DE-Zoomcamp/blob/main/week1/Homework%20Answers 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/composed-hangar-236017/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket-bideen will be created + resource "google_storage_bucket" "demo-bucket-bideen" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bideen" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket-bideen: Creating... google_storage_bucket.demo-bucket-bideen: Creation complete after 1s [id=terraform-demo-terra-bideen] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_compute_address.static_ip: Refreshing state... [id=projects/mimetic-science-411514/regions/europe-west10/addresses/external-static-ip] google_compute_instance.dez_compute: Refreshing state... [id=projects/mimetic-science-411514/zones/europe-west10-a/instances/dez-compute] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.terraform_demo_dataset will be created + resource "google_bigquery_dataset" "terraform_demo_dataset" { + creation_time = (known after apply) + dataset_id = "mimetic-science-411514-dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + description = "This is a terraform_demo_dataset description" + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "demo dataset" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST10" + max_time_travel_hours = (known after apply) + project = "mimetic-science-411514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_compute_instance.dez_compute must be replaced -/+ resource "google_compute_instance" "dez_compute" { ~ cpu_platform = "Intel Broadwell" -> (known after apply) ~ current_status = "RUNNING" -> (known after apply) ~ effective_labels = {} -> (known after apply) - enable_display = false -> null ~ guest_accelerator = [] -> (known after apply) ~ id = "projects/mimetic-science-411514/zones/europe-west10-a/instances/dez-compute" -> (known after apply) ~ instance_id = "1216875975963459505" -> (known after apply) ~ label_fingerprint = "42WmSpB8rSM=" -> (known after apply) - labels = {} -> null - metadata = {} -> null ~ metadata_fingerprint = "HTE7IpqX8Ho=" -> (known after apply) ~ metadata_startup_script = <<-EOT # forces replacement #!/bin/bash # Install Docker # Set up Docker's apt repository. # Add Docker's official GPG key: sudo apt-get update sudo apt-get install -y ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings - if [ ! -f /etc/apt/keyrings/docker.gpg ]; then - curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg + if [ -f /etc/apt/keyrings/docker.gpg ]; then + sudo rm /etc/apt/keyrings/docker.gpg fi + curl -fsSL https://download.docker.com/linux/debian/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod a+r /etc/apt/keyrings/docker.gpg - # Add Docker's repository if it isn't already present - DOCKER_SOURCE_LIST="/etc/apt/sources.list.d/docker.list" - if [ ! -f "$DOCKER_SOURCE_LIST" ]; then - echo \ - "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ - $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ - sudo tee "$DOCKER_SOURCE_LIST" > /dev/null - fi + # Add the repository to Apt sources: + echo \ + "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/debian \ + $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \ + sudo tee /etc/apt/sources.list.d/docker.list > /dev/null + sudo apt-get update # Install Docker packages if not already installed sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin # Install pip sudo apt-get install -y python3-pip + # Pip install packages + pip3 install --upgrade pip + pip3 install pandas sqlalchemy psycopg2-binary ruff - # Download taxi data and zone data ? + # Modify .bashrc to add /home/rixen/.local/bin to PATH + if ! grep -q 'export PATH="$HOME/.local/bin:$PATH"' /home/rixen/.bashrc; then + echo 'export PATH="$HOME/.local/bin:$PATH"' >> /home/rixen/.bashrc + fi + + # Add User rixen to the Docker Group + sudo usermod -aG docker rixen EOT + min_cpu_platform = (known after apply) name = "dez-compute" - resource_policies = [] -> null ~ self_link = "https://www.googleapis.com/compute/v1/projects/mimetic-science-411514/zones/europe-west10-a/instances/dez-compute" -> (known after apply) - tags = [] -> null ~ tags_fingerprint = "42WmSpB8rSM=" -> (known after apply) ~ terraform_labels = {} -> (known after apply) # (7 unchanged attributes hidden) ~ boot_disk { ~ device_name = "persistent-disk-0" -> (known after apply) + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) ~ source = "https://www.googleapis.com/compute/v1/projects/mimetic-science-411514/zones/europe-west10-a/disks/dez-compute" -> (known after apply) # (2 unchanged attributes hidden) ~ initialize_params { ~ image = "https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-11-bullseye-v20240110" -> "debian-cloud/debian-11" ~ labels = {} -> (known after apply) ~ provisioned_iops = 0 -> (known after apply) ~ provisioned_throughput = 0 -> (known after apply) - resource_manager_tags = {} -> null ~ type = "pd-standard" -> (known after apply) # (1 unchanged attribute hidden) } } ~ network_interface { ~ internal_ipv6_prefix_length = 0 -> (known after apply) + ipv6_access_type = (known after apply) + ipv6_address = (known after apply) ~ name = "nic0" -> (known after apply) ~ network = "https://www.googleapis.com/compute/v1/projects/mimetic-science-411514/global/networks/default" -> "default" ~ network_ip = "10.214.0.5" -> (known after apply) - queue_count = 0 -> null ~ stack_type = "IPV4_ONLY" -> (known after apply) ~ subnetwork = "https://www.googleapis.com/compute/v1/projects/mimetic-science-411514/regions/europe-west10/subnetworks/default" -> (known after apply) ~ subnetwork_project = "mimetic-science-411514" -> (known after apply) ~ access_config { ~ network_tier = "PREMIUM" -> (known after apply) # (1 unchanged attribute hidden) } } - scheduling { - automatic_restart = true -> null - min_node_cpus = 0 -> null - on_host_maintenance = "MIGRATE" -> null - preemptible = false -> null - provisioning_model = "STANDARD" -> null } - shielded_instance_config { - enable_integrity_monitoring = true -> null - enable_secure_boot = false -> null - enable_vtpm = true -> null } } # google_storage_bucket.terraform-demo-bucket will be created + resource "google_storage_bucket" "terraform-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST10" + name = "mimetic-science-411514-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 3 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "highly_unusual_dataset_name" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "sound-oasis-309708" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "highly_unusual_bucket_name" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/sound-oasis-309708/datasets/highly_unusual_dataset_name] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=highly_unusual_bucket_name] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "emsbigqdsdezc" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "banded-pad-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "emsdezoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/banded-pad-411315/datasets/emsbigqdsdezc] google_storage_bucket.demo-bucket: Creation complete after 1s [id=emsdezoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dtc-dez-412616/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "duckddd" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=duckddd] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=dataengineering-bucket-henson] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dataengineering_dataset_henson" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-410912" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-410912/datasets/dataengineering_dataset_henson] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_redshift_cluster.example will be created + resource "aws_redshift_cluster" "example" { + allow_version_upgrade = true + apply_immediately = false + aqua_configuration_status = (known after apply) + arn = (known after apply) + automated_snapshot_retention_period = 1 + availability_zone = (known after apply) + cluster_identifier = "demo-redshift-mk2431-toronto" + cluster_namespace_arn = (known after apply) + cluster_nodes = (known after apply) + cluster_parameter_group_name = (known after apply) + cluster_public_key = (known after apply) + cluster_revision_number = (known after apply) + cluster_subnet_group_name = (known after apply) + cluster_type = "single-node" + cluster_version = "1.0" + database_name = "demodb" + default_iam_role_arn = (known after apply) + dns_name = (known after apply) + encrypted = false + endpoint = (known after apply) + enhanced_vpc_routing = (known after apply) + iam_roles = (known after apply) + id = (known after apply) + kms_key_id = (known after apply) + maintenance_track_name = "current" + manual_snapshot_retention_period = -1 + master_password = (sensitive value) + master_password_secret_arn = (known after apply) + master_password_secret_kms_key_id = (known after apply) + master_username = "root_user" + node_type = "dc1.8xlarge" + number_of_nodes = 1 + port = 5439 + preferred_maintenance_window = (known after apply) + publicly_accessible = true + skip_final_snapshot = false + tags_all = (known after apply) + vpc_security_group_ids = (known after apply) } # aws_s3_bucket.demo-bucket will be created + resource "aws_s3_bucket" "demo-bucket" { + acceleration_status = (known after apply) + acl = (known after apply) + arn = (known after apply) + bucket = "demo-bucket-mk2431-toronto" + bucket_domain_name = (known after apply) + bucket_prefix = (known after apply) + bucket_regional_domain_name = (known after apply) + force_destroy = false + hosted_zone_id = (known after apply) + id = (known after apply) + object_lock_enabled = (known after apply) + policy = (known after apply) + region = (known after apply) + request_payer = (known after apply) + tags = { + "Environment" = "Dev" + "Name" = "My bucket" } + tags_all = { + "Environment" = "Dev" + "Name" = "My bucket" } + website_domain = (known after apply) + website_endpoint = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_s3_bucket.demo-bucket: Creating... aws_s3_bucket.demo-bucket: Creation complete after 1s [id=demo-bucket-mk2431-toronto] aws_redshift_cluster.example: Creating... aws_redshift_cluster.example: Still creating... [10s elapsed] aws_redshift_cluster.example: Still creating... [20s elapsed] aws_redshift_cluster.example: Still creating... [30s elapsed] aws_redshift_cluster.example: Still creating... [40s elapsed] aws_redshift_cluster.example: Still creating... [50s elapsed] aws_redshift_cluster.example: Still creating... [1m0s elapsed] aws_redshift_cluster.example: Still creating... [1m10s elapsed] aws_redshift_cluster.example: Still creating... [1m20s elapsed] aws_redshift_cluster.example: Still creating... [1m30s elapsed] aws_redshift_cluster.example: Still creating... [1m40s elapsed] aws_redshift_cluster.example: Still creating... [1m50s elapsed] aws_redshift_cluster.example: Still creating... [2m0s elapsed] aws_redshift_cluster.example: Still creating... [2m10s elapsed] aws_redshift_cluster.example: Still creating... [2m20s elapsed] aws_redshift_cluster.example: Creation complete after 2m24s [id=demo-redshift-mk2431-toronto] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "datasetname" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "zoomcamp2024-412611" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "hwbucketnodawnoidnadio" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.animated-surfer-bucket-412517: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/animated-surfer-412517/datasets/data_engineering_project_dataset] google_storage_bucket.animated-surfer-bucket-412517: Creation complete after 3s [id=animated-surfer-412517-demo-bucket] 1
DELL@DESKTOP-9CPI2JU MINGW64 ~/Desktop/projects/NYC-Taxi-Data-Ingestion-Postgres-Docker/terraform (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.bigquery-dataset will be created + resource "google_bigquery_dataset" "bigquery-dataset" { + creation_time = (known after apply) + dataset_id = "terraform_bigquery" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "api-to-bigquery-411507" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.gcp-storage will be created + resource "google_storage_bucket" "gcp-storage" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "api-to-bigquery-411507-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.gcp-storage: Creating... google_bigquery_dataset.bigquery-dataset: Creating...google_bigquery_dataset.bigquery-dataset: Creation complete after 3s [id=projects/api-to-bigquery-411507/datasets/terraform_bigquery] google_storage_bucket.gcp-storage: Creation complete after 5s [id=api-to-bigquery-411507-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demodataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "terrademo-412012" + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "terrademo-412012-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/terrademo-412012/datasets/demodataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terrademo-412012-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "homework1_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.homework_bucket will be created + resource "google_storage_bucket" "homework_bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-homework1-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
dasikamadhu$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.de-zoomcamp-2024 will be created + resource "google_storage_bucket" "de-zoomcamp-2024" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "nyc_tl_data_de_2024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.de-zoomcamp-2024: Creating... google_storage_bucket.de-zoomcamp-2024: Creation complete after 2s [id=nyc_tl_data_de_2024] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "totemic-vim-412713" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
(base) PS C:\Git\courses\data-engineering-zoomcamp\01-docker-terraform\1_terraform_gcp\terraform\terraform_with_variables> terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/striking-retina-412711/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "alzcurda-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=alzcurda-demo-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ecstatic-router-410309/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ecstatic-router-410309-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-west1" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411820" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-WEST1" + name = "dtc_data_lake_de-zoomcamp-411820" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. 1
google_bigquery_dataset.dataset: Refreshing state... [id=projects/halogen-ethos-596/datasets/nytaxi] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "my_storage_nytaxi_123" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=my_storage_nytaxi_123] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.terra-demo-dataset-jm will be created + resource "google_bigquery_dataset" "terra-demo-dataset-jm" { + creation_time = (known after apply) + dataset_id = "jm_dataset_terra_test" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-test" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terra-demo-bucket-jm will be created + resource "google_storage_bucket" "terra-demo-bucket-jm" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-test-jm-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.terra-demo-dataset-jm: Creating... google_storage_bucket.terra-demo-bucket-jm: Creating... google_bigquery_dataset.terra-demo-dataset-jm: Creation complete after 2s [id=projects/de-zoomcamp-test/datasets/jm_dataset_terra_test] google_storage_bucket.terra-demo-bucket-jm: Creation complete after 3s [id=de-zoomcamp-test-jm-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-course-412517" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-bucket-h1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-course-412517/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-bucket-h1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "example_dataset" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "This is a test description" + effective_labels = { + "env" = "default" } + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "env" = "default" } + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "cogent-weaver-411816" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "env" = "default" } + access { + role = "OWNER" + user_by_email = (known after apply) } + access { + domain = "hashicorp.com" + role = "READER" } } # google_service_account.bqowner will be created + resource "google_service_account" "bqowner" { + account_id = "bqowner" + disabled = false + email = (known after apply) + id = (known after apply) + member = (known after apply) + name = (known after apply) + project = "cogent-weaver-411816" + unique_id = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "cogent-weaver-411816-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-week1-thomas" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-week1-thomas-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.demo_dataset: Destroying... [id=projects/terraform-intro-412309/datasets/demo_dataset] google_storage_bucket.terra_hw_bucket: Creating... google_bigquery_dataset.demo_dataset: Destruction complete after 0s google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-intro-412309/datasets/terra_hw_dataset] google_storage_bucket.terra_hw_bucket: Creation complete after 1s [id=terra_hw_bucket] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
MINGW64 ~/Documents/Learning/Zoomcamp/1_terraform_gcp/terrademo $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412712" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412712-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412712/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412712-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "tf_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-east1" + max_time_travel_hours = (known after apply) + project = "valued-listener-412612" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-EAST1" + name = "valued-listener-412612-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=valued-listener-412612-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/valued-listener-412612/datasets/tf_demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/strange-mariner-375614/datasets/anand_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=anand_terraform-demo-terra-bucket] 1
andre@localhost:~/projects/D-E-Zoomcamp/terrademo$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/polished-engine-412507/datasets/terraform_demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA" + name = "polished-engine-412507-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=polished-engine-412507-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. andre@localhost:~/projects/D-E-Zoomcamp/terrademo$ 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.bigquery_demo_dataset will be created + resource "google_bigquery_dataset" "bigquery_demo_dataset" { + creation_time = (known after apply) + dataset_id = "google_BQ_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "primeval-legacy-412013" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.gcp-bucket-instance-01 will be created + resource "google_storage_bucket" "gcp-bucket-instance-01" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "primeval-legacy-412013-gcp-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. google_bigquery_dataset.bigquery_demo_dataset: Creating... google_storage_bucket.gcp-bucket-instance-01: Creating... google_bigquery_dataset.bigquery_demo_dataset: Creation complete after 1s [id=projects/primeval-legacy-412013/datasets/google_BQ_demo_dataset] google_storage_bucket.gcp-bucket-instance-01: Creation complete after 2s [id=primeval-legacy-412013-gcp-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dez_quanns_big_query" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "lithe-maker-411313" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dez-quanns-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/lithe-maker-411313/datasets/dez_quanns_big_query] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dez-quanns-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-412715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "gd-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-412715/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=gd-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "nice-diorama-412708-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=nice-diorama-412708-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... \ google_storage_bucket.demo-bucket: Creating... \ google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-411511/datasets/Bigquery_demo_dataset] \ google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-411511-bucket] 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/smart-spark-412319/datasets/dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=smart-spark-412319-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412815-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.auto-expire: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412815/datasets/demo_dataset] google_storage_bucket.auto-expire: Creation complete after 2s [id=terraform-demo-412815-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "mystic-cable-406415" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "mystic-cable-406415-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/mystic-cable-406415/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=mystic-cable-406415-terra-bucket] 1
(base) tapji@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "tapji_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west1" + max_time_travel_hours = (known after apply) + project = "data-engineering-405316" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "tapji-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-engineering-405316/datasets/tapji_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=tapji-terraform-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoocamp-de" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoocamp-de-250124" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/zoocamp-de/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoocamp-de-250124] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-411812" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.dezc-2024-curlydz will be created + resource "google_storage_bucket" "dezc-2024-curlydz" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezc-2024-curlydz" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.dezc-2024-curlydz: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dezoomcamp-411812/datasets/demo_dataset] google_storage_bucket.dezc-2024-curlydz: Creation complete after 2s [id=dezc-2024-curlydz] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412308/datasets/dtc_de_course_412308] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412308-demo-terra-bucket] 1
google_storage_bucket.demo-bucket: Refreshing state... [id=ny_rides_gus001] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/quiet-rigging-411402/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
$ terraform apply var.project dt-de-2024 Enter a value: dt-de-2024 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-east1" + max_time_travel_hours = (known after apply) + project = "dt-de-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-EAST1" + name = "dt_data_lake_dt-de-2024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dt-de-2024/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dt_data_lake_dt-de-2024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "nytaxidata" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST1" + max_time_travel_hours = (known after apply) + project = "plasma-bison-411917" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "dezoomcamp-plasma-bison-411917-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/plucky-lane-412110/datasets/ak_demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.ak-demo-bucket will be created + resource "google_storage_bucket" "ak-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "plucky-lane-412110-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.ak-demo-bucket: Creating... google_storage_bucket.ak-demo-bucket: Creation complete after 3s [id=plucky-lane-412110-terraform-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo__assignment_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-412020" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-412020-tf-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "rareInquiry412603NYTaxi" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "rare-inquiry-412603" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "rare-inquiry-412603-terrabucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/rare-inquiry-412603/datasets/rareInquiry412603NYTaxi] google_storage_bucket.demo-bucket: Creation complete after 2s [id=rare-inquiry-412603-terrabucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412316" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412316-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # local_file.example will be created + resource "local_file" "example" { + content = "Hello, GitHub Codespaces!" + directory_permission = "0777" + file_permission = "0777" + filename = "output.txt" + id = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "argon-tuner-410118" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "terraform-demo-terra-bucket-argon-tuner-410118" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/argon-tuner-410118/datasets/ny_taxi] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-argon-tuner-410118] 1
Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/machinelearningzoomcamp1/datasets/demo_dataset3241241] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. (base) naveed@Naveeds-MacBook-Pro terraform_with_variables % 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-demo-4127066-terra-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412706" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412706/datasets/demo_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-411910/datasets/de_zoomcamp_411910_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de2024-412012" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de2024-412012-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
(base) darastolyarova@MacBook-Air-Dara terrademo % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "midyear-task-411317" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "midyear-task-411317-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/midyear-task-411317/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=midyear-task-411317-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
resource "google_compute_instance" "example" { + name = "example-instance" + machine_type = "n1-standard-1" + zone = "us-central1-a" } 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_rides will be created + resource "google_bigquery_dataset" "ny_rides" { + creation_time = (known after apply) + dataset_id = "ny_rides" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "northamerica-northeast1" + max_time_travel_hours = (known after apply) + project = "ny-rides-diegogutierrez" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.ny-rides-diegogutierrez-terraform-bucket will be created + resource "google_storage_bucket" "ny-rides-diegogutierrez-terraform-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "NORTHAMERICA-NORTHEAST1" + name = "ny-rides-diegogutierrez-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST2" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412122" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST2" + name = "terraform-demo-bekzhan" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412122/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-bekzhan] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.Homework1_dataset will be created + resource "google_bigquery_dataset" "Homework1_dataset" { + creation_time = (known after apply) + dataset_id = "homework1_dataset_410018" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-410018" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.Homework1-bucket will be created + resource "google_storage_bucket" "Homework1-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "bucket-410018" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
GCP is not available in my country 1
google_bigquery_dataset.test_dataset: Creating... google_storage_bucket.test_bucket: Creating... google_bigquery_dataset.test_dataset: Creation complete after 2s [id=projects/terra_demo_431941/datasets/test_dataset] google_storage_bucket.test_bucket: Creation complete after 2s [id=terra-test-431941-terra-bucket] Apply complete! Resources: 2 added, 0 changed, destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "e_383809_example_dataset" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "This is a test description" + effective_labels = { + "env" = "default" } + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "env" = "default" } + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-projects-383809" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "env" = "default" } + access { + role = "OWNER" + user_by_email = (known after apply) } + access { + domain = "hashicorp.com" + role = "READER" } } # google_service_account.bqowner will be created + resource "google_service_account" "bqowner" { + account_id = "bqowner" + disabled = false + email = (known after apply) + id = (known after apply) + member = (known after apply) + name = (known after apply) + project = "de-projects-383809" + unique_id = (known after apply) } # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "e-projects-383809_auto-expiring-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_service_account.bqowner: Creating... google_storage_bucket.auto-expire: Creating... google_storage_bucket.auto-expire: Creation complete after 3s [id=e-projects-383809_auto-expiring-bucket] google_service_account.bqowner: Creation complete after 4s [id=projects/de-projects-383809/serviceAccounts/bqowner@de-projects-383809.iam.gserviceaccount.com] google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 4s [id=projects/de-projects-383809/datasets/e_383809_example_dataset] Apply complete! Resources: 3 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "studidevops-bigpro-fakhri" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "iron-cedar-412619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "iron-cedar-412619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/iron-apple-412620/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=iron-apple-412620-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "nyc-taxi-trips-20240122" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-bucket-20240122" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/nyc-taxi-trips-20240122/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-bucket-20240122] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-413005" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-413005-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/qwiklabs-gcp-01-a6862cb278fc/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "qwiklabs-gcp-01-a6862cb278fc-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=qwiklabs-gcp-01-a6862cb278fc-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.terraform_dataset_demo will be created + resource "google_bigquery_dataset" "terraform_dataset_demo" { + creation_time = (known after apply) + dataset_id = "dataset_nidal" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "nidal-test" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_compute_instance.default will be created + resource "google_compute_instance" "default" { + can_ip_forward = false + cpu_platform = (known after apply) + current_status = (known after apply) + deletion_protection = false + effective_labels = (known after apply) + guest_accelerator = (known after apply) + id = (known after apply) + instance_id = (known after apply) + label_fingerprint = (known after apply) + machine_type = "n2-standard-2" + metadata_fingerprint = (known after apply) + min_cpu_platform = (known after apply) + name = "my-instance" + project = "nidal-test" + self_link = (known after apply) + tags_fingerprint = (known after apply) + terraform_labels = (known after apply) + zone = "us-central1-a" + boot_disk { + auto_delete = true + device_name = (known after apply) + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) + mode = "READ_WRITE" + source = (known after apply) + initialize_params { + image = "debian-cloud/debian-11" + labels = { + "my_label" = "value" } + provisioned_iops = (known after apply) + provisioned_throughput = (known after apply) + size = (known after apply) + type = (known after apply) } } + network_interface { + internal_ipv6_prefix_length = (known after apply) + ipv6_access_type = (known after apply) + ipv6_address = (known after apply) + name = (known after apply) + network = "default" + network_ip = (known after apply) + stack_type = (known after apply) + subnetwork = (known after apply) + subnetwork_project = (known after apply) + access_config { + nat_ip = (known after apply) + network_tier = (known after apply) } } + scratch_disk { + device_name = (known after apply) + interface = "NVME" + size = 375 } } # google_storage_bucket.test-bucket-nidal will be created + resource "google_storage_bucket" "test-bucket-nidal" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-engineering-bucket-nidal" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/rifqi-zoomcamp-2024/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "rifqi-zoomcamp-2024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=rifqi-zoomcamp-2024-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
(base) ✘ andresgutierrez@MacBook-Pro-de-Andres  ~/dev/repos/data-engineering-zoomcamp/01-docker-terraform/homework   main  terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/spikes-268805/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket-zoom-demo will be created + resource "google_storage_bucket" "demo-bucket-zoom-demo" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "spikes-268805-bucket-demo" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket-zoom-demo: Creating... google_storage_bucket.demo-bucket-zoom-demo: Creation complete after 1s [id=spikes-268805-bucket-demo] 1
google_storage_bucket.demo-bucket: Refreshing state... [id=trans-campus-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "trans-campus-410115" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/trans-campus-410115/datasets/demo_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/seventh-carport-412010/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=seventh-carport-412010-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/terraform-de-411309/datasets/ny_taxi_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=terraform-de-411309-terra-bucket] 1
dtc-de-2024 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-411621/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoomcamp-terra-bucket-rc] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/homerunproject-1565821366887/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terra-bucket-homerunproject] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/ny-rides-daniel/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=ny-rides-daniel-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412212" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412212-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412212/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412212-terra-bucket] 1
google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Destroying... [id=projects/gothic-avenue-412217/datasets/demo_dataset] google_bigquery_dataset.demo_dataset: Destruction complete after 0s google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket_manprat] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/gothic-avenue-412217/datasets/demo_dataset_terraform_manprat] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
@nduka-vic ➜ /workspaces/DTCzoomcamp2024/terraformdemo (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "golden-cosmos-412318" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "golden-cosmos-412318" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/golden-cosmos-412318/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=golden-cosmos-412318] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412110" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412110-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/terraform-demo-412110/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412110-terra-bucket] 1
basic: google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=ny-taxi-411322-test-bucket] | variables: google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-taxi-411322/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ny-taxi-411322-test-bucket-p2] 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/burnished-case-410121/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=de_zoomcamp_data_lake_burnished-case-410121] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terrform-demo-412419" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terra-ny-taxi-bucket will be created + resource "google_storage_bucket" "terra-ny-taxi-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-ny-taxi-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "fine-rookery-412515" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "fine-rookery-412515-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/fine-rookery-412515/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=fine-rookery-412515-demo-bucket] 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset-datacamp2222222024-akolmakov: Creating... google_storage_bucket.datacamp1-412912-okay-how-is-this-name-cannot-be-unique-after-so-many-characters-akolmakov: Creating... google_bigquery_dataset.demo_dataset-datacamp2222222024-akolmakov: Creation complete after 1s [id=projects/datacamp1-412912/datasets/demo_dataset] ╷ │ Error: googleapi: Error 409: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again., conflict │ │ with google_storage_bucket.datacamp1-412912-okay-how-is-this-name-cannot-be-unique-after-so-many-characters-akolmakov, │ on main.tf line 17, in resource "google_storage_bucket" "datacamp1-412912-okay-how-is-this-name-cannot-be-unique-after-so-many-characters-akolmakov": │ 17: resource "google_storage_bucket" "datacamp1-412912-okay-how-is-this-name-cannot-be-unique-after-so-many-characters-akolmakov" { │ ╵ 1
Changes to Outputs: + bigquery_dataset_id = "my_unique_dataset" + gcs_bucket_name = "my-unique-bucket-name" google_storage_bucket.my_bucket: Creating... google_storage_bucket.my_bucket: Creation complete after 1s [id=my-unique-bucket-name] google_bigquery_dataset.my_dataset: Creating... google_bigquery_dataset.my_dataset: Creation complete after 1s [id=your-gcp-project-id:my_unique_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. Outputs: bigquery_dataset_id = my_unique_dataset gcs_bucket_name = my-unique-bucket-name 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412720" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412720-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412720/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412720-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_compute_network.vpc_network will be created + resource "google_compute_network" "vpc_network" { + auto_create_subnetworks = true + delete_default_routes_on_create = false + gateway_ipv4 = (known after apply) + id = (known after apply) + internal_ipv6_range = (known after apply) + mtu = (known after apply) + name = "terraform-network" + project = (known after apply) + routing_mode = (known after apply) + self_link = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "ny-rides-rohitg" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "ny-rides-rohitg-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-rides-rohitg/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ny-rides-rohitg-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.test_dataset will be created + resource "google_bigquery_dataset" "test_dataset" { + creation_time = (known after apply) + dataset_id = "test_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-camp-42" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.test-gcs-bucket will be created + resource "google_storage_bucket" "test-gcs-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "test-gcs-bucket-42" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.test_dataset: Creating... google_storage_bucket.test-gcs-bucket: Creating... google_bigquery_dataset.test_dataset: Creation complete after 1s [id=projects/de-camp-42/datasets/test_dataset] google_storage_bucket.test-gcs-bucket: Creation complete after 3s [id=test-gcs-bucket-42] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
having problem 1
@Hdasika ➜ .../data-engineering-zoomcamp/01-docker-terraform/terraform_azure/terraform (main) $ tf apply data.azurerm_client_config.current: Reading... data.azurerm_client_config.current: Read complete after 0s [id=Y2xpZW50Q29uZmlncy9jbGllbnRJZD0wNGIwNzc5NS04ZGRiLTQ2MWEtYmJlZS0wMmY5ZTFiZjdiNDY7b2JqZWN0SWQ9MDI1ZTBhYzctZTI1Ni00MmI0LWE4YTMtY2FmOTU2ZGFlYTQxO3N1YnNjcmlwdGlvbklkPTFlOGYzMzEyLWU1MzItNGNmMS04YWM1LWQzNDZlNDk0YWQ5YTt0ZW5hbnRJZD1hZmNkNzdkNi1mZWFkLTQ5N2EtODM1OC05NjVmMDViYjI5Y2Q=] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # azurerm_storage_account.storage will be created + resource "azurerm_storage_account" "storage" { + access_tier = (known after apply) + account_kind = "StorageV2" + account_replication_type = "GRS" + account_tier = "Standard" + allow_nested_items_to_be_public = true + cross_tenant_replication_enabled = true + default_to_oauth_authentication = false + enable_https_traffic_only = true + id = (known after apply) + infrastructure_encryption_enabled = false + is_hns_enabled = true + large_file_share_enabled = (known after apply) + location = "westus2" + min_tls_version = "TLS1_2" + name = "storagezoomcamp" + nfsv3_enabled = false + primary_access_key = (sensitive value) + primary_blob_connection_string = (sensitive value) + primary_blob_endpoint = (known after apply) + primary_blob_host = (known after apply) + primary_blob_internet_endpoint = (known after apply) + primary_blob_internet_host = (known after apply) + primary_blob_microsoft_endpoint = (known after apply) + primary_blob_microsoft_host = (known after apply) + primary_connection_string = (sensitive value) + primary_dfs_endpoint = (known after apply) + primary_dfs_host = (known after apply) + primary_dfs_internet_endpoint = (known after apply) + primary_dfs_internet_host = (known after apply) + primary_dfs_microsoft_endpoint = (known after apply) + primary_dfs_microsoft_host = (known after apply) + primary_file_endpoint = (known after apply) + primary_file_host = (known after apply) + primary_file_internet_endpoint = (known after apply) + primary_file_internet_host = (known after apply) + primary_file_microsoft_endpoint = (known after apply) + primary_file_microsoft_host = (known after apply) + primary_location = (known after apply) + primary_queue_endpoint = (known after apply) + primary_queue_host = (known after apply) + primary_queue_microsoft_endpoint = (known after apply) + primary_queue_microsoft_host = (known after apply) + primary_table_endpoint = (known after apply) + primary_table_host = (known after apply) + primary_table_microsoft_endpoint = (known after apply) + primary_table_microsoft_host = (known after apply) + primary_web_endpoint = (known after apply) + primary_web_host = (known after apply) + primary_web_internet_endpoint = (known after apply) + primary_web_internet_host = (known after apply) + primary_web_microsoft_endpoint = (known after apply) + primary_web_microsoft_host = (known after apply) + public_network_access_enabled = true + queue_encryption_key_type = "Service" + resource_group_name = "DataLab" + secondary_access_key = (sensitive value) + secondary_blob_connection_string = (sensitive value) + secondary_blob_endpoint = (known after apply) + secondary_blob_host = (known after apply) + secondary_blob_internet_endpoint = (known after apply) + secondary_blob_internet_host = (known after apply) + secondary_blob_microsoft_endpoint = (known after apply) + secondary_blob_microsoft_host = (known after apply) + secondary_connection_string = (sensitive value) + secondary_dfs_endpoint = (known after apply) + secondary_dfs_host = (known after apply) + secondary_dfs_internet_endpoint = (known after apply) + secondary_dfs_internet_host = (known after apply) + secondary_dfs_microsoft_endpoint = (known after apply) + secondary_dfs_microsoft_host = (known after apply) + secondary_file_endpoint = (known after apply) + secondary_file_host = (known after apply) + secondary_file_internet_endpoint = (known after apply) + secondary_file_internet_host = (known after apply) + secondary_file_microsoft_endpoint = (known after apply) + secondary_file_microsoft_host = (known after apply) + secondary_location = (known after apply) + secondary_queue_endpoint = (known after apply) + secondary_queue_host = (known after apply) + secondary_queue_microsoft_endpoint = (known after apply) + secondary_queue_microsoft_host = (known after apply) + secondary_table_endpoint = (known after apply) + secondary_table_host = (known after apply) + secondary_table_microsoft_endpoint = (known after apply) + secondary_table_microsoft_host = (known after apply) + secondary_web_endpoint = (known after apply) + secondary_web_host = (known after apply) + secondary_web_internet_endpoint = (known after apply) + secondary_web_internet_host = (known after apply) + secondary_web_microsoft_endpoint = (known after apply) + secondary_web_microsoft_host = (known after apply) + sftp_enabled = false + shared_access_key_enabled = true + table_encryption_key_type = "Service" + tags = { + "environment" = "development" + "source" = "terraform" } } # azurerm_storage_data_lake_gen2_filesystem.fs will be created + resource "azurerm_storage_data_lake_gen2_filesystem" "fs" { + group = (known after apply) + id = (known after apply) + name = "synapse" + owner = (known after apply) + storage_account_id = (known after apply) } # azurerm_synapse_workspace.synapse will be created + resource "azurerm_synapse_workspace" "synapse" { + aad_admin = [ + { + login = "AzureAD Admin" + object_id = "025e0ac7-e256-42b4-a8a3-caf956daea41" + tenant_id = "afcd77d6-fead-497a-8358-965f05bb29cd" }, ] + azuread_authentication_only = false + connectivity_endpoints = (known after apply) + id = (known after apply) + location = "westus" + managed_resource_group_name = (known after apply) + name = "synapse-zoomcamp" + public_network_access_enabled = true + resource_group_name = "DataLab" + sql_aad_admin = (known after apply) + sql_administrator_login = "sqladminuser" + sql_administrator_login_password = (sensitive value) + storage_data_lake_gen2_filesystem_id = (known after apply) + tags = { + "environment" = "development" + "source" = "terraform" } + identity { + principal_id = (known after apply) + tenant_id = (known after apply) + type = "SystemAssigned" } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes azurerm_storage_account.storage: Creating... azurerm_storage_account.storage: Still creating... [10s elapsed] azurerm_storage_account.storage: Still creating... [20s elapsed] azurerm_storage_account.storage: Creation complete after 21s [id=/subscriptions/1e8f3312-e532-4cf1-8ac5-d346e494ad9a/resourceGroups/DataLab/providers/Microsoft.Storage/storageAccounts/storagezoomcamp] azurerm_storage_data_lake_gen2_filesystem.fs: Creating... azurerm_storage_data_lake_gen2_filesystem.fs: Creation complete after 2s [id=https://storagezoomcamp.dfs.core.windows.net/synapse] azurerm_synapse_workspace.synapse: Creating... azurerm_synapse_workspace.synapse: Still creating... [10s elapsed] azurerm_synapse_workspace.synapse: Still creating... [20s elapsed] azurerm_synapse_workspace.synapse: Still creating... [30s elapsed] azurerm_synapse_workspace.synapse: Still creating... [40s elapsed] azurerm_synapse_workspace.synapse: Still creating... [50s elapsed] azurerm_synapse_workspace.synapse: Still creating... [1m0s elapsed] azurerm_synapse_workspace.synapse: Still creating... [1m10s elapsed] azurerm_synapse_workspace.synapse: Still creating... [1m20s elapsed] azurerm_synapse_workspace.synapse: Still creating... [1m30s elapsed] azurerm_synapse_workspace.synapse: Still creating... [1m40s elapsed] azurerm_synapse_workspace.synapse: Still creating... [1m50s elapsed] azurerm_synapse_workspace.synapse: Still creating... [2m0s elapsed] azurerm_synapse_workspace.synapse: Still creating... [2m10s elapsed] azurerm_synapse_workspace.synapse: Still creating... [2m20s elapsed] azurerm_synapse_workspace.synapse: Still creating... [2m30s elapsed] azurerm_synapse_workspace.synapse: Still creating... [2m40s elapsed] azurerm_synapse_workspace.synapse: Still creating... [2m50s elapsed] azurerm_synapse_workspace.synapse: Still creating... [3m0s elapsed] azurerm_synapse_workspace.synapse: Still creating... [3m10s elapsed] azurerm_synapse_workspace.synapse: Still creating... [3m20s elapsed] azurerm_synapse_workspace.synapse: Still creating... [3m30s elapsed] azurerm_synapse_workspace.synapse: Still creating... [3m40s elapsed] azurerm_synapse_workspace.synapse: Still creating... [3m50s elapsed] azurerm_synapse_workspace.synapse: Still creating... [4m0s elapsed] azurerm_synapse_workspace.synapse: Still creating... [4m10s elapsed] azurerm_synapse_workspace.synapse: Still creating... [4m20s elapsed] azurerm_synapse_workspace.synapse: Still creating... [4m30s elapsed] azurerm_synapse_workspace.synapse: Still creating... [4m40s elapsed] azurerm_synapse_workspace.synapse: Creation complete after 4m49s [id=/subscriptions/1e8f3312-e532-4cf1-8ac5-d346e494ad9a/resourceGroups/DataLab/providers/Microsoft.Synapse/workspaces/synapse-zoomcamp] Apply complete! Resources: 3 added, 0 changed, 0 destroyed. 1
Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-412109/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset must be replaced -/+ resource "google_bigquery_dataset" "demo_dataset" { ~ creation_time = 1706128364135 -> (known after apply) ~ dataset_id = "demo_dataset" -> "naomi_dataset" # forces replacement + default_collation = (known after apply) - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null ~ effective_labels = {} -> (known after apply) ~ etag = "acQ02wACSZfk0WZctInsiw==" -> (known after apply) ~ id = "projects/terraform-demo-412109/datasets/demo_dataset" -> (known after apply) ~ is_case_insensitive = false -> (known after apply) - labels = {} -> null ~ last_modified_time = 1706128364135 -> (known after apply) + max_time_travel_hours = (known after apply) ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/terraform-demo-412109/datasets/demo_dataset" -> (known after apply) + storage_billing_model = (known after apply) ~ terraform_labels = {} -> (known after apply) # (3 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "terraform-runner@terraform-demo-412109.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412109-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Destroying... [id=projects/terraform-demo-412109/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Destruction complete after 0s google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412109-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412109/datasets/naomi_dataset] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-pract" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-gcs-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-pract/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-gcs-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/data-engineeing/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-engineering-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 4s [id=data-engineering-terraform-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.data-lake-bucket-H: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-410519/datasets/demo_dataset] google_storage_bucket.data-lake-bucket-H: Creation complete after 2s [id=dtc-de-410519_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "shubhvash_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-411218" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "shubhvash_terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-411218/datasets/shubhvash_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=shubhvash_terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
EPAM+Matvei_Roshchin@XPUZTASW0041 MINGW64 ~/desktop/2_docker_sql/terrademo (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "aqueous-radio-411522" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "aqueous-radio-411522-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/aqueous-radio-411522/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 4s [id=aqueous-radio-411522-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
PS C:\Users\user\data-engineering-zoomcamp\01-docker-terraform\1_terraform_gcp> terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412601" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "terraform-demo-412601-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_homework_01_dataset will be created + resource "google_bigquery_dataset" "de_homework_01_dataset" { + creation_time = (known after apply) + dataset_id = "de_homework_01_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "pristine-sphere-412713" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de_homework_01_bucket will be created + resource "google_storage_bucket" "de_homework_01_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "de_homework_01_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_homework_01_dataset: Creating... google_storage_bucket.de_homework_01_bucket: Creating... google_bigquery_dataset.de_homework_01_dataset: Creation complete after 2s [id=projects/pristine-sphere-412713/datasets/de_homework_01_dataset] google_storage_bucket.de_homework_01_bucket: Creation complete after 4s [id=de_homework_01_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-2024-412415" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-2024-412415-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/zoomcamp-2024-412415/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoomcamp-2024-412415-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412311/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-412311-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
var.credentials Your GCP IAM credentials path Enter a value: var.project Your GCP Project ID Enter a value: Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-193031" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "de_datalake_de-zoomcamp-193031" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/nda-de-zoomcamp/ny_taxi_trips] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=nda-de-zoomcamp-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "justine-own-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=justine-own-bucket] 1
terraform create 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "alien-sol-412801" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "alien-sol-412801-de-camp-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/alien-sol-412801/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=alien-sol-412801-de-camp-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
PS C:\Users\buasc\OneDrive\Desktop\DE-Zoomcamp\week_1\terra-runner> terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "focus-healer-345005" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.tf-demo-bucket will be created + resource "google_storage_bucket" "tf-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "afl_12124_tf-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.tf-demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/focus-healer-345005/datasets/demo_dataset] google_storage_bucket.tf-demo-bucket: Creation complete after 2s [id=afl_12124_tf-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/stunning-maxim-411319/datasets/demo_dataset] google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-demo-terra-bucket-dezoomcamp] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-bucket-demo-1111] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_db_demo_1111" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-412204" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket must be replaced -/+ resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null ~ effective_labels = {} -> (known after apply) - enable_object_retention = false -> null ~ id = "terraform-bucket-demo-1111" -> (known after apply) - labels = {} -> null ~ name = "terraform-bucket-demo-1111" -> "terraform_bucket_demo_1111" # forces replacement ~ project = "zoomcamp-412204" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/terraform-bucket-demo-1111" -> (known after apply) ~ terraform_labels = {} -> (known after apply) ~ uniform_bucket_level_access = false -> (known after apply) ~ url = "gs://terraform-bucket-demo-1111" -> (known after apply) # (3 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Destroying... [id=terraform-bucket-demo-1111] google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Destruction complete after 1s google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/zoomcamp-412204/datasets/terraform_db_demo_1111] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform_bucket_demo_1111] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "true_shore_412221_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "true-shore-412221" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "true-shore-412221-data-lake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=true-shore-412221-data-lake-bucket] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/true-shore-412221/datasets/true_shore_412221_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.yellow_taxi_data will be created + resource "google_bigquery_dataset" "yellow_taxi_data" { + creation_time = (known after apply) + dataset_id = "level-night-412601-yellow_taxi_data" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "level-night-412601" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "level-night-412601-data-lake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.yellow_taxi_data: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=level-night-412601-data-lake-bucket] ╷ │ Error: Error creating Dataset: googleapi: Error 400: Invalid dataset ID "level-night-412601-yellow_taxi_data". Dataset IDs must be alphanumeric (plus underscores) and must be at most 1024 characters long., invalid │ │ with google_bigquery_dataset.yellow_taxi_data, │ on main.tf line 45, in resource "google_bigquery_dataset" "yellow_taxi_data": │ 45: resource "google_bigquery_dataset" "yellow_taxi_data" { google_storage_bucket.data-lake-bucket: Refreshing state... [id=level-night-412601-data-lake-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.yellow_taxi_data will be created + resource "google_bigquery_dataset" "yellow_taxi_data" { + creation_time = (known after apply) + dataset_id = "yellow_taxi_data" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "level-night-412601" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.yellow_taxi_data: Creating... google_bigquery_dataset.yellow_taxi_data: Creation complete after 1s [id=projects/level-night-412601/datasets/yellow_taxi_data] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_dezoomcamp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "lively-citizen-412110" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "lively-citizen-412110-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=lively-citizen-412110-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/lively-citizen-412110/datasets/demo_dataset_dezoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "first_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "phonic-entity-391514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.first-bucket will be created + resource "google_storage_bucket" "first-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "phonic-entity-391514-first-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.first-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 0s [id=projects/phonic-entity-391514/datasets/first_dataset] google_storage_bucket.first-bucket: Creation complete after 2s [id=phonic-entity-391514-first-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/friendly-art-412312/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=ckh-terraform-demo-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "example_dataset" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = true + description = "This is a test description" + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-407611" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-de-course-407611-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/dtc-de-course-435654/datasets/example_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=dtc-de-course-43565-terra-bucket] 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "brilliant-rhino-412514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "brilliant-rhino-412514-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=brilliant-rhino-412514-terra-bucket] 1
On the first Run: google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-dtc-de-bucket-01] ╷ │ Error: Error creating Dataset: googleapi: Error 400: Invalid dataset ID "dtc-de-ds-01". Dataset IDs must be alphanumeric (plus underscores) and must be at most 1024 characters long., invalid │ │ with google_bigquery_dataset.demo_dataset, │ on main.tf line 34, in resource "google_bigquery_dataset" "demo_dataset": │ 34: resource "google_bigquery_dataset" "demo_dataset" On the second Run (after updating the name of the dataset): google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412614/datasets/dtc_demo_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset2" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "quiero_mi_bucket_seba_centurion" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/trim-reach-412604/datasets/demo_dataset2] google_storage_bucket.demo-bucket: Creation complete after 2s [id=quiero_mi_bucket_seba_centurion] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "annular-form-411320" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "annular-form-411320-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/annular-form-411320/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=annular-form-411320-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.ny_taxi_bucket will be created + resource "google_storage_bucket" "ny_taxi_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "ny-taxi-de-2024-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.terraform-bucket-01 will be created + resource "google_storage_bucket" "terraform-bucket-01" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST3" + name = "theta-byte-412611-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.terraform-bucket-01: Creating... google_storage_bucket.terraform-bucket-01: Creation complete after 2s [id=theta-byte-412611-terraform-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. #after adding bigquery node and second run: google_bigquery_dataset.terraform-bigquery-dataset-01: Creating... google_bigquery_dataset.terraform-bigquery-dataset-01: Creation complete after 2s [id=projects/theta-byte-412611/datasets/theta_byte_412611_terraform_bigquery_dataset_01] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.zoomcamp_dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=de-zoomcap-411511-bucket] google_bigquery_dataset.zoomcamp_dataset: Creation complete after 2s [id=projects/de-zoomcap-411511/datasets/zoomcamp_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.zoomcamp_dataset will be created + resource "google_bigquery_dataset" "zoomcamp_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast2" + max_time_travel_hours = (known after apply) + project = "de-laboratory" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.zoomcamp_bucket will be created + resource "google_storage_bucket" "zoomcamp_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "okza_zoomcamp_data" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.zoomcamp_dataset: Creating... google_storage_bucket.zoomcamp_bucket: Creating... google_bigquery_dataset.zoomcamp_dataset: Creation complete after 3s [id=projects/de-laboratory/datasets/zoomcamp_dataset] google_storage_bucket.zoomcamp_bucket: Creation complete after 8s [id=okza_zoomcamp_data] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412101" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412101-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/terraform-demo-412101/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412101-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-411421-terra-bucket] google_bigquery_dataset.demo_dataset: Still creating... [10s elapsed] google_bigquery_dataset.demo_dataset: Creation complete after 12s [id=projects/terraform-demo-411421/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(zoom) ➜ 1_terraform_gcp git:(main) ✗ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezc-brett" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezc-brett-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/dezc-brett/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dezc-brett-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.DataEngineeringVishwanath1525: Destroying... [id=projects/dataengineeringzoomcamp-412720/datasets/DataEngineeringVishwanath1525] google_storage_bucket.DataEngineeringVishwanath2515: Creating... google_bigquery_dataset.DataEngineeringVishwanath1525: Destruction complete after 0s google_bigquery_dataset.DataEngineeringVishwanath1525: Creating... google_bigquery_dataset.DataEngineeringVishwanath1525: Creation complete after 1s [id=projects/dataengineeringzoomcamp-412720/datasets/data_engineering_vishwanath_1525] google_storage_bucket.DataEngineeringVishwanath2515: Creation complete after 1s [id=data_engineering_vishwanath_2515] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "Homework Dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "elemental-leaf-411220" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "elemental-leaf-411223-terraform-buckets" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
(base) afarag@de-zoomcamp-instance:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_zoomcamp_demo_afarag will be created + resource "google_bigquery_dataset" "de_zoomcamp_demo_afarag" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_demo_afarag" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-talks-zoomcamp-afarag" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform_demo_afarag_bucket will be created + resource "google_storage_bucket" "terraform_demo_afarag_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_demo_afarag_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_zoomcamp_demo_afarag: Creating... google_storage_bucket.terraform_demo_afarag_bucket: Creating... google_bigquery_dataset.de_zoomcamp_demo_afarag: Creation complete after 2s [id=projects/data-talks-zoomcamp-afarag/datasets/de_zoomcamp_demo_afarag] google_storage_bucket.terraform_demo_afarag_bucket: Creation complete after 2s [id=terraform_demo_afarag_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) afarag@de-zoomcamp-instance:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ 1
terraform apply -var="project=dezoomcamp-412116" -var="gcs_bucket_name=bucket-for-de-zoomcamp" -auto-approve Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-412116" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_compute_instance.default will be created + resource "google_compute_instance" "default" { + can_ip_forward = false + cpu_platform = (known after apply) + current_status = (known after apply) + deletion_protection = false + effective_labels = (known after apply) + guest_accelerator = (known after apply) + id = (known after apply) + instance_id = (known after apply) + label_fingerprint = (known after apply) + machine_type = "e2-standard-4" + metadata_fingerprint = (known after apply) + min_cpu_platform = (known after apply) + name = "dezoomcamp2024" + project = "dezoomcamp-412116" + self_link = (known after apply) + tags_fingerprint = (known after apply) + terraform_labels = (known after apply) + zone = "us-central1-a" + boot_disk { + auto_delete = true + device_name = "dezoomcamp2024" + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) + mode = "READ_WRITE" + source = (known after apply) + initialize_params { + enable_confidential_compute = false + image = "https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-11-bullseye-v20240110" + labels = (known after apply) + provisioned_iops = (known after apply) + provisioned_throughput = (known after apply) + size = 30 + type = "pd-balanced" } } + network_interface { + internal_ipv6_prefix_length = 0 + ipv6_access_type = (known after apply) + ipv6_address = (known after apply) + name = (known after apply) + network = "https://www.googleapis.com/compute/v1/projects/dezoomcamp-412116/global/networks/default" + network_ip = "10.128.0.2" + queue_count = 0 + stack_type = "IPV4_ONLY" + subnetwork = "https://www.googleapis.com/compute/v1/projects/dezoomcamp-412116/regions/us-central1/subnetworks/default" + subnetwork_project = "dezoomcamp-412116" } + reservation_affinity { + type = "ANY_RESERVATION" } } # google_storage_bucket.test will be created + resource "google_storage_bucket" "test" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "bucket-for-de-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 3 to add, 0 to change, 0 to destroy. google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.test: Creating... google_compute_instance.default: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dezoomcamp-412116/datasets/demo_dataset] google_storage_bucket.test: Creation complete after 2s [id=bucket-for-de-zoomcamp] google_compute_instance.default: Still creating... [10s elapsed] google_compute_instance.default: Creation complete after 13s [id=projects/dezoomcamp-412116/zones/us-central1-a/instances/dezoomcamp2024] Apply complete! Resources: 3 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/crested-axe-412222/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=crested-axe-412222-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Question 7:Creating Resources After updating the main.tf and variable.tf files run: terraform apply Paste the output of this command into the homework submission form. Ans:~/dezoomcamp2024/abyss232002_git/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraformdemo2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraformdemo2024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/terraformdemo2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraformdemo2024-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-412516-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoomcamp-412516-terra-bucket] 1
──(user㉿kali)-[~/terrademo] └─$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "primal-monument-412522" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) S # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "primal-monument-412522-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/primal-monument-412522/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=primal-monument-412522-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. ┌──(user㉿kali)-[~/terrademo] └─$ terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=primal-monument-412522-terra-bucket] google_bigquery_dataset.demo-dataset: Refreshing state... [id=projects/primal-monument-412522/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-eng-zoomcamp2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-eng-zoomcamp2024-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=data-eng-zoomcamp2024-terraform-bucket] google_bigquery_dataset.demo-dataset: Creation complete after 4s [id=projects/data-eng-zoomcamp2024/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST1" + max_time_travel_hours = (known after apply) + project = "nifty-motif-412910" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "nifty-motif-412910-de-zoomcamp-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/nifty-motif-412910/datasets/de_zoomcamp_dataset] google_storage_bucket.demo-bucket: Creation complete after 4s [id=nifty-motif-412910-de-zoomcamp-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
.. 1
Terraform will perform the following actions: # docker_container.pg-admin will be updated in-place # (imported from "6a57dfbf56d79dc03af9faabac8258e9fbd0cb88d842fac9c65b1bf63387a481") ~ resource "docker_container" "pg-admin" { + attach = false command = [] + container_read_refresh_timeout_milliseconds = 15000 cpu_shares = 0 dns = [] dns_opts = [] dns_search = [] entrypoint = [ "/entrypoint.sh", ] group_add = [] hostname = "6a57dfbf56d7" id = "6a57dfbf56d79dc03af9faabac8258e9fbd0cb88d842fac9c65b1bf63387a481" image = "sha256:76a6f90958250e4e99d4e4973a7f455aaf6abc5ae222b4cc8c83bb2fb7088126" init = false ipc_mode = "private" log_driver = "json-file" log_opts = {} + logs = false max_retry_count = 0 memory = 0 memory_swap = 0 + must_run = true name = "week_1-pgadmin-1" network_data = [ { gateway = "172.21.0.1" global_ipv6_address = "" global_ipv6_prefix_length = 0 ip_address = "172.21.0.2" ip_prefix_length = 16 ipv6_gateway = "" mac_address = "02:42:ac:15:00:02" network_name = "week_1_default" }, ] network_mode = "week_1_default" privileged = false publish_all_ports = false read_only = false + remove_volumes = true + restart = "no" rm = false runtime = "runc" security_opts = [] shm_size = 64 + start = true stdin_open = false stop_timeout = 0 storage_opts = {} sysctls = {} tmpfs = {} tty = false user = "pgadmin" + wait = false + wait_timeout = 60 working_dir = "/pgadmin4" ports { external = 8080 internal = 80 ip = "0.0.0.0" protocol = "tcp" } } # docker_container.pg-database will be updated in-place # (imported from "776ce6a11b25b69a558a3d27cdaaca9633fe4d3a7b52c7894cbb21f233dfbb0c") ~ resource "docker_container" "pg-database" { + attach = false command = [ "postgres", ] + container_read_refresh_timeout_milliseconds = 15000 cpu_shares = 0 dns = [] dns_opts = [] dns_search = [] entrypoint = [ "docker-entrypoint.sh", ] group_add = [] hostname = "776ce6a11b25" id = "776ce6a11b25b69a558a3d27cdaaca9633fe4d3a7b52c7894cbb21f233dfbb0c" image = "sha256:0b8b9a62716c0dd10518c57099bb5036e1981ff67e0ac4be80021ffa63aa4143" init = false ipc_mode = "private" log_driver = "json-file" log_opts = {} + logs = false max_retry_count = 0 memory = 0 memory_swap = 0 + must_run = true name = "week_1-pgdatabase-1" network_data = [ { gateway = "172.21.0.1" global_ipv6_address = "" global_ipv6_prefix_length = 0 ip_address = "172.21.0.3" ip_prefix_length = 16 ipv6_gateway = "" mac_address = "02:42:ac:15:00:03" network_name = "week_1_default" }, ] network_mode = "week_1_default" privileged = false publish_all_ports = false read_only = false + remove_volumes = true + restart = "no" rm = false runtime = "runc" security_opts = [] shm_size = 64 + start = true stdin_open = false stop_signal = "SIGINT" stop_timeout = 0 storage_opts = {} sysctls = {} tmpfs = {} tty = false + wait = false + wait_timeout = 60 ports { external = 5432 internal = 5432 ip = "0.0.0.0" protocol = "tcp" } } # docker_network.wk1_network will be imported resource "docker_network" "wk1_network" { driver = "bridge" id = "43894736a3978fc627cc67c0fc0aeb3457e52f59ecb1569950083b5cc3f227c8" ingress = false internal = false ipam_driver = "default" ipam_options = {} ipv6 = false name = "week_1_default" options = {} scope = "local" ipam_config { aux_address = {} gateway = "172.21.0.1" subnet = "172.21.0.0/16" } labels { label = "com.docker.compose.network" value = "default" } labels { label = "com.docker.compose.project" value = "week_1" } labels { label = "com.docker.compose.version" value = "2.23.3" } } Plan: 3 to import, 0 to add, 2 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "savvy-folio-412500" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "savvy-folio-412500-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/datatalk-de/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... ╷ │ Error: googleapi: Error 409: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again., conflict │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 17, in resource "google_storage_bucket" "demo-bucket": │ 17: resource "google_storage_bucket" "demo-bucket" { │ 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "strong-arbor-411111" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "demo-bucket-terraform-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
```bash terraform apply ``` ```bash Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "amazing-modem-411901" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.bucket will be created + resource "google_storage_bucket" "bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "amazing-modem-411901-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/amazing-modem-411901/datasets/demo_dataset] google_storage_bucket.bucket: Creation complete after 2s [id=amazing-modem-411901-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. ``` 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_dtc-de-396419] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-396419/datasets/trips_data_all] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "bhoomikazoomcamp2024" + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "bhoomikazoomcamp2024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "helical-casing-411709" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "helical-casing-411709-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "pelagic-bonbon-387815" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_bucket_demo_20240121" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/pelagic-bonbon-387815/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=terraform_bucket_demo_20240121] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "semiotic-pager-411512" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.my-demo-bucket will be created + resource "google_storage_bucket" "my-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "data-engineering-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.my-demo-bucket: Creating... google_storage_bucket.my-demo-bucket: Creation complete after 1s [id=data-engineering-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/semiotic-pager-411512/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Unfortunatly i have not access to google cloud yet 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-project-412717-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-project-412717-terra-bucket] 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "project1-366512" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/project1-366512/datasets/demo_dataset] ╷ │ Error: googleapi: Error 403: The billing account for the owning project is disabled in state absent, accountDisabled │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 17, in resource "google_storage_bucket" "demo-bucket": │ 17: resource "google_storage_bucket" "demo-bucket" { │ ╵ 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.zoomcamp2024-dataset will be created + resource "google_bigquery_dataset" "zoomcamp2024-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_zoomcamp2024" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zoomcamp2024-412915" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.zoomcamp2024-bucket will be created + resource "google_storage_bucket" "zoomcamp2024-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "demo_bucket_zoomcamp2024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 365 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 10 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
❯ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "groovy-ace-412002" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.first-terra-bucket will be created + resource "google_storage_bucket" "first-terra-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "first-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # yandex_storage_bucket.b will be created + resource "yandex_storage_bucket" "b" { + acl = "private" + bucket = "my-policy-bucket-20240121" + bucket_domain_name = (known after apply) + default_storage_class = (known after apply) + folder_id = (known after apply) + force_destroy = false + id = (known after apply) + max_size = 1048576 + tags = { + "other_key" = "other_value" + "test_key" = "test_value" } + website_domain = (known after apply) + website_endpoint = (known after apply) + logging { + target_bucket = (known after apply) + target_prefix = "log/" } } # yandex_storage_bucket.log_bucket will be created + resource "yandex_storage_bucket" "log_bucket" { + bucket = "my-tf-log-bucket-20240121" + bucket_domain_name = (known after apply) + default_storage_class = (known after apply) + folder_id = (known after apply) + force_destroy = false + id = (known after apply) + website_domain = (known after apply) + website_endpoint = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
# google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "kingsway_zoomcamp_24_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "data-engineering-zoomcamp-24" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "kingsway-zoomcamp-24-data-lake" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 5s [id=kingsway-zoomcamp-24-data-lake] google_bigquery_dataset.demo-dataset: Creation complete after 5s [id=projects/data-engineering-zoomcamp-24/datasets/kingsway_zoomcamp_24_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
var.credentials My Credentials Enter a value: ../de-zoomcamp-2024-1be51af3beb5.json Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "art_bigq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west2" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST2" + name = "art-2024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "original-fort-408720" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-zoomcamp-bucket-bucket12414 will be created + resource "google_storage_bucket" "de-zoomcamp-bucket-bucket12414" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-bucket-test1232141" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "storied-sound-142110" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "storied-sound-142110-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/storied-sound-142110/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=storied-sound-142110-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/precise-rite-412708/datasets/demo_dateset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=precise-rite-412708-terra-bucket] 1
google_bigquery_dataset.dataset: Refreshing state... [id=projects/corded-streamer-412604/datasets/my_bq_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-EAST1" + name = "my_unique_bucket-a-good-day" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=my_unique_bucket-a-good-day] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terra_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-course-412619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-course-412619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-course-412619/datasets/terra_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=de-course-412619-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
v0@v0s-MacBook-Air terraform_basic % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "test1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "t-wsite" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc1" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = false } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/t-wsite/datasets/test1] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. v0@v0s-MacBook-Air terraform_basic % 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-zoomcamp-411717-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-411717/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=myprojectid-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_taxi_dataset will be created + resource "google_bigquery_dataset" "ny_taxi_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "myprojectid" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.ny_taxi_dataset: Creating... google_bigquery_dataset.ny_taxi_dataset: Creation complete after 2s [id=projects/myprojectid/datasets/ny_taxi_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
josh@DESKTOP-9VCHRLR:~/de_$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "sublime-vial-411310" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "sublime-vial-411310-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=sublime-vial-411310-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/sublime-vial-411310/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny-rides-dataset will be created + resource "google_bigquery_dataset" "ny-rides-dataset" { + creation_time = (known after apply) + dataset_id = "ny_rides_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "SOUTHAMERICA-WEST1" + max_time_travel_hours = (known after apply) + project = "ny-rides-gperezcenteno-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.ny-rides-bucket will be created + resource "google_storage_bucket" "ny-rides-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "SOUTHAMERICA-WEST1" + name = "ny-rides-gperezcenteno-411315-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.ny-rides-dataset: Creating... google_storage_bucket.ny-rides-bucket: Creating... google_storage_bucket.ny-rides-bucket: Creation complete after 2s [id=ny-rides-gperezcenteno-411315-terra-bucket] google_bigquery_dataset.ny-rides-dataset: Creation complete after 2s [id=projects/ny-rides-gperezcenteno-411315/datasets/ny_rides_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) anton@dze-machine:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "warm-alliance-411609" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "demo_dataset-warm-alliance-411609-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/warm-alliance-411609/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo_dataset-warm-alliance-411609-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/verdant-catcher-397416/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=de_data_lake_2024_verdant-catcher-397416] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
aform_gcp/terraform/terraform_with_variables$ terraform apply -var="project=polar-automa ta-411517" Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "polar_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "polar-automata-411517" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "polar-automata-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/polar-automata-411517/datasets/polar_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=polar-automata-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.week1-demo-dataset will be created + resource "google_bigquery_dataset" "week1-demo-dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_week1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411515" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.week1-demo-bucket will be created + resource "google_storage_bucket" "week1-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "zoomcamp_week1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "golden-union-392713" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-marli" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/golden-union-392713/datasets/demo_dataset]google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-marli] 1
Can't install terraform, it is not available in my region 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-411518/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-de-zoomcamp-411518] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412211" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412211" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "latihan_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-tf-411908" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-tf-411908_gengsu_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-tf-411908/datasets/latihan_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-tf-411908_gengsu_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Could not do it 1
```shell terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "shamb0_zcamp_2024_hcl_demo_v1_bq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "shamb0-zoomcamp-lab-01" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "shamb0_zcamp_2024_hcl_demo_v1_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/shamb0-zoomcamp-lab-01/datasets/shamb0_zcamp_2024_hcl_demo_v1_bq_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=shamb0_zcamp_2024_hcl_demo_v1_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. ``` 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_dataset will be created + resource "google_bigquery_dataset" "de_dataset" { + creation_time = (known after apply) + dataset_id = "de_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "me-west1" + max_time_travel_hours = (known after apply) + project = "ny-rides-sal" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-bucket will be created + resource "google_storage_bucket" "de-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ME-WEST1" + name = "ny-rides-sal-de-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_dataset: Creating... google_storage_bucket.de-bucket: Creating... google_storage_bucket.de-bucket: Creation complete after 1s [id=ny-rides-sal-de-bucket] google_bigquery_dataset.de_dataset: Creation complete after 2s [id=projects/ny-rides-sal/datasets/de_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ornate-acronym-412715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ornate-acronym-412715-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/ornate-acronym-412715/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ornate-acronym-412715-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-dez-412015" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-dez-412015-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-dez-412015/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-dez-412015-bucket] 1
Terraform 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/terraform-demo-412608/datasets/module1_assignment_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=module1_assignment_bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "ny_rides_max_170124_ds" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "EU" + project = "ny-rides-max-170124" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EU" + name = "ny-rides-max-170124-db" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/ny-rides-max-170124/datasets/ny_rides_max_170124_ds] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=ny-rides-max-170124-db] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "bq-dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-de-zoomcamp-2024-data-lake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-zoomcamp-2024/datasets/bq_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc-de-zoomcamp-2024-data-lake-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: 1
google_storage_bucket.demo-bucket: Refreshing state... [id=demo_de_zoomcamp] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/de-zoomcamp-412007/datasets/demo_de_zoomcamp] Note: Objects have changed outside of Terraform Terraform detected the following changes made outside of Terraform since the last "terraform apply": # google_bigquery_dataset.demo_dataset has been deleted - resource "google_bigquery_dataset" "demo_dataset" { - creation_time = 1706407859042 -> null - dataset_id = "demo_de_zoomcamp" -> null - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null - delete_contents_on_destroy = false -> null - effective_labels = {} -> null - etag = "/wETU9Hl2HHVXN6dt/5HAA==" -> null - id = "projects/de-zoomcamp-412007/datasets/demo_de_zoomcamp" -> null - is_case_insensitive = false -> null - last_modified_time = 1706407859042 -> null - location = "US" -> null - project = "de-zoomcamp-412007" -> null - self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/de-zoomcamp-412007/datasets/demo_de_zoomcamp" -> null - terraform_labels = {} -> null - access { - role = "OWNER" -> null - user_by_email = "dezoomcamp@de-zoomcamp-412007.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.demo-bucket has been deleted - resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null - effective_labels = {} -> null - enable_object_retention = false -> null - force_destroy = true -> null - id = "demo_de_zoomcamp" -> null - location = "US" -> null - name = "demo_de_zoomcamp" -> null - project = "de-zoomcamp-412007" -> null - public_access_prevention = "inherited" -> null - requester_pays = false -> null - self_link = "https://www.googleapis.com/storage/v1/b/demo_de_zoomcamp" -> null - storage_class = "STANDARD" -> null - terraform_labels = {} -> null - uniform_bucket_level_access = false -> null - url = "gs://demo_de_zoomcamp" -> null - lifecycle_rule { - action { - type = "AbortIncompleteMultipartUpload" -> null } - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } } } Unless you have made equivalent changes to your configuration, or ignored the relevant attributes using ignore_changes, the following plan may include actions to undo or respond to these changes. ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_de_zoomcamp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412007" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo_de_zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412007/datasets/demo_de_zoomcamp] google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo_de_zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-demo-412306-terra-bucket] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-412306/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset must be replaced -/+ resource "google_bigquery_dataset" "demo_dataset" { ~ creation_time = 1706339675332 -> (known after apply) ~ dataset_id = "demo_dataset" -> "var.bq_dataset_name" # forces replacement + default_collation = (known after apply) - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null ~ effective_labels = {} -> (known after apply) ~ etag = "dBb+Nkf0taeAXI4j0z4/9w==" -> (known after apply) ~ id = "projects/terraform-demo-412306/datasets/demo_dataset" -> (known after apply) ~ is_case_insensitive = false -> (known after apply) - labels = {} -> null ~ last_modified_time = 1706339675332 -> (known after apply) + max_time_travel_hours = (known after apply) ~ project = "terraform-demo-412306" -> "var.project" ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/terraform-demo-412306/datasets/demo_dataset" -> (known after apply) + storage_billing_model = (known after apply) ~ terraform_labels = {} -> (known after apply) # (2 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "terrafrom-runner@terraform-demo-412306.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } Plan: 1 to add, 0 to change, 1 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "nice-compass-411715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "nice-compass-411715-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=nice-compass-411715-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/nice-compass-411715/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: create Terraform will perform the following actions: google_bigquery_dataset.demo_dataset will be created resource "google_bigquery_dataset" "demo_dataset" { creation_time = (known after apply) dataset_id = "ny_taxi" default_collation = (known after apply) delete_contents_on_destroy = false effective_labels = (known after apply) etag = (known after apply) id = (known after apply) is_case_insensitive = (known after apply) last_modified_time = (known after apply) location = "us-central1" max_time_travel_hours = (known after apply) project = "argon-tuner-410118" self_link = (known after apply) storage_billing_model = (known after apply) terraform_labels = (known after apply) } google_storage_bucket.demo-bucket will be created resource "google_storage_bucket" "demo-bucket" { effective_labels = (known after apply) force_destroy = true id = (known after apply) location = "US-CENTRAL1" name = "terraform-demo-terra-bucket-argon-tuner-410118" project = (known after apply) public_access_prevention = (known after apply) self_link = (known after apply) storage_class = "STANDARD" terraform_labels = (known after apply) uniform_bucket_level_access = (known after apply) url = (known after apply) lifecycle_rule { action { type = "AbortIncompleteMultipartUpload" } condition { age = 1 matches_prefix = [] matches_storage_class = [] matches_suffix = [] with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/argon-tuner-410118/datasets/ny_taxi] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-argon-tuner-410118] 1
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/dez2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dez2024-demo-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast2" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411405" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "terraform-demo-411405-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-411405-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/terraform-demo-411405/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Sorry I have not done this one 1
google_bigquery_dataset.dataset: Refreshing state... [id=projects/data-engineer-zoomcamp-403708/datasets/terraform_testing] google_storage_bucket.data-lake-bucket: Refreshing state... [id=data-engineer-zoomcamp-403708-demo-bucket] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.bq-dataset will be created + resource "google_bigquery_dataset" "bq-dataset" { + creation_time = (known after apply) + dataset_id = "bq_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "learning-terraform-412615" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.gcs-bucket will be created + resource "google_storage_bucket" "gcs-bucket" { + effective_labels = (known after apply) + force_destroy = false + id = (known after apply) + location = "US" + name = "learning-terraform-412615" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. 1
terraform apply -var="project_name=mydezoomcamp-project" Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.tlii-dataset will be created + resource "google_bigquery_dataset" "tlii-dataset" { + creation_time = (known after apply) + dataset_id = "tlii_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "mydezoomcamp-project" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.tlii-bucket will be created + resource "google_storage_bucket" "tlii-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "mydezoomcamp-project-tlii-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.tlii-dataset: Creating... google_storage_bucket.tlii-bucket: Creating... google_bigquery_dataset.tlii-dataset: Creation complete after 1s [id=projects/mydezoomcamp-project/datasets/tlii_dataset] google_storage_bucket.tlii-bucket: Creation complete after 2s [id=mydezoomcamp-project-tlii-bucket] 1
unfortunately, i didn't have time to run through this as well 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-406412" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-buckettt" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-406412/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-buckettt] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_terraform_demo_411500" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411500" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "my_bucket-terraform-demo-411500" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-411500/datasets/demo_dataset_terraform_demo_411500] google_storage_bucket.demo-bucket: Creation complete after 2s [id=my_bucket-terraform-demo-411500] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "perfect-coil-411417" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.zoomcamp-bucket will be created + resource "google_storage_bucket" "zoomcamp-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-bucket7635" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.zoomcamp-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/perfect-coil-411417/datasets/zoomcamp] google_storage_bucket.zoomcamp-bucket: Creation complete after 2s [id=zoomcamp-bucket7635] 1
Initializing the backend... Initializing provider plugins... - Finding hashicorp/google versions matching "5.6.0"... - Installing hashicorp/google v5.6.0... - Installed hashicorp/google v5.6.0 (signed by HashiCorp) Terraform has created a lock file .terraform.lock.hcl to record the provider selections it made above. Include this file in your version control repository so that Terraform can guarantee to make the same selections by default when you run "terraform init" in the future. Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.zoomcamp-dataset will be created + resource "google_bigquery_dataset" "zoomcamp-dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp-dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "zoomcamp-project-412605" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.zoomcamp-storage-bucket will be created + resource "google_storage_bucket" "zoomcamp-storage-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "zoomcamp-project-412605-storage-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "enhanced-bonito-411221-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=enhanced-bonito-411221-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
(base) sanyashireen@de-zoomcamp:~/data-engineering-zoomcamp/week_1_basics_n_setup/1_terraform_gcp/terraform$ terraform apply var.project Your GCP Project ID Enter a value: skilf-bliss-****** Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + project = "skil----bliss-******" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "dtc_data_lake_skil----bliss-******" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_skil----bliss-******] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/skil----bliss-******/datasets/trips_data_all] 1
$ terraform apply google_bigquery_dataset.dataset: Refreshing state... [id=projects/data-eng-363618/datasets/trips_data_all] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.data-lake will be created + resource "google_storage_bucket" "data-lake" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de_data_lake_unique12345" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.data-lake: Creating... google_storage_bucket.data-lake: Creation complete after 2s [id=de_data_lake_unique12345] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "homework_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp2024-411321" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-homework-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/zoomcamp2024-411321/datasets/homework_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-homework-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/shumd-404322/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=shumd-404322-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412112" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412112-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_dataset will be created + resource "google_bigquery_dataset" "de_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "coral-velocity-411912" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-bucket will be created + resource "google_storage_bucket" "de-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "coral-velocity-411912-de-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_dataset: Creating... google_storage_bucket.de-bucket: Creating... google_bigquery_dataset.de_dataset: Creation complete after 2s [id=projects/coral-velocity-411912/datasets/de_zoomcamp] google_storage_bucket.de-bucket: Creation complete after 2s [id=coral-velocity-411912-de-zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "fmz_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "versatile-age-411912" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "fmz-data-engineering-project-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/versatile-age-411912/datasets/fmz_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=fmz-data-engineering-project-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.ny_taxi_dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=de-zoomcamp-412619-ny_txi_data] google_bigquery_dataset.ny_taxi_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412619/datasets/ny_taxi] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "fahmi-labs" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
erraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "sadiat-terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
(de-zc24) ➜ terraform-demo git:(master) ✗ terraform apply -var="project=terraform-demo-412915" Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412915" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412915-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412915/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412915-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "celestial-baton-291921" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "celestial-baton-291921-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/celestial-baton-291921/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=celestial-baton-291921-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
➜ terraform_demo git:(master) ✗ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "concise-quarter-411516" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-20240115-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/concise-quarter-411516/datasets/demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 1s [id=terraform-demo-20240115-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "linen_source_411501_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "linen-source-411501" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "linen_source_411501_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 0s [id=linen_source_411501_bucket] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/linen-source-411501/datasets/linen_source_411501_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "bq_data_setname" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "forward-ace-411913" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.first_bucket will be created + resource "google_storage_bucket" "first_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "forward-ace-411913-first-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.first_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/forward-ace-411913/datasets/bq_data_setname] google_storage_bucket.first_bucket: Creation complete after 0s [id=forward-ace-411913-first-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes module.node_pool.random_id.entropy: Creating... module.node_pool.random_id.entropy: Creation complete after 0s [id=dcY] module.network.google_compute_network.network: Creating... 1
google_storage_bucket.bucket: Creating... google_storage_bucket.bucket: Creation complete after 2s [id=<green_taxi_data>] google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/<My_Projects_ID>/datasets/<taxi_data>] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ddxai-406504/datasets/terraform_zoomcamp_bqdataset_jupiter] google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform_zoomcamp_bucket_jupiter] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dataengineer2024/datasets/dataset_try] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dataengineer2024bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
fTerraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "spry-bus-412003" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "spry-bus-412003-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
I couldn't finish it in time 1
google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/imdb-project-411407/datasets/trips_data_all] google_storage_bucket.static-site: Creation complete after 1s [id=dtc_data_lake_imdb-project-411407] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "w01_demo" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "northamerica-northeast1" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411320" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "NORTHAMERICA-NORTHEAST1" + name = "dtc-de-course-411320-w01_demo" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-411320-w01_demo] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-411320/datasets/w01_demo] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/vigilant-sunup-413114/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=vigilant-sunup-413114-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "IaC_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "hs-gcp-02-ee90416d8e7a" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "iac-hs-dez-bucket-2024" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/hs-gcp-02-ee90416d8e7a/datasets/IaC_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=iac-hs-dez-bucket-2024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Doesn't have GCP account 1
Terraform Apply 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412613" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412613-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/dtc-de-course-412613/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412613-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
https://github.com/ 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/taha2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=taha2024-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.rh_dataset: Refreshing state... [id=projects/de-zoomcamp-2024-409204/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.rh_dataset must be replaced -/+ resource "google_bigquery_dataset" "rh_dataset" { ~ creation_time = 1705724971530 -> (known after apply) ~ dataset_id = "demo_dataset" -> "rh_dataset" # forces replacement + default_collation = (known after apply) - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null ~ effective_labels = {} -> (known after apply) ~ etag = "sYT0j2XBnPVR8kyiv7t9BQ==" -> (known after apply) ~ id = "projects/de-zoomcamp-2024-409204/datasets/demo_dataset" -> (known after apply) ~ is_case_insensitive = false -> (known after apply) - labels = {} -> null ~ last_modified_time = 1705724971530 -> (known after apply) + max_time_travel_hours = (known after apply) ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/de-zoomcamp-2024-409204/datasets/demo_dataset" -> (known after apply) + storage_billing_model = (known after apply) ~ terraform_labels = {} -> (known after apply) # (3 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "terraform-runner@de-zoomcamp-2024-409204.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.rh-bucket will be created + resource "google_storage_bucket" "rh-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-rh-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.rh_dataset: Destroying... [id=projects/de-zoomcamp-2024-409204/datasets/demo_dataset] google_storage_bucket.rh-bucket: Creating... google_bigquery_dataset.rh_dataset: Destruction complete after 0s google_bigquery_dataset.rh_dataset: Creating... google_bigquery_dataset.rh_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-409204/datasets/rh_dataset] google_storage_bucket.rh-bucket: Creation complete after 1s [id=terraform-rh-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.terraform-dataset: Creating... google_storage_bucket.terraform-bucket: Creating... google_bigquery_dataset.terraform-dataset: Creation complete after 1s [id=projects/terraform-demo-412111/datasets/terraform_demo_412111_terr_dataset] google_storage_bucket.terraform-bucket: Creation complete after 1s [id=terraform-demo-412111_terr-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/snappy-vim-410816/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dsnappy-vim-410816-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
https://github.com/Ajied21/Data-Engineering-Zoomcamp-2024/tree/Github/01_docker_terraform/Terraform 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_demo_dataset will be created + resource "google_bigquery_dataset" "de_demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_course_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-course-2024-412715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-course-2024-412715-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dataset_bq" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "EU" + project = "clever-oasis-411318" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EU" + name = "clever-oasis-411318-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=clever-oasis-411318-terra-bucket] google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/clever-oasis-411318/datasets/dataset_bq] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west4" + max_time_travel_hours = (known after apply) + project = "august-cirrus-399913" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST4" + name = "dez_data_lake_august-cirrus-399913" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/august-cirrus-399913/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=dez_data_lake_august-cirrus-399913] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.my_dataset: Creating... google_storage_bucket.my_bucket: Creating... google_bigquery_dataset.my_dataset: Creation complete after 1s [id=projects/decoded-totem-406404/datasets/my_dataset] google_storage_bucket.my_bucket: Creation complete after 1s [id=camilo-zoomcamp-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/airy-cortex-409620/datasets/airy_cortex_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=airy_cortex_demo_terra_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/elaborate-tube-412620/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "elaborate-tube-412620-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=elaborate-tube-412620-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
@FaisalQ07 ➜ .../data-engineering-zoomcamp/week_1_basics_n_setup/1_terraform_gcp/terraform_with_variables (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_rides_faisal_terraform_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-faisal" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ny-rides-faisal-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/ny-rides-faisal/datasets/ny_rides_faisal_terraform_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ny-rides-faisal-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. @FaisalQ07 ➜ .../data-engineering-zoomcamp/week_1_basics_n_setup/1_terraform_gcp/terraform_with_variables (main) $ 1
(base) olga@de-zoomcamp:~/de-zoomcamp/01-docker-terraform/terraform$ terraform apply No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_homework_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-homework-412417" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "mariohd-terraform-homework-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/terraform-homework-412417/datasets/terraform_homework_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=mariohd-terraform-homework-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
test 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_test_dataset_2" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "peppy-citron-411704" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de_zoomcamp_test_bucket_2" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/peppy-citron-411704/datasets/de_zoomcamp_test_dataset_2] google_storage_bucket.demo-bucket: Creation complete after 2s [id=de_zoomcamp_test_bucket_2] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412321-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.example_dataset will be created + resource "google_bigquery_dataset" "example_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp2024-******" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp2024-******-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.example_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.example_dataset: Creation complete after 3s google_storage_bucket.demo-bucket: Creation complete after 6s Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
didn't do it 1
(base) netzah@testzc:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "speedy-bonsai-410109" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
var.project Your GCP Project ID Enter a value: solid-mantra-412218 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "northamerica-northeast1" + project = "solid-mantra-412218" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "NORTHAMERICA-NORTHEAST1" + name = "dtc_data_lake_solid-mantra-412218" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/solid-mantra-412218/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_solid-mantra-412218] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform { required_providers { google = { source = "hashicorp/google" version = "4.51.0" } } } provider "google" { credentials = file(var.credentials) project = var.project_id region = var.region zone = var.zone } resource "google_storage_bucket" "terraform-bucket" { name = var.gcs_bucket_name location = var.location force_destroy = true storage_class = var.gcs_storage_class lifecycle_rule { condition { age = 1 } action { type = "AbortIncompleteMultipartUpload" } } } resource "google_bigquery_dataset" "terraform-dataset" { dataset_id = var.bq_dataset_name description = "This dataset is tested and created by terraform" } 1
(base) mikaelnystrom@de-zoomcamp:~/DE-zoomcamp/01-docker-terraform/terrademo$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411615" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terra-bucket-411615" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.auto-expire: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-411615/datasets/demo_dataset] google_storage_bucket.auto-expire: Creation complete after 2s [id=terra-bucket-411615] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_taxi_dataset will be created + resource "google_bigquery_dataset" "ny_taxi_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "southamerica-east1" + max_time_travel_hours = (known after apply) + project = "dezc-412217" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_compute_instance.vm_instance will be created + resource "google_compute_instance" "vm_instance" { + can_ip_forward = false + cpu_platform = (known after apply) + current_status = (known after apply) + deletion_protection = false + effective_labels = (known after apply) + guest_accelerator = (known after apply) + id = (known after apply) + instance_id = (known after apply) + label_fingerprint = (known after apply) + machine_type = "e2-standard-4" + metadata = { + "ssh-keys" = XXXXX} + metadata_fingerprint = (known after apply) + min_cpu_platform = (known after apply) + name = "dezc-vm" + project = "dezc-412217" + self_link = (known after apply) + tags_fingerprint = (known after apply) + terraform_labels = (known after apply) + zone = "southamerica-east1-a" + boot_disk { + auto_delete = true + device_name = (known after apply) + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) + mode = "READ_WRITE" + source = (known after apply) + initialize_params { + image = "ubuntu-os-cloud/ubuntu-2004-lts" + labels = (known after apply) + size = 30 + type = (known after apply) } } + network_interface { + internal_ipv6_prefix_length = (known after apply) + ipv6_access_type = (known after apply) + ipv6_address = (known after apply) + name = (known after apply) + network = "default" + network_ip = (known after apply) + stack_type = (known after apply) + subnetwork = (known after apply) + subnetwork_project = (known after apply) + access_config { + nat_ip = (known after apply) + network_tier = (known after apply) } } } # google_storage_bucket.gcp-bucket will be created + resource "google_storage_bucket" "gcp-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "SOUTHAMERICA-EAST1" + name = "dezc-412217-gcp-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "taxi-rides-ny-409108" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "taxi-rides-ny-409108-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/taxi-rides-ny-409108/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=taxi-rides-ny-409108-terra-bucket] 1
Victor Marinheiro@VictorLaptop MINGW64 /c/Users/vm_data_eng/terrademo $ /c/Users/vm_data_eng/terrademo/terraform.exe apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "rare-drummer-412018" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "rare-drummer-412018-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/rare-drummer-412018/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=rare-drummer-412018-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "homework01_bqdataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "projeto-estudos-356715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "homework01_gcpbucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de-zoomcamp_demo_dataset_1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-412222" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-2024-412222-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dataset_demo" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "This is a test description" + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "sanguine-fusion-410917" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "auto-expiring-bucket-sanguine-fusion-410917" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.auto-expire: Creating... google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/sanguine-fusion-410917/datasets/dataset_demo] google_storage_bucket.auto-expire: Creation complete after 3s [id=auto-expiring-bucket-sanguine-fusion-410917] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) user@LM15UQ05N dataCamp % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_terraform_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412717" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412717/datasets/demo_terraform_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
➜ 01-docker-terraform git:(module-01) ✗ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "tidy-daylight-411205" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "tidy-daylight-411205-hmwk01-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/tidy-daylight-411205/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=tidy-daylight-411205-hmwk01-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + description = "This is a description of the demo dataset." + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "demo" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "data-engineering-410115" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.my_bucket_name will be created + resource "google_storage_bucket" "my_bucket_name" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "data-engineering-410115-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "My-ProjectSiva123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/My-ProjectSiva123/datasets/demo_dataset] 1
google_storage_bucket.zoomcamp-bucket: Refreshing state... [id=dezoomcamp-bucket88] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.zoomcamp_dataset will be created + resource "google_bigquery_dataset" "zoomcamp_dataset" { + creation_time = (known after apply) + dataset_id = "dezoomcamp98" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-skn" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.zoomcamp_dataset: Creating... google_bigquery_dataset.zoomcamp_dataset: Creation complete after 2s [id=projects/de-zoomcamp-skn/datasets/dezoomcamp98] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
{ "version": 4, "terraform_version": "1.0.0", "serial": 1, "lineage": "d79eacc7-51eb-2bf4-5ec6-cf8dca57348d", "outputs": { "environment_information": { "value": { "bar": "value2", "foo": "value1" }, "type": [ "object", { "bar": "string", "foo": "string" } ] } }, "resources": [] } 1
# google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412223" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412223-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "zoomcamp-2024-dw" { + creation_time = (known after apply) + dataset_id = "zoomcamp-2024-dw" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "Yogi-Zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "zoomcamp-2024-lake" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "Yogi-Zoomcamp-2024" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=Yogi-Zoomcamp-2024] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/Yogi-Zoomcamp-2024/datasets/Zoomcamp-2024-dw] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp2024-412718-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoomcamp2024-412718-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST9" + name = "terraform-personal-44977-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 6s [id=terraform-personal-44977-terra-bucket 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=oasis-terra-dezoomm] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_redshift_cluster.first_redshift_cluster will be created + resource "aws_redshift_cluster" "first_redshift_cluster" { + allow_version_upgrade = true + apply_immediately = false + aqua_configuration_status = (known after apply) + arn = (known after apply) + automated_snapshot_retention_period = 1 + availability_zone = (known after apply) + cluster_identifier = "tf-faran-redshift-cluster" + cluster_namespace_arn = (known after apply) + cluster_nodes = (known after apply) + cluster_parameter_group_name = (known after apply) + cluster_public_key = (known after apply) + cluster_revision_number = (known after apply) + cluster_subnet_group_name = (known after apply) + cluster_type = "single-node" + cluster_version = "1.0" + database_name = "faran_first_db" + default_iam_role_arn = (known after apply) + dns_name = (known after apply) + encrypted = false + endpoint = (known after apply) + enhanced_vpc_routing = (known after apply) + final_snapshot_identifier = "farabutt" + iam_roles = (known after apply) + id = (known after apply) + kms_key_id = (known after apply) + maintenance_track_name = "current" + manual_snapshot_retention_period = -1 + master_password = (sensitive value) + master_password_secret_arn = (known after apply) + master_password_secret_kms_key_id = (known after apply) + master_username = "faranbutt" + node_type = "dc2.large" + number_of_nodes = 1 + port = 5439 + preferred_maintenance_window = (known after apply) + publicly_accessible = true + skip_final_snapshot = false + tags_all = (known after apply) + vpc_security_group_ids = (known after apply) } # aws_s3_bucket.first-bucket will be created + resource "aws_s3_bucket" "first-bucket" { + acceleration_status = (known after apply) + acl = (known after apply) + arn = (known after apply) + bucket = "farans-bucket-1" + bucket_domain_name = (known after apply) + bucket_prefix = (known after apply) + bucket_regional_domain_name = (known after apply) + force_destroy = false + hosted_zone_id = (known after apply) + id = (known after apply) + object_lock_enabled = (known after apply) + policy = (known after apply) + region = (known after apply) + request_payer = (known after apply) + tags = { + "Environment" = "Dev" + "Name" = "Faran First Bucket" } + tags_all = { + "Environment" = "Dev" + "Name" = "Faran First Bucket" } + website_domain = (known after apply) + website_endpoint = (known after apply) } # aws_s3_bucket_lifecycle_configuration.bucket_config will be created + resource "aws_s3_bucket_lifecycle_configuration" "bucket_config" { + bucket = (known after apply) + id = (known after apply) + rule { + id = "log" + status = "Enabled" + expiration { + days = 1 + expired_object_delete_marker = (known after apply) } + filter { + and { + object_size_greater_than = 400 + object_size_less_than = 64000 + prefix = "log/" + tags = { + "autoclean" = "true" + "rule" = "log" } } } } } Plan: 3 to add, 0 to change, 0 to destroy. ────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. @zeeshan1122334455 ➜ /workspaces/Data-Engineering-Zoomcamp/hw_1 (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_redshift_cluster.first_redshift_cluster will be created + resource "aws_redshift_cluster" "first_redshift_cluster" { + allow_version_upgrade = true + apply_immediately = false + aqua_configuration_status = (known after apply) + arn = (known after apply) + automated_snapshot_retention_period = 1 + availability_zone = (known after apply) + cluster_identifier = "tf-faran-redshift-cluster" + cluster_namespace_arn = (known after apply) + cluster_nodes = (known after apply) + cluster_parameter_group_name = (known after apply) + cluster_public_key = (known after apply) + cluster_revision_number = (known after apply) + cluster_subnet_group_name = (known after apply) + cluster_type = "single-node" + cluster_version = "1.0" + database_name = "faran_first_db" + default_iam_role_arn = (known after apply) + dns_name = (known after apply) + encrypted = false + endpoint = (known after apply) + enhanced_vpc_routing = (known after apply) + final_snapshot_identifier = "farabutt" + iam_roles = (known after apply) + id = (known after apply) + kms_key_id = (known after apply) + maintenance_track_name = "current" + manual_snapshot_retention_period = -1 + master_password = (sensitive value) + master_password_secret_arn = (known after apply) + master_password_secret_kms_key_id = (known after apply) + master_username = "faranbutt" + node_type = "dc2.large" + number_of_nodes = 1 + port = 5439 + preferred_maintenance_window = (known after apply) + publicly_accessible = true + skip_final_snapshot = false + tags_all = (known after apply) + vpc_security_group_ids = (known after apply) } # aws_s3_bucket.first-bucket will be created + resource "aws_s3_bucket" "first-bucket" { + acceleration_status = (known after apply) + acl = (known after apply) + arn = (known after apply) + bucket = "farans-bucket-1" + bucket_domain_name = (known after apply) + bucket_prefix = (known after apply) + bucket_regional_domain_name = (known after apply) + force_destroy = false + hosted_zone_id = (known after apply) + id = (known after apply) + object_lock_enabled = (known after apply) + policy = (known after apply) + region = (known after apply) + request_payer = (known after apply) + tags = { + "Environment" = "Dev" + "Name" = "Faran First Bucket" } + tags_all = { + "Environment" = "Dev" + "Name" = "Faran First Bucket" } + website_domain = (known after apply) + website_endpoint = (known after apply) } # aws_s3_bucket_lifecycle_configuration.bucket_config will be created + resource "aws_s3_bucket_lifecycle_configuration" "bucket_config" { + bucket = (known after apply) + id = (known after apply) + rule { + id = "log" + status = "Enabled" + expiration { + days = 1 + expired_object_delete_marker = (known after apply) } + filter { + and { + object_size_greater_than = 400 + object_size_less_than = 64000 + prefix = "log/" + tags = { + "autoclean" = "true" + "rule" = "log" } } } } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_redshift_cluster.first_redshift_cluster: Creating... aws_s3_bucket.first-bucket: Creating... aws_s3_bucket.first-bucket: Creation complete after 2s [id=farans-bucket-1] aws_s3_bucket_lifecycle_configuration.bucket_config: Creating... aws_redshift_cluster.first_redshift_cluster: Still creating... [10s elapsed] aws_s3_bucket_lifecycle_configuration.bucket_config: Still creating... [10s elapsed] aws_redshift_cluster.first_redshift_cluster: Still creating... [20s elapsed] aws_s3_bucket_lifecycle_configuration.bucket_config: Still creating... [20s elapsed] aws_redshift_cluster.first_redshift_cluster: Still creating... [30s elapsed] aws_s3_bucket_lifecycle_configuration.bucket_config: Still creating... [30s elapsed] aws_s3_bucket_lifecycle_configuration.bucket_config: Creation complete after 31s [id=farans-bucket-1] aws_redshift_cluster.first_redshift_cluster: Still creating... [40s elapsed] aws_redshift_cluster.first_redshift_cluster: Still creating... [50s elapsed] aws_redshift_cluster.first_redshift_cluster: Still creating... [1m0s elapsed] aws_redshift_cluster.first_redshift_cluster: Still creating... [1m10s elapsed] aws_redshift_cluster.first_redshift_cluster: Creation complete after 1m13s [id=tf-faran-redshift-cluster] Apply complete! Resources: 3 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "lunar-terra-412619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo will be created + resource "google_storage_bucket" "demo" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "lunar-terra-412619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/lunar-terra-412619/datasets/demo_dataset] google_storage_bucket.demo: Creation complete after 2s [id=lunar-terra-412619-terra-bucket] 1
(base) root@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables# terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "provenmercury412999_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + max_time_travel_hours = (known after apply) + project = "proven-mercury-412123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + name = "proven-mercury-412999-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=proven-mercury-412999-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/proven-mercury-412123/datasets/provenmercury412999_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset_de_zoomcamp will be created + resource "google_bigquery_dataset" "demo_dataset_de_zoomcamp" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_411916_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411916" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-411916-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset_de_zoomcamp: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset_de_zoomcamp: Creation complete after 1s [id=projects/de-zoomcamp-411916/datasets/de_zoomcamp_411916_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-zoomcamp-411916-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=gcs-terra-bucket] Note: Objects have changed outside of Terraform Terraform detected the following changes made outside of Terraform since the last "terraform apply": # google_storage_bucket.demo-bucket has changed ~ resource "google_storage_bucket" "demo-bucket" { id = "gcs-terra-bucket" + labels = {} name = "gcs-terra-bucket" # (13 unchanged attributes hidden) # (1 unchanged block hidden) } Unless you have made equivalent changes to your configuration, or ignored the relevant attributes using ignore_changes, the following plan may include actions to undo or respond to these changes. ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "bq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "adept-vigil-409115" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/adept-vigil-409115/datasets/bq_dataset] 1
error 1
Destroy complete! Resources: 2 destroyed. 1
Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "taxirides" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "dtc-de-course-411418" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "datacamp123" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.tcb-demo-bucket will be created + resource "google_bigquery_dataset" "tcb-demo-bucket" { + creation_time = (known after apply) + dataset_id = "tcb_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "tcb-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_gr_taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-central2" + max_time_travel_hours = (known after apply) + project = "spry-abacus-411519" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-CENTRAL2" + name = "ny_gr_taxi_data_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/spry-abacus-411519/datasets/ny_gr_taxi_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ny_gr_taxi_data_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "black-anagram-412918" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dimi_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "mydezoomcamp2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "my-dezoomcamp-2024-terra-bucket-by-dimidb-with-variables" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=my-dezoomcamp-2024-terra-bucket-by-dimidb-with-variables] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/mydezoomcamp2024/datasets/dimi_demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
done 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "astral-volt-411512" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "astral-volt-411512-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
kubernetes_namespace.example: Refreshing state... [id=de-zoomcamp-namespace-week1] kubernetes_deployment.example: Refreshing state... [id=de-zoomcamp-namespace-week1/bigquery-emulator] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: -/+ destroy and then create replacement Terraform will perform the following actions: # kubernetes_deployment.example is tainted, so must be replaced -/+ resource "kubernetes_deployment" "example" { ~ id = "de-zoomcamp-namespace-week1/bigquery-emulator" -> (known after apply) # (1 unchanged attribute hidden) ~ metadata { - annotations = {} -> null ~ generation = 1 -> (known after apply) - labels = {} -> null name = "bigquery-emulator" ~ resource_version = "19192" -> (known after apply) ~ uid = "73a1c837-e1dd-4332-94dc-117e4545f72d" -> (known after apply) # (1 unchanged attribute hidden) } ~ spec { # (5 unchanged attributes hidden) - strategy { - type = "RollingUpdate" -> null - rolling_update { - max_surge = "25%" -> null - max_unavailable = "25%" -> null } } ~ template { ~ metadata { - annotations = {} -> null ~ generation = 0 -> (known after apply) + name = (known after apply) + resource_version = (known after apply) + uid = (known after apply) # (1 unchanged attribute hidden) } ~ spec { - active_deadline_seconds = 0 -> null + hostname = (known after apply) + node_name = (known after apply) - node_selector = {} -> null ~ scheduler_name = "default-scheduler" -> (known after apply) + service_account_name = (known after apply) # (9 unchanged attributes hidden) ~ container { - args = [] -> null - command = [] -> null ~ image_pull_policy = "Always" -> (known after apply) name = "bigquery-emulator" ~ termination_message_policy = "File" -> (known after apply) # (5 unchanged attributes hidden) ~ port { - host_port = 0 -> null # (2 unchanged attributes hidden) } - resources { - limits = {} -> null - requests = {} -> null } } } } # (1 unchanged block hidden) } } Plan: 1 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes kubernetes_deployment.example: Destroying... [id=de-zoomcamp-namespace-week1/bigquery-emulator] kubernetes_deployment.example: Destruction complete after 0s kubernetes_deployment.example: Creating... 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dataeng-zoomcamp-412722/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset must be replaced -/+ resource "google_bigquery_dataset" "demo_dataset" { ~ creation_time = 1706566625637 -> (known after apply) ~ dataset_id = "demo_dataset" -> "module1_dataset" # forces replacement + default_collation = (known after apply) - default_partition_expiration_ms = 5184000000 -> null - default_table_expiration_ms = 5184000000 -> null ~ effective_labels = {} -> (known after apply) ~ etag = "rHPeB6KS+SgrS0P34uCG7g==" -> (known after apply) ~ id = "projects/dataeng-zoomcamp-412722/datasets/demo_dataset" -> (known after apply) ~ is_case_insensitive = false -> (known after apply) - labels = {} -> null ~ last_modified_time = 1706566625637 -> (known after apply) + max_time_travel_hours = (known after apply) ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/dataeng-zoomcamp-412722/datasets/demo_dataset" -> (known after apply) + storage_billing_model = (known after apply) ~ terraform_labels = {} -> (known after apply) # (3 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "terraform-runner@dataeng-zoomcamp-412722.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "module1-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Destroying... [id=projects/dataeng-zoomcamp-412722/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Destruction complete after 1s google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=module1-terraform-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/dataeng-zoomcamp-412722/datasets/module1_dataset] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset-dezoom will be created + resource "google_bigquery_dataset" "dataset-dezoom" { + creation_time = (known after apply) + dataset_id = "dezoom_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dezoom-412200" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.dezoom_bucket will be created + resource "google_storage_bucket" "dezoom_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "bucket-dezoom-412200" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset-dezoom: Creating... google_storage_bucket.dezoom_bucket: Creating... google_bigquery_dataset.dataset-dezoom: Creation complete after 2s [id=projects/dezoom-412200/datasets/dezoom_dataset] google_storage_bucket.dezoom_bucket: Creation complete after 2s [id=bucket-dezoom-412200] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_taxi_dataset will be created + resource "google_bigquery_dataset" "ny_taxi_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "ultimate-aspect-410714-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.ny_taxi_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.ny_taxi_dataset: Creation complete after 3s [id=projects/ultimate-aspect-410714/datasets/ny_taxi_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=ultimate-aspect-410714-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. PS C:\Users\User\Desktop\projects\data_engineer\1_terraform_gcp\terraform_1> 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "sonorous-antler-412815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "sonorous-antler-412815-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/sonorous-antler-412815/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=sonorous-antler-412815-terra-bucket] 1
@diegoeula ➜ /workspaces/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datazoomcamp-deula" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datazoomcamp-deula-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/datazoomcamp-deula/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=datazoomcamp-deula-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "even-ally-412601" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "even-ally-412601-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + max_time_travel_hours = (known after apply) + project = "galvanic-wall-404214" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "nyt_data_lake1_galvanic-wall-404214" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=nyt_data_lake1_galvanic-wall-404214] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/galvanic-wall-404214/datasets/trips_data_all1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) ola@oladeMacBook-Pro 1_terraform_gcp % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "coherent-ascent-379901" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc_data_lake_coherent-ascent-379901" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 2 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 6s [id=projects/coherent-ascent-379901/datasets/trips_data_all] google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Creation complete after 20s [id=dtc_data_lake_coherent-ascent-379901] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "my_lightblash_bq_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "lightblash-zoomcamp" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "lightblash-data-lake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/lightblash-zoomcamp/datasets/my_lightblash_bq_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=lightblash-data-lake-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_dez_2024" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dez-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dez-2024-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/dez-2024/datasets/demo_dataset_dez_2024] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dez-2024-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-411919" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-2024-411919-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-411919/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-zoomcamp-2024-411919-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-test-412018" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-bucket-terraform-test-412018" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-test-412018/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=demo-bucket-terraform-test-412018] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-terra-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/sublime-iridium-411308/datasets/demo_dataset] google_storage_bucket.demo-terra-bucket: Creation complete after 2s [id=auto-expiring-bucket-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412717" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-dtc-de-course-412717-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412717/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=demo-dtc-de-course-412717-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.bucket-from-terraform-datat: Creating... google_bigquery_dataset.bd_tf: Creating... google_storage_bucket.bucket-from-terraform-datat: Creation complete after 2s [id=bucket-from-terraform-datat] google_storage_bucket_object.photo: Creating... google_storage_bucket_object.photo: Creation complete after 1s [id=bucket-from-terraform-datat-random_photo] google_bigquery_dataset.bd_tf: Creation complete after 3s [id=projects/nimble-service-395221/datasets/mydataset_tf] google_bigquery_table.table_tf: Creating... google_bigquery_table.table_tf: Creation complete after 1s [id=projects/nimble-service-395221/datasets/mydataset_tf/tables/table_from_tf] Apply complete! Resources: 4 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-411819" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ndangalasibucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411911" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-411911-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } 1
google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-demo-terra-bucket-412309] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412423" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-777777788-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
@muhajir29 ➜ /workspaces/DEZoomcamp2024/week1/terraform (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "training_de_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "orag-big-data" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "training_de_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/orag-big-data/datasets/training_de_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=training_de_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terra-412514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-bucket-412514" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_storage_bucket.data-lake-bucket: Refreshing state... [id=de_zoomcamp_data_lake_new] google_bigquery_dataset.dataset: Refreshing state... [id=projects/dtc-de-course-412201/datasets/de_zoomcamp_bigquery_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "taxis-nyc-411819" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "taxis-nyc-411819-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/taxis-nyc-411819/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=taxis-nyc-411819-terraform-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "global-sign-411702" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "global-sign-411702-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/global-sign-411702/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=global-sign-411702-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/terraform-demo-412214/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 0s [id=terraform-demo-412214-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucker will be created + resource "google_storage_bucket" "demo-bucker" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "neon-concord-412616-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucker: Creating... google_storage_bucket.demo-bucker: Creation complete after 5s [id=neon-concord-412616-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-410410" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-2024-410410-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/de-zoomcamp-2024-410410/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=de-zoomcamp-2024-410410-terra-bucket] 1
erraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_bigquery_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "unified-ruler-411201" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "unified-ruler-411201-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/unified-ruler-411201/datasets/demo_bigquery_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=unified-ruler-411201-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_my-learning-gcp-123] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/my-learning-gcp-123/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412710" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412710-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412710/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412710-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
# google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412819" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412819" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } 1
data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_basic# terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "personal_365616_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "personal-365616" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "personal-365616-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 0s [id=projects/personal-365616/datasets/personal_365616_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=personal-365616-zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.data_talks_demo_dataset will be created + resource "google_bigquery_dataset" "data_talks_demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + description = "This is a test description" + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "delearnproject20240121" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_da_course will be created + resource "google_storage_bucket" "demo_da_course" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "delearnproject20240121_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.data_talks_demo_dataset: Creating... google_storage_bucket.demo_da_course: Creating... google_bigquery_dataset.data_talks_demo_dataset: Creation complete after 3s [id=projects/delearnproject20240121/datasets/demo_dataset] google_storage_bucket.demo_da_course: Creation complete after 3s [id=delearnproject20240121_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "project_id" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=...] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=...] 1
https://github.com/felrobotics/de-zoomcamp/tree/main/module-1/terraform 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-datasets will be created + resource "google_bigquery_dataset" "demo-datasets" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412710" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412710-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-datasets: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-datasets: Creation complete after 2s [id=projects/terraform-demo-412710/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-demo-412710-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Apply 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dataeng-zoomcamp-412520" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dataeng-zoomcamp-412520-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dataeng-zoomcamp-412520/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dataeng-zoomcamp-412520-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_my-learning-gcp-123] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/my-learning-gcp-123/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_by_khumiso" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "neon-opus-412521" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demoterra-bucket will be created + resource "google_storage_bucket" "demoterra-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "neon-opus-412521-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demoterra-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/neon-opus-412521/datasets/demo_dataset_by_khumiso] google_storage_bucket.demoterra-bucket: Creation complete after 2s [id=neon-opus-412521-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_rides_dataset will be created + resource "google_bigquery_dataset" "ny_rides_dataset" { + creation_time = (known after apply) + dataset_id = "ny_rides_yadayaza_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "ny-rides-yadayaza" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.ny_rides_bucket will be created + resource "google_storage_bucket" "ny_rides_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "ny_rides_yadayaza_terra_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.ny_rides_dataset: Creating... google_storage_bucket.ny_rides_bucket: Creating... google_bigquery_dataset.ny_rides_dataset: Creation complete after 2s [id=projects/ny-rides-yadayaza/datasets/ny_rides_yadayaza_dataset] google_storage_bucket.ny_rides_bucket: Creation complete after 2s [id=ny_rides_yadayaza_terra_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "first_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dogwood-site-411520" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dogwood-site-411520-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_bigquery_dataset.tero-dataset: Creating... google_storage_bucket.tero-bucket: Creating... google_bigquery_dataset.tero-dataset: Creation complete after 1s [id=projects/refined-outlet-411413/datasets/demo_dataset] google_storage_bucket.tero-bucket: Creation complete after 2s [id=refined-outlet-411413-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
➜ w1_hw_b terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "k2_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-central2" + max_time_travel_hours = (known after apply) + project = "dte-de-410519" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.k2-bucket will be created + resource "google_storage_bucket" "k2-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-CENTRAL2" + name = "terraform-k2-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.k2-bucket: Creating... google_storage_bucket.k2-bucket: Creation complete after 1s [id=terraform-k2-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dte-de-410519/datasets/k2_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412503" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412503-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/terraform-demo-412503/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-demo-412503-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-central2" + max_time_travel_hours = (known after apply) + project = "earnest-topic-412511" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-CENTRAL2" + name = "terraform-demo-terra-bucket-run1" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "my_bigquery_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "EU" + project = "terraform-demo-411110" + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-411110-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/terraform-demo-411110/datasets/my_bigquery_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-411110-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/sinuous-studio-412717/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=sinuous-studio-412717-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Error: Inconsistent dependency lock file │ │ The following dependency selections recorded in the lock file are inconsistent with the current │ configuration: │ - provider registry.terraform.io/hashicorp/google: required by this configuration but no version is selected │ │ To make the initial dependency selections that will initialize the dependency lock file, run: │ terraform init 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "terraform-demo-terra-bucket-732645474125" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 4s [id=terraform-demo-terra-bucket-732645474125] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
I am travelling and work laptop doesn't allow me to install Terraform :( 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412801-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... ╷ │ Error: googleapi: Error 403: The billing account for the owning project is disabled in state absent, accountDisabled │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 16, in resource "google_storage_bucket" "demo-bucket": │ 16: resource "google_storage_bucket" "demo-bucket" { 1
@Ron06 ➜ /workspaces/Data-Engineering-Zoomcamp2024/week_01_basics_n_setup/1_terraform_gcp (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411807" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "dtc-de-course-411807-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/dtc-de-course-411807/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 5s [id=dtc-de-course-411807-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "intricate-reef-411403" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "intricate-reef-411403-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.nytaxi_dataset: Creating... google_storage_bucket.terra-bucket: Creating... google_bigquery_dataset.nytaxi_dataset: Creation complete after 1s [id=projects/vocal-tempo-411407/datasets/nytaxi_dataset] google_storage_bucket.terra-bucket: Creation complete after 2s [id=vocal-tempo-411407-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datacamp-412412" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datacamp-412412-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/datacamp-412412/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=datacamp-412412-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) lottie@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_taxi_rides_data_967682f4482f will be created + resource "google_bigquery_dataset" "ny_taxi_rides_data_967682f4482f" { + creation_time = (known after apply) + dataset_id = "ny_taxi_rides_data_967682f4482f" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "ny-taxi-rides-data" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.ny-taxi-rides-data-967682f4482f will be created + resource "google_storage_bucket" "ny-taxi-rides-data-967682f4482f" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "ny-taxi-rides-data-967682f4482f" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.ny_taxi_rides_data_967682f4482f: Creating... google_storage_bucket.ny-taxi-rides-data-967682f4482f: Creating... google_bigquery_dataset.ny_taxi_rides_data_967682f4482f: Creation complete after 2s [id=projects/ny-taxi-rides-data/datasets/ny_taxi_rides_data_967682f4482f] google_storage_bucket.ny-taxi-rides-data-967682f4482f: Creation complete after 2s [id=ny-taxi-rides-data-967682f4482f] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) lottie@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform destroy google_bigquery_dataset.ny_taxi_rides_data_967682f4482f: Refreshing state... [id=projects/ny-taxi-rides-data/datasets/ny_taxi_rides_data_967682f4482f] google_storage_bucket.ny-taxi-rides-data-967682f4482f: Refreshing state... [id=ny-taxi-rides-data-967682f4482f] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: - destroy Terraform will perform the following actions: # google_bigquery_dataset.ny_taxi_rides_data_967682f4482f will be destroyed - resource "google_bigquery_dataset" "ny_taxi_rides_data_967682f4482f" { - creation_time = 1706290697784 -> null - dataset_id = "ny_taxi_rides_data_967682f4482f" -> null - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null - delete_contents_on_destroy = true -> null - effective_labels = {} -> null - etag = "F0l8/Fk531NCMJt2neS89Q==" -> null - id = "projects/ny-taxi-rides-data/datasets/ny_taxi_rides_data_967682f4482f" -> null - is_case_insensitive = false -> null - labels = {} -> null - last_modified_time = 1706290697784 -> null - location = "EU" -> null - project = "ny-taxi-rides-data" -> null - self_link = https://bigquery.googleapis.com/bigquery/v2/projects/ny-taxi-rides-data/datasets/ny_taxi_rides_data_967682f4482f -> null - terraform_labels = {} -> null - access { - role = "OWNER" -> null - user_by_email = 539313211848-compute@developer.gserviceaccount.com -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.ny-taxi-rides-data-967682f4482f will be destroyed - resource "google_storage_bucket" "ny-taxi-rides-data-967682f4482f" { - default_event_based_hold = false -> null - effective_labels = {} -> null - enable_object_retention = false -> null - force_destroy = true -> null - id = "ny-taxi-rides-data-967682f4482f" -> null - labels = {} -> null - location = "EU" -> null - name = "ny-taxi-rides-data-967682f4482f" -> null - project = "ny-taxi-rides-data" -> null - public_access_prevention = "inherited" -> null - requester_pays = false -> null - self_link = https://www.googleapis.com/storage/v1/b/ny-taxi-rides-data-967682f4482f -> null - storage_class = "STANDARD" -> null - terraform_labels = {} -> null - uniform_bucket_level_access = false -> null - url = "gs://ny-taxi-rides-data-967682f4482f" -> null - lifecycle_rule { - action { - type = "AbortIncompleteMultipartUpload" -> null } - condition { - age = 30 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } } } Plan: 0 to add, 0 to change, 2 to destroy. Do you really want to destroy all resources? Terraform will destroy all your managed infrastructure, as shown above. There is no undo. Only 'yes' will be accepted to confirm. Enter a value: yes google_storage_bucket.ny-taxi-rides-data-967682f4482f: Destroying... [id=ny-taxi-rides-data-967682f4482f] google_bigquery_dataset.ny_taxi_rides_data_967682f4482f: Destroying... [id=projects/ny-taxi-rides-data/datasets/ny_taxi_rides_data_967682f4482f] google_storage_bucket.ny-taxi-rides-data-967682f4482f: Destruction complete after 1s google_bigquery_dataset.ny_taxi_rides_data_967682f4482f: Destruction complete after 1s Destroy complete! Resources: 2 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=okibaba-data-engineering-terraform-demo-terra-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "okibaba_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "okibaba-data-engineering" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket must be replaced -/+ resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null ~ effective_labels = {} -> (known after apply) - enable_object_retention = false -> null ~ id = "okibaba-data-engineering-terraform-demo-terra-bucket" -> (known after apply) - labels = {} -> null ~ name = "okibaba-data-engineering-terraform-demo-terra-bucket" -> "okibaba_terraform-demo-terra-bucket" # forces replacement ~ project = "okibaba-data-engineering" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/okibaba-data-engineering-terraform-demo-terra-bucket" -> (known after apply) ~ terraform_labels = {} -> (known after apply) ~ uniform_bucket_level_access = false -> (known after apply) ~ url = "gs://okibaba-data-engineering-terraform-demo-terra-bucket" -> (known after apply) # (3 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Destroying... [id=okibaba-data-engineering-terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/okibaba-data-engineering/datasets/okibaba_demo_dataset] google_storage_bucket.demo-bucket: Destruction complete after 0s google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=okibaba_terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset-hwork1014 will be created + resource "google_bigquery_dataset" "demo_dataset-hwork1014" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-409714" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket-hwork1014 will be created + resource "google_storage_bucket" "demo-bucket-hwork1014" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-bucket-1014" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset-hwork1014: Creating... google_storage_bucket.demo-bucket-hwork1014: Creating... google_bigquery_dataset.demo_dataset-hwork1014: Creation complete after 8s [id=projects/terraform-demo-409714/datasets/demo_dataset] google_storage_bucket.demo-bucket-hwork1014: Creation complete after 10s [id=terraform-demo-bucket-1014] 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-378023" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-378023-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dt c-de-378023/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-378023- terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTH1" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411907" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTH1" + name = "demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 5s [id=projects/dtc-de-course-411907/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-rides-peter/datasets/demo_dataset_1] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-1] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp24_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zoomcamp24" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "zoomcamp24_terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoomcamp24_terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/zoomcamp24/datasets/zoomcamp24_demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "home_work_dataset_lk" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dataengcourse-411401" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-home-work-bucket_lk" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dataengcourse-411401/datasets/home_work_dataset_lk] google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-home-work-bucket_lk] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de-zoomcamp-demo-dataset will be created + resource "google_bigquery_dataset" "de-zoomcamp-demo-dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_bigquery_dataset_jiakai" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "australia-southeast1" + max_time_travel_hours = (known after apply) + project = "artful-sky-411***" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-zoomcamp-demo-bucket will be created + resource "google_storage_bucket" "de-zoomcamp-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + name = "de_zoomcamp_bucket_jiakai" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "REGIONAL" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.de-zoomcamp-demo-bucket: Creating... google_bigquery_dataset.de-zoomcamp-demo-dataset: Creating... google_storage_bucket.de-zoomcamp-demo-bucket: Creation complete after 3s [id=de_zoomcamp_bucket_jiakai] google_bigquery_dataset.de-zoomcamp-demo-dataset: Creation complete after 3s [id=projects/artful-sky-411***/datasets/de_zoomcamp_bigquery_dataset_jiakai] 1
0 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 0s [id=projects/ny-rides-tyler-411718/datasets/ny_rides_tyler_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 0s [id=de-data-lake-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. \ 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "my_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "secure-air-399914" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-secure-air-399914-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/secure-air-399914/datasets/my_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-secure-air-399914-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "eighth-jigsaw-412620" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "eighth-jigsaw-412620-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/eighth-jigsaw-412620/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=eighth-jigsaw-412620-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-411808/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-411808-bucket_1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-411808-bucket_1] 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "my-project-de-zoomcamp-412417" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "my-project-de-zoomcamp-412417-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=my-project-de-zoomcamp-412417-bucket] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/my-project-de-zoomcamp-412417/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed 1
google_bigquery_dataset.demo_dataset_andres_zoomcamp_2024_1: Creating... google_storage_bucket.terraform-demo-bucket_andres_zoomcamp_2024_1: Creating... google_bigquery_dataset.demo_dataset_andres_zoomcamp_2024_1: Creation complete after 1s [id=projects/dataengineeringcourse-0001/datasets/demo_dataset_andres_zoomcamp_2024_1] google_storage_bucket.terraform-demo-bucket_andres_zoomcamp_2024_1: Creation complete after 2s [id=terraform-demo-bucket_andres_zoomcamp_2024_1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the flollowing excution plan. Resource actions are indicated with the following symbols:- create 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "taxi_bigquery" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-406816" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc_de_2024_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-project-411822" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-project-411822-terrabucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-project-411822/datasets/terraform_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-project-411822-terrabucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-gcp-412014" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-2024-gcp-412014-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-gcp-412014/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoomcamp-2024-gcp-412014-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412605" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-412605-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/de-zoomcamp-412605/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoomcamp-412605-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/de-zoomcamp-412313/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=de-zoomcamp-412313-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: create Terraform will perform the following actions: google_bigquery_dataset.demo_dataset will be created resource "google_bigquery_dataset" "demo_dataset" { creation_time = (known after apply) dataset_id = "demo_dataset" default_collation = (known after apply) delete_contents_on_destroy = false effective_labels = (known after apply) etag = (known after apply) id = (known after apply) is_case_insensitive = (known after apply) last_modified_time = (known after apply) location = "US" max_time_travel_hours = (known after apply) project = "zoom-dataeng" self_link = (known after apply) storage_billing_model = (known after apply) terraform_labels = (known after apply) } google_storage_bucket.demo-bucket will be created resource "google_storage_bucket" "demo-bucket" { effective_labels = (known after apply) force_destroy = true id = (known after apply) location = "US" name = "zoom-dataeng-demo-bucket" project = (known after apply) public_access_prevention = (known after apply) self_link = (known after apply) storage_class = "STANDARD" terraform_labels = (known after apply) uniform_bucket_level_access = (known after apply) url = (known after apply) lifecycle_rule { action { type = "AbortIncompleteMultipartUpload" } condition { age = 1 matches_prefix = [] matches_storage_class = [] matches_suffix = [] with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/zoom-dataeng/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 0s [id=zoom-dataeng-demo-bucket] 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "eighth-veld-411323" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "eighth-veld-411323-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/eighth-veld-411323/datasets/ny_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=eighth-veld-411323-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/cedar-style-412618/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=cedar-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
frean@coy-pc:/mnt/c/code/de-zoomcamp/week_1/homework_1/terraform_basic$ terraform destroy google_storage_bucket.homework-data-lake-bucket: Refreshing state... [id=model-caldron-411807_basic_bucket] google_bigquery_dataset.homework-dataset: Refreshing state... [id=projects/model-caldron-411807/datasets/homework_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: - destroy Terraform will perform the following actions: # google_bigquery_dataset.homework-dataset will be destroyed - resource "google_bigquery_dataset" "homework-dataset" { - creation_time = 1706539177335 -> null - dataset_id = "homework_dataset" -> null - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null - delete_contents_on_destroy = false -> null - etag = "r1BWmC5HsfJUmFay35zkMg==" -> null - id = "projects/model-caldron-411807/datasets/homework_dataset" -> null - labels = {} -> null - last_modified_time = 1706539177335 -> null - location = "US" -> null - project = "model-caldron-411807" -> null - self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/model-caldron-411807/datasets/homework_dataset" -> null - access { - role = "OWNER" -> null - user_by_email = "terraform-runner@model-caldron-411807.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.homework-data-lake-bucket will be destroyed - resource "google_storage_bucket" "homework-data-lake-bucket" { - default_event_based_hold = false -> null - force_destroy = true -> null - id = "model-caldron-411807_basic_bucket" -> null - labels = {} -> null - location = "US" -> null - name = "model-caldron-411807_basic_bucket" -> null - project = "model-caldron-411807" -> null - public_access_prevention = "inherited" -> null - requester_pays = false -> null - self_link = "https://www.googleapis.com/storage/v1/b/model-caldron-411807_basic_bucket" -> null - storage_class = "STANDARD" -> null - uniform_bucket_level_access = true -> null - url = "gs://model-caldron-411807_basic_bucket" -> null - lifecycle_rule { - action { - type = "Delete" -> null } - condition { - age = 30 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } } - versioning { - enabled = true -> null } } Plan: 0 to add, 0 to change, 2 to destroy. Do you really want to destroy all resources? Terraform will destroy all your managed infrastructure, as shown above. There is no undo. Only 'yes' will be accepted to confirm. Enter a value: yes google_storage_bucket.homework-data-lake-bucket: Destroying... [id=model-caldron-411807_basic_bucket] google_bigquery_dataset.homework-dataset: Destroying... [id=projects/model-caldron-411807/datasets/homework_dataset] google_bigquery_dataset.homework-dataset: Destruction complete after 1s google_storage_bucket.homework-data-lake-bucket: Destruction complete after 2s Destroy complete! Resources: 2 destroyed. 1
Apply complete! Resources: 7 added, 0 changed, 0 destroyed. 1
Non 1
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/de-zoomcamp-359707/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-zoomcamp-359707-bucket] 1
docker_host_external_ip = "XX.123.456.XXX" - Note: censoring for privacy reasons 1
(base) PS C:\Users\emir_\PycharmProjects\data-engineering-zoomcamp\01-docker-terraform\1_terraform_gcp\terraform\terraform_with_variables> terraform apply var.project Your GCP Project ID Enter a value: astral-bit-411318 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "astral-bit-411318" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "dtc_data_lake_astral-bit-411318" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/astral-bit-411318/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_astral-bit-411318] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) PS C:\Users\emir_\PycharmProjects\data-engineering-zoomcamp\01-docker-terraform\1_terraform_gcp\terraform\terraform_with_variables> 1
google_storage_bucket.data-lake-bucket: Refreshing state... [id=de-zoomcamp-2024-412718-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_2024_412718_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "EU" + project = "de-zoomcamp-2024-412718" + self_link = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/de-zoomcamp-2024-412718/datasets/de_zoomcamp_2024_412718_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
aaaaaaaaaaaa 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/seventh-capsule-412404/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "tf-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=tf-demo-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=dezoomcamp_ichsanuldev] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/ichsanul-dev/datasets/de_zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
 terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=data-enginnering-course-demo-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "data_enginnering_course_demo_dataset" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "demo-dataset" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-enginnering-course" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket must be replaced -/+ resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null ~ effective_labels = {} -> (known after apply) - enable_object_retention = false -> null ~ id = "data-enginnering-course-demo-bucket" -> (known after apply) - labels = {} -> null ~ name = "data-enginnering-course-demo-bucket" -> "data_enginnering_course_demo_bucket" # forces replacement ~ project = "data-enginnering-course" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ rpo = "DEFAULT" -> (known after apply) ~ self_link = "https://www.googleapis.com/storage/v1/b/data-enginnering-course-demo-bucket" -> (known after apply) ~ terraform_labels = {} -> (known after apply) ~ uniform_bucket_level_access = false -> (known after apply) ~ url = "gs://data-enginnering-course-demo-bucket" -> (known after apply) # (3 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 3 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - no_age = false -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } ~ lifecycle_rule { - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - no_age = false -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Destroying... [id=data-enginnering-course-demo-bucket] google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Destruction complete after 1s google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-enginnering-course/datasets/data_enginnering_course_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=data_enginnering_course_demo_bucket] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/angelic-throne-411816/datasets/demo_dataset_thanh] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket_thanh] Apply complete! Resources: 2 added, 0 changed, 0 destroye 1
PS C:\Users\scl\data-engineering-zoomcamp-2024\week_1_basics_n_setup\1_terraform_gcp\terraform> terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = <dataset_id> + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "<project_id>" + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = <bucket_name> + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/<project_id>/datasets/<dataset_id>] google_storage_bucket.demo-bucket: Creation complete after 1s [id=<bucket_name>] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. PS C:\Users\scl\data-engineering-zoomcamp-2024\week_1_basics_n_setup\1_terraform_gcp\terraform> 1
(base) olegd@Olegs-Air-15 week1_postgres % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dtc_de_bq1" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "dtc-de-course-412918" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc_de_bucket1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-course-412918/datasets/dtc_de_bq1] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_de_bucket1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
-- 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "imposing-avatar-408001" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezc24_demo_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "turing-dev-337819" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=data_eng_zoomcamp_bucket_412403] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "plucky-spirit-412403" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket must be replaced -/+ resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null ~ effective_labels = {} -> (known after apply) - enable_object_retention = false -> null ~ id = "data_eng_zoomcamp_bucket_412403" -> (known after apply) - labels = {} -> null ~ location = "ASIA" -> "ASIA-SOUTHEAST1" # forces replacement name = "data_eng_zoomcamp_bucket_412403" ~ project = "plucky-spirit-412403" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/data_eng_zoomcamp_bucket_412403" -> (known after apply) ~ terraform_labels = {} -> (known after apply) ~ uniform_bucket_level_access = false -> (known after apply) ~ url = "gs://data_eng_zoomcamp_bucket_412403" -> (known after apply) # (2 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Destroying... [id=data_eng_zoomcamp_bucket_412403] google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/plucky-spirit-412403/datasets/demo_dataset] google_storage_bucket.demo-bucket: Destruction complete after 3s google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Still creating... [20s elapsed] google_storage_bucket.demo-bucket: Still creating... [30s elapsed] google_storage_bucket.demo-bucket: Still creating... [40s elapsed] google_storage_bucket.demo-bucket: Still creating... [50s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m0s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m10s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m20s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m30s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m40s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m50s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m0s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m10s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m20s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m30s elapsed] google_storage_bucket.demo-bucket: Creation complete after 2m39s [id=data_eng_zoomcamp_bucket_412403] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demot_dataset will be created + resource "google_bigquery_dataset" "demot_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcampjdbv-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demot_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demot_dataset: Creation complete after 1s [id=projects/dezoomcampjdbv/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dezoomcampjdbv-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/famous-mix-412812/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=famous-mix-412812-terra-bucket] 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "crypto-truck-411918" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc_data_lake_crypto-truck-411918" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.homework_dataset will be created + resource "google_bigquery_dataset" "homework_dataset" { + creation_time = (known after apply) + dataset_id = "dataset_bq_taxi_ms" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "mszoomcamp2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.homework-bucket will be created + resource "google_storage_bucket" "homework-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "homework-terra-bucket-ms" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.homework_dataset: Creating... google_storage_bucket.homework-bucket: Creating... google_bigquery_dataset.homework_dataset: Creation complete after 1s [id=projects/mszoomcamp2024/datasets/dataset_bq_taxi_ms] google_storage_bucket.homework-bucket: Creation complete after 2s [id=homework-terra-bucket-ms] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zc_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "peerless-sensor-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "peerless-sensor-411315-terrabucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/peerless-sensor-411315/datasets/de_zc_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=peerless-sensor-411315-terrabucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "fabled_archive_demo" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "fabled-archive-412122" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "fabled-archive-terraform-demo" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/fabled-archive-412122/datasets/fabled_archive_demo] google_storage_bucket.demo-bucket: Creation complete after 3s [id=fabled-archive-terraform-demo] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412500/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-412500] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/main-shade-395414/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-main-shade-395414" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-main-shade-395414] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "golden-sandbox-411418" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "golden-sandbox-411418-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/golden-sandbox-411418/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=golden-sandbox-411418-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/rosy-clover-406804/datasets/demo_dataset_muzika] google_storage_bucket.demo-bucket: Creation complete after 3s [id=muzikabucket2024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
https://console.cloud.google.com/bigquery?referrer=search&hl=en&project=excellent-shard-410800 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_instance.ec2_zoomcamp will be created + resource "aws_instance" "ec2_zoomcamp" { + ami = "ami-0c7217cdde317cfec" + arn = (known after apply) + associate_public_ip_address = (known after apply) + availability_zone = (known after apply) + cpu_core_count = (known after apply) + cpu_threads_per_core = (known after apply) + disable_api_stop = (known after apply) + disable_api_termination = (known after apply) + ebs_optimized = (known after apply) + get_password_data = false + host_id = (known after apply) + host_resource_group_arn = (known after apply) + iam_instance_profile = (known after apply) + id = (known after apply) + instance_initiated_shutdown_behavior = (known after apply) + instance_state = (known after apply) + instance_type = "t2.micro" + ipv6_address_count = (known after apply) + ipv6_addresses = (known after apply) + key_name = "zoomcamp_key" + monitoring = (known after apply) + outpost_arn = (known after apply) + password_data = (known after apply) + placement_group = (known after apply) + placement_partition_number = (known after apply) + primary_network_interface_id = (known after apply) + private_dns = (known after apply) + private_ip = (known after apply) + public_dns = (known after apply) + public_ip = (known after apply) + secondary_private_ips = (known after apply) + security_groups = (known after apply) + subnet_id = (known after apply) + tags = { + "Name" = "ec2_zoomcamp" } + tags_all = { + "Name" = "ec2_zoomcamp" } + tenancy = (known after apply) + user_data = (known after apply) + user_data_base64 = (known after apply) + user_data_replace_on_change = false + vpc_security_group_ids = (known after apply) + ebs_block_device { + delete_on_termination = true + device_name = "/dev/sda1" + encrypted = (known after apply) + iops = (known after apply) + kms_key_id = (known after apply) + snapshot_id = (known after apply) + throughput = (known after apply) + volume_id = (known after apply) + volume_size = 10 + volume_type = (known after apply) } + network_interface { + delete_on_termination = false + device_index = 0 + network_card_index = 0 + network_interface_id = (known after apply) } } # aws_internet_gateway.gtw_zoomcamp will be created + resource "aws_internet_gateway" "gtw_zoomcamp" { + arn = (known after apply) + id = (known after apply) + owner_id = (known after apply) + tags = { + "Name" = "gtw_zoomcamp" } + tags_all = { + "Name" = "gtw_zoomcamp" } + vpc_id = (known after apply) } # aws_network_interface.net_inter_zoomcamp will be created + resource "aws_network_interface" "net_inter_zoomcamp" { + arn = (known after apply) + id = (known after apply) + interface_type = (known after apply) + ipv4_prefix_count = (known after apply) + ipv4_prefixes = (known after apply) + ipv6_address_count = (known after apply) + ipv6_address_list = (known after apply) + ipv6_address_list_enabled = false + ipv6_addresses = (known after apply) + ipv6_prefix_count = (known after apply) + ipv6_prefixes = (known after apply) + mac_address = (known after apply) + outpost_arn = (known after apply) + owner_id = (known after apply) + private_dns_name = (known after apply) + private_ip = (known after apply) + private_ip_list = (known after apply) + private_ip_list_enabled = false + private_ips = [ + "172.16.10.100", ] + private_ips_count = (known after apply) + security_groups = (known after apply) + source_dest_check = true + subnet_id = (known after apply) + tags_all = (known after apply) } # aws_route_table.route_zoomcamp will be created + resource "aws_route_table" "route_zoomcamp" { + arn = (known after apply) + id = (known after apply) + owner_id = (known after apply) + propagating_vgws = (known after apply) + route = [ + { + carrier_gateway_id = "" + cidr_block = "0.0.0.0/0" + core_network_arn = "" + destination_prefix_list_id = "" + egress_only_gateway_id = "" + gateway_id = (known after apply) + instance_id = "" + ipv6_cidr_block = "" + local_gateway_id = "" + nat_gateway_id = "" + network_interface_id = "" + transit_gateway_id = "" + vpc_endpoint_id = "" + vpc_peering_connection_id = "" }, ] + tags = { + "Name" = "route_zoomcamp" } + tags_all = { + "Name" = "route_zoomcamp" } + vpc_id = (known after apply) } # aws_route_table_association.assoc_zoomcamp will be created + resource "aws_route_table_association" "assoc_zoomcamp" { + id = (known after apply) + route_table_id = (known after apply) + subnet_id = (known after apply) } # aws_route_table_association.assoc_zoomcamp_2 will be created + resource "aws_route_table_association" "assoc_zoomcamp_2" { + id = (known after apply) + route_table_id = (known after apply) + subnet_id = (known after apply) } # aws_route_table_association.assoc_zoomcamp_3 will be created + resource "aws_route_table_association" "assoc_zoomcamp_3" { + id = (known after apply) + route_table_id = (known after apply) + subnet_id = (known after apply) } # aws_security_group.sec_gr_zoomcamp will be created + resource "aws_security_group" "sec_gr_zoomcamp" { + arn = (known after apply) + description = "Allow WEB inbound traffic" + egress = [ + { + cidr_blocks = [ + "0.0.0.0/0", ] + description = "" + from_port = 0 + ipv6_cidr_blocks = [ + "::/0", ] + prefix_list_ids = [] + protocol = "-1" + security_groups = [] + self = false + to_port = 0 }, ] + id = (known after apply) + ingress = [ + { + cidr_blocks = [ + "0.0.0.0/0", ] + description = "HTTP" + from_port = 80 + ipv6_cidr_blocks = [] + prefix_list_ids = [] + protocol = "tcp" + security_groups = [] + self = false + to_port = 80 }, + { + cidr_blocks = [ + "0.0.0.0/0", ] + description = "HTTPS" + from_port = 443 + ipv6_cidr_blocks = [] + prefix_list_ids = [] + protocol = "tcp" + security_groups = [] + self = false + to_port = 443 }, + { + cidr_blocks = [ + "0.0.0.0/0", ] + description = "SSH" + from_port = 22 + ipv6_cidr_blocks = [] + prefix_list_ids = [] + protocol = "tcp" + security_groups = [] + self = false + to_port = 22 }, + { + cidr_blocks = [ + "0.0.0.0/0", ] + description = "redshift" + from_port = 5439 + ipv6_cidr_blocks = [] + prefix_list_ids = [] + protocol = "tcp" + security_groups = [] + self = false + to_port = 5439 }, ] + name = "sec_gr_zoomcamp" + name_prefix = (known after apply) + owner_id = (known after apply) + revoke_rules_on_delete = false + tags = { + "Name" = "allow_all_WEB" } + tags_all = { + "Name" = "allow_all_WEB" } + vpc_id = (known after apply) } # aws_subnet.sub_zoomcamp will be created + resource "aws_subnet" "sub_zoomcamp" { + arn = (known after apply) + assign_ipv6_address_on_creation = false + availability_zone = "us-east-1a" + availability_zone_id = (known after apply) + cidr_block = "172.16.10.0/24" + enable_dns64 = false + enable_resource_name_dns_a_record_on_launch = false + enable_resource_name_dns_aaaa_record_on_launch = false + id = (known after apply) + ipv6_cidr_block_association_id = (known after apply) + ipv6_native = false + map_public_ip_on_launch = true + owner_id = (known after apply) + private_dns_hostname_type_on_launch = (known after apply) + tags = { + "Name" = "sub_zoomcamp" } + tags_all = { + "Name" = "sub_zoomcamp" } + vpc_id = (known after apply) } # aws_subnet.sub_zoomcamp_2 will be created + resource "aws_subnet" "sub_zoomcamp_2" { + arn = (known after apply) + assign_ipv6_address_on_creation = false + availability_zone = "us-east-1b" + availability_zone_id = (known after apply) + cidr_block = "172.16.11.0/24" + enable_dns64 = false + enable_resource_name_dns_a_record_on_launch = false + enable_resource_name_dns_aaaa_record_on_launch = false + id = (known after apply) + ipv6_cidr_block_association_id = (known after apply) + ipv6_native = false + map_public_ip_on_launch = true + owner_id = (known after apply) + private_dns_hostname_type_on_launch = (known after apply) + tags = { + "Name" = "sub_zoomcamp_2" } + tags_all = { + "Name" = "sub_zoomcamp_2" } + vpc_id = (known after apply) } # aws_subnet.sub_zoomcamp_3 will be created + resource "aws_subnet" "sub_zoomcamp_3" { + arn = (known after apply) + assign_ipv6_address_on_creation = false + availability_zone = "us-east-1c" + availability_zone_id = (known after apply) + cidr_block = "172.16.12.0/24" + enable_dns64 = false + enable_resource_name_dns_a_record_on_launch = false + enable_resource_name_dns_aaaa_record_on_launch = false + id = (known after apply) + ipv6_cidr_block_association_id = (known after apply) + ipv6_native = false + map_public_ip_on_launch = true + owner_id = (known after apply) + private_dns_hostname_type_on_launch = (known after apply) + tags = { + "Name" = "sub_zoomcamp_3" } + tags_all = { + "Name" = "sub_zoomcamp_3" } + vpc_id = (known after apply) } # aws_vpc.vpc_zoomcamp will be created + resource "aws_vpc" "vpc_zoomcamp" { + arn = (known after apply) + cidr_block = "172.16.0.0/16" + default_network_acl_id = (known after apply) + default_route_table_id = (known after apply) + default_security_group_id = (known after apply) + dhcp_options_id = (known after apply) + enable_classiclink = (known after apply) + enable_classiclink_dns_support = (known after apply) + enable_dns_hostnames = true + enable_dns_support = true + enable_network_address_usage_metrics = (known after apply) + id = (known after apply) + instance_tenancy = "default" + ipv6_association_id = (known after apply) + ipv6_cidr_block = (known after apply) + ipv6_cidr_block_network_border_group = (known after apply) + main_route_table_id = (known after apply) + owner_id = (known after apply) + tags = { + "Name" = "vpc_zoomcamp" } + tags_all = { + "Name" = "vpc_zoomcamp" } } Plan: 12 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_vpc.vpc_zoomcamp: Creating... aws_vpc.vpc_zoomcamp: Still creating... [10s elapsed] aws_vpc.vpc_zoomcamp: Creation complete after 15s [id=vpc-001e06476c1d29cfe] aws_subnet.sub_zoomcamp: Creating... aws_subnet.sub_zoomcamp_2: Creating... aws_internet_gateway.gtw_zoomcamp: Creating... aws_subnet.sub_zoomcamp_3: Creating... aws_security_group.sec_gr_zoomcamp: Creating... aws_internet_gateway.gtw_zoomcamp: Creation complete after 2s [id=igw-02e57082698df5796] aws_route_table.route_zoomcamp: Creating... aws_route_table.route_zoomcamp: Creation complete after 2s [id=rtb-080c128845ef06560] aws_security_group.sec_gr_zoomcamp: Creation complete after 5s [id=sg-0715c199a09b55e6c] aws_subnet.sub_zoomcamp: Still creating... [10s elapsed] aws_subnet.sub_zoomcamp_2: Still creating... [10s elapsed] aws_subnet.sub_zoomcamp_3: Still creating... [10s elapsed] aws_subnet.sub_zoomcamp: Creation complete after 12s [id=subnet-0453a262b9adb3bc3] aws_route_table_association.assoc_zoomcamp: Creating... aws_network_interface.net_inter_zoomcamp: Creating... aws_subnet.sub_zoomcamp_2: Creation complete after 12s [id=subnet-0939afa9274fae453] aws_route_table_association.assoc_zoomcamp_2: Creating... aws_subnet.sub_zoomcamp_3: Creation complete after 12s [id=subnet-0204934ee9fc6b3fd] aws_route_table_association.assoc_zoomcamp_3: Creating... aws_route_table_association.assoc_zoomcamp: Creation complete after 1s [id=rtbassoc-0eed4a69ac3fa0699] aws_route_table_association.assoc_zoomcamp_2: Creation complete after 1s [id=rtbassoc-0f61ab24769313127] aws_network_interface.net_inter_zoomcamp: Creation complete after 1s [id=eni-0daac3ef551306777] aws_instance.ec2_zoomcamp: Creating... aws_route_table_association.assoc_zoomcamp_3: Creation complete after 1s [id=rtbassoc-05da2901e56c2b98b] aws_instance.ec2_zoomcamp: Still creating... [10s elapsed] aws_instance.ec2_zoomcamp: Still creating... [20s elapsed] aws_instance.ec2_zoomcamp: Still creating... [30s elapsed] aws_instance.ec2_zoomcamp: Creation complete after 35s [id=i-05c97ba2f73a2361f] Apply complete! Resources: 12 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/iron-gantry-412713/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "iron-gantry-412713-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=iron-gantry-412713-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Testest 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "bigquery_data" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "de-zoomcamp-2024-412511" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "b4f_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-en-404300/datasets/demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.terraform-basics-bucket: Refreshing state... [id=terraform-de-camp-butket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.terraform-basics-dataset will be created + resource "google_bigquery_dataset" "terraform-basics-dataset" { + creation_time = (known after apply) + dataset_id = "terraform_de_camp_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "terraform-de-camp" + self_link = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.terraform-basics-dataset: Creating... google_bigquery_dataset.terraform-basics-dataset: Creation complete after 3s [id=projects/terraform-de-camp/datasets/terraform_de_camp_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "yuyuan_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "big-cargo-412019" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-412019-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/big-cargo-412019/datasets/yuyuan_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-412019-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) root@DESKTOP-KKDQBBO:/mnt/c/Users/USER/Desktop/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables# terraform apply -var-file variables.tfvars -auto-approve Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "datatalk_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "integrated-net-411608" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datatalk_storage" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Creation complete after 18s [id=datatalk_storage] google_bigquery_dataset.demo_dataset: Still creating... [20s elapsed] google_bigquery_dataset.demo_dataset: Creation complete after 27s [id=projects/integrated-net-411608/datasets/datatalk_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "rugged-silo-412420" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "rugged-silo-412420-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/rugged-silo-412420/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 0s [id=rugged-silo-412420-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
don't want to register in cloud... 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "southamerica-east1" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412223" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "SOUTHAMERICA-EAST1" + name = "dtc-de-course-412223-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-412223-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412223/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA" + name = "dtc-de-course-412407-terrabucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.auto-expire: Creating... google_storage_bucket.auto-expire: Creation complete after 6s [id=dtc-de-course-412407-terrabucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "linen-walker-412417" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412417-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_bigquery_dataset.demo_dataset: Creation complete after 11s [id=projects/linen-walker-412417/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 12s [id=terraform-demo-412417-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
n/a 1
Terraform will perform the following actions: # google_bigquery_dataset.my_dataset will be created + resource "google_bigquery_dataset" "my_dataset" { + creation_time = (known after apply) + dataset_id = "foo" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "stoked-champion-410819" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.my_bucket will be created + resource "google_storage_bucket" "my_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "my-super-unique-bucket-xdddddddd" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.my_dataset: Creating... google_storage_bucket.my_bucket: Creating... google_bigquery_dataset.my_dataset: Creation complete after 1s [id=projects/stoked-champion-410819/datasets/foo] google_storage_bucket.my_bucket: Creation complete after 2s [id=my-super-unique-bucket-xdddddddd] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) pedro@instance-1:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-411919/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo--411919-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 0s [id=terraform-demo--411919-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
The provisioning of cloud resources, for instance, is one of the main use cases of Terraform. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + description = "A dataset created by Terraform" + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "test-terraform-412514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "test-terraform-412514-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/test-terraform-412514/datasets/terraform_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=test-terraform-412514-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform-demo-terra-bucket: Creating... 1
Null 1
google_bigquery_dataset.demo_dataset will be created resource "google_bigquery_dataset" "demo_dataset" { creation_time = (known after apply) dataset_id = "dtc_de_course_01_2024_demo_dataset" default_collation = (known after apply) delete_contents_on_destroy = false effective_labels = (known after apply) etag = (known after apply) id = (known after apply) is_case_insensitive = (known after apply) last_modified_time = (known after apply) location = "US" max_time_travel_hours = (known after apply) project = "dtc-de-course-01-2024" self_link = (known after apply) storage_billing_model = (known after apply) terraform_labels = (known after apply) } google_storage_bucket.demo-bucket will be created resource "google_storage_bucket" "demo-bucket" { effective_labels = (known after apply) force_destroy = true id = (known after apply) location = "US" name = "dtc_de_course_01_2024_terraform_demo_terra_bucket" project = (known after apply) public_access_prevention = (known after apply) rpo = (known after apply) self_link = (known after apply) storage_class = "STANDARD" terraform_labels = (known after apply) uniform_bucket_level_access = (known after apply) url = (known after apply) lifecycle_rule { action { type = "AbortIncompleteMultipartUpload" } condition { age = 1 matches_prefix = [] matches_storage_class = [] matches_suffix = [] with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: ** 1
I'm not having access to GCP unfortunately 1
var.project The ID of the project in which to provision resources. Enter a value: core-forklift-412322 var.project_vars core-forklift-412322 Enter a value: core-forklift-412322 google_storage_bucket.bucket: Refreshing state... [id=my-unique-bucket-bucket-bucket-bucket-bucket] 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "rapid-will-412408" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "rapid-will-412408-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/rapid-will-412408/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=rapid-will-412408-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.my_dataset will be created + resource "google_bigquery_dataset" "my_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_datasets" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = { + "environment" = "homework" } + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "environment" = "homework" } + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412415" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "environment" = "homework" } } # google_storage_bucket.my_bucket will be created + resource "google_storage_bucket" "my_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA" + name = "de-zoomcamp-bucket-26012024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.my_dataset: Creating... google_storage_bucket.my_bucket: Creating... google_bigquery_dataset.my_dataset: Creation complete after 2s [id=projects/de-zoomcamp-412415/datasets/de_zoomcamp_datasets] google_storage_bucket.my_bucket: Creation complete after 5s [id=de-zoomcamp-bucket-26012024] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/**] google_storage_bucket.bucket: Creation complete after 1s [id=**] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411617" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-de-course-411617_demo_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-411617_demo_bucket] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/dtc-de-course-411617/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
@BuzzKanga ➜ /workspaces/mlzde (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.default will be created + resource "google_bigquery_dataset" "default" { + creation_time = (known after apply) + dataset_id = "foo" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "This is a test description" + effective_labels = { + "env" = "default" } + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "env" = "default" } + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "direct-raceway-412400" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "env" = "default" } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "direct-raceway-412400-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.default: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=direct-raceway-412400-terra-bucket] google_bigquery_dataset.default: Creation complete after 2s [id=projects/direct-raceway-412400/datasets/foo] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "earnest-goal-410521" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket2024earnest" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/earnest-goal-410521/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket2024earnest] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "crafty-ring-411313" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "crafty-ring-411313-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/crafty-ring-411313/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=crafty-ring-411313-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/massive-oasis-412719/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=massive-oasis-412719-terra-bucket] 1
Don't have google cloud account 1
https://github.com/neema233/ZoomCamp2024/tree/main/terraform 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST3" + max_time_travel_hours = (known after apply) + project = "tough-cider-412619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST3" + name = "tough-cider-412619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Haven't done this yet 1
(base) cloudymriyuiitb@de2024zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terrademo-bucket will be created + resource "google_storage_bucket" "terrademo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412315-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.terrademo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/terraform-demo-412315/datasets/demo_dataset] google_storage_bucket.terrademo-bucket: Creation complete after 1s [id=terraform-demo-412315-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dataenginner-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dataenginner-zoomcamp-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dataenginner-zoomcamp/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dataenginner-zoomcamp-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
yes 1
kotenoru@DESKTOP-9GT25FU:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "homework1_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "spartan-shadow-194608" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-homework1-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/spartan-shadow-194608/datasets/homework1_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-homework1-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST3" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412013" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST3" + name = "terraform-demo-412013-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412013/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412013-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=dtc-de-bucket41119] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/smooth-state-411119/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "fine-mile-411900" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-zoomcamp-terraform-demo-225" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/fine-mile-411900/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=data-zoomcamp-terraform-demo-225] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) z82024@F homework % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "ny-rides-z82024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "z82024-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/ny-rides-z82024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 4s [id=z82024-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) z82024@F homework % 1
│ Error: Error creating Dataset: googleapi: Error 404: Project dtc-homework-1-412309 is not found. Make sure it references valid GCP project that hasn't been deleted.; Project id: dtc-homework-1-412309, notFound │ │ with google_bigquery_dataset.demo_dataset, │ on main.tf line 31, in resource "google_bigquery_dataset" "demo_dataset": │ 31: resource "google_bigquery_dataset" "demo_dataset" { 1
/workspaces/DEZoom_camp_ofp/terraform (main) $ terraform apply var.project dtc-de-ofp Enter a value: dtc-de-ofp Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "southamerica-west1" + max_time_travel_hours = (known after apply) + project = "dtc-de-ofp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "SOUTHAMERICA-WEST1" + name = "dtc_data_lake_dtc-de-ofp" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-ofp/datasets/trips_data_all] ╷ │ Error: googleapi: Error 403: The billing account for the owning project is disabled in state absent, accountDisabled │ │ with google_storage_bucket.data-lake-bucket, │ on main.tf line 19, in resource "google_storage_bucket" "data-lake-bucket": │ 19: resource "google_storage_bucket" "data-lake-bucket" { 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.test-bucket-1971: Creating... google_storage_bucket.test-bucket-1971: Creation complete after 3s [id=test-bucket-1971] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/careful-voyage-411506/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.terraform_dataset will be created + resource "google_bigquery_dataset" "terraform_dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast2" + max_time_travel_hours = (known after apply) + project = "robust-episode-412509" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "dtc_data_lake_ny-rides-dan" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.terraform_dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_ny-rides-dan] google_bigquery_dataset.terraform_dataset: Creation complete after 3s [id=projects/robust-episode-412509/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... 1
N/A, need to re-enable GCP account 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "test-project-412700" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.test_bucket will be created + resource "google_storage_bucket" "test_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "aziz-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.test_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/test-project-412700/datasets/demo_dataset] google_storage_bucket.test_bucket: Creation complete after 2s [id=aziz-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) chinaemeremohajianya@chinaemeremsair terrademo % terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=naeme-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "naeme_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "helpful-quanta-412201" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/helpful-quanta-412201/datasets/naeme_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "deft-seat-123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Omkar-Gavali 1
Mario@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-412422/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412422-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412422-demo-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset-vb-410919" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "vibestream-410919" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-vb-410919" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/classe-zoomcamp/datasets/taxi_zoomcamp] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.taxi_zoomcamp will be created + resource "google_storage_bucket" "taxi_zoomcamp" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "taxi_zoom_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.taxi_zoomcamp: Creating... google_storage_bucket.taxi_zoomcamp: Creation complete after 1s [id=taxi_zoom_bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "crucial-decoder-412722" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "crucial-decoder-412722-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/crucial-decoder-412722/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=crucial-decoder-412722-terra-bucket] 1
(base) pasha@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp2024-412614" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcamp2024-412614-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dezoomcamp2024-412614/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dezoomcamp2024-412614-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "radiant-firefly-412220" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "radiant-firefly-412220-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/turing-mark-412616/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "frolovconst-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=frolovconst-terraform-demo-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_bq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "trusty-force-412716" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "trusty-force-412716_terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/trusty-force-412716/datasets/terraform_bq_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=trusty-force-412716_terraform-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "gcp-demo-411815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "gcp-demo-411815-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. ataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/gcp-demo-411815/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=gcp-demo-411815-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "test_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zinc-union-412402" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zinc-union-412402-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
(base) will@instance-1:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "axial-gist-411121" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "cch-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/axial-gist-411121/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=cch-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.gcp_bucket_1 will be created + resource "google_storage_bucket" "gcp_bucket_1" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcamp2024-412618_demo-bucket-1" + project = (known after apply) + public_access_prevention = "enforced" + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } # google_storage_bucket.gcp_bucket_2 will be created + resource "google_storage_bucket" "gcp_bucket_2" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-EAST1" + name = "dezoomcamp2024-412618_demo-bucket-2" + project = (known after apply) + public_access_prevention = "enforced" + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.gcp_bucket_2: Creating... google_storage_bucket.gcp_bucket_1: Creating... google_storage_bucket.gcp_bucket_2: Creation complete after 1s [id=dezoomcamp2024-412618_demo-bucket-2] google_storage_bucket.gcp_bucket_1: Creation complete after 1s [id=dezoomcamp2024-412618_demo-bucket-1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zc-411321" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zc-411321-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zc-411321/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zc-411321-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412612" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412612-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412612/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412612-terra-bucket] 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.bq_demo_dataset will be created + resource "google_bigquery_dataset" "bq_demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412401" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-bucket-dtc-de-course-412401" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.bq_demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.bq_demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412401/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-bucket-dtc-de-course-412401] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412306" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-jj" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412306/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-jj] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
@hmuibi ➜ /workspaces/HauwaZoomcamp2024/terraform/keys (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "just-program-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.module1homework-bucket will be created + resource "google_storage_bucket" "module1homework-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "just-program-411315-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.module1homework-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/just-program-411315/datasets/demo_dataset] google_storage_bucket.module1homework-bucket: Creation complete after 1s [id=just-program-411315-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoom-camp-411609" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoom-camp-411609/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoomcamp-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "onyx-hangout-411709" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-zoomcamp_wk1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
(base) juand@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/test-402517/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "juan-lozano-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=juan-lozano-terraform-demo-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
erraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-1984-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: no Apply cancelled. @AIDIF84 ➜ /workspaces/zoomcampde_2024_aidi/terra (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-1984-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-1984-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "trips_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "australia-southeast1" + max_time_travel_hours = (known after apply) + project = "de_study" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform-demo-bucket will be created + resource "google_storage_bucket" "terraform-demo" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST1" + name = "de-study-data-lake" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.terraform-demo: Creating... google_storage_bucket.terraform-demo: Creation complete after 2s [id=de-study-data-lake] google_bigquery_dataset.terraform-demo: Creation complete after 3s [id=projects/de-study/datasets/trips_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtcde-course" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket-cohort will be created + resource "google_storage_bucket" "demo-bucket-cohort" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtcde-course-cohort-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket-cohort: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtcde-course/datasets/demo_dataset] google_storage_bucket.demo-bucket-cohort: Creation complete after 2s [id=dtcde-course-cohort-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412512" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-zoomcamp-bucket will be created + resource "google_storage_bucket" "de-zoomcamp-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-412512-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.de-zoomcamp-bucket: Creating... google_storage_bucket.de-zoomcamp-bucket: Creation complete after 2s [id=de-zoomcamp-412512-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-412512/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412419" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-terraform-demo-terra-bucket-a1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "Nire Terraform proiektuu" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-demo-411906-terra-bucket] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-demo-411906/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/airy-signer-412501/dataset s/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demohw1-bucket will be created + resource "google_storage_bucket" "demohw1-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-hw1-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demohw1-bucket: Creating... google_storage_bucket.demohw1-bucket: Creation complete after 1s [id=terraform-demo-hw1-terra-buc ket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "data-412218-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=data-412218-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-412820" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform-demo will be created + resource "google_storage_bucket" "terraform-demo" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412420-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.terraform-demo: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-rides-412820/datasets/demo_dataset] google_storage_bucket.terraform-demo: Creation complete after 1s [id=terraform-demo-412420-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "krause-zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "krause-zoomcamp-2024-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/krause-zoomcamp-2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=krause-zoomcamp-2024-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "still-totality-411905" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "still-totality-411905-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=still-totality-411905-terra-bucket] google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/still-totality-411905/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412622" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412622-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412622/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-412622-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "sugi-learn" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "sugi-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/sugi-learn/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=sugi-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "eminent-yen-411522" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.bucket-demo will be created + resource "google_storage_bucket" "bucket-demo" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "eminent-yen-411522-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.bucket-demo: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/eminent-yen-411522/datasets/demo_dataset] google_storage_bucket.bucket-demo: Creation complete after 1s [id=eminent-yen-411522-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "playground-s-11-bf1171a7" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "sch-wolf-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
➜ terraform-demo terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dezoomcamp_412716_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-412716" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcamp-412716-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dezoomcamp-412716/datasets/dezoomcamp_412716_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dezoomcamp-412716-bucket] 1
youngc@C02G14Z3MD6M zoomcamp2024 % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datacamp2004" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datacamp2004-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/datacamp2004/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=datacamp2004-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. youngc@C02G14Z3MD6M zoomcamp2024 % 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "fifth-repeater-411616" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "fifth-repeater-411616-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/fifth-repeater-411616/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=fifth-repeater-411616-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
na 1
(base) paul@de-zoomcamp-vm:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "adroit-medium-379911" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "adroit-medium-379911-terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dtc_de_zm_2024_nyc_trips_data" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-zc-411708" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-de-zc-411708_nyc_trips_data" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-zc-411708/datasets/dtc_de_zm_2024_nyc_trips_data] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=dtc-de-zc-411708_nyc_trips_data] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_demo_2_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-2024-411721" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-demo-2-bucketname" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-2024-411721/datasets/zoomcamp_demo_2_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoomcamp-demo-2-bucketname] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "eminent-torch-412600" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "eminent-torch-412600-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_storage_bucket.data-lake-bucket: Refreshing state... [id=rd-de-course-terra-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "rd-de-course-bigquery-dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "rd-de-course" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket must be replaced -/+ resource "google_storage_bucket" "data-lake-bucket" { - default_event_based_hold = false -> null ~ id = "rd-de-course-terra-bucket" -> (known after apply) - labels = {} -> null ~ name = "rd-de-course-terra-bucket" -> "rd-de-course-terra-bucket-homework" # forces replacement ~ project = "rd-de-course" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/rd-de-course-terra-bucket" -> (known after apply) ~ url = "gs://rd-de-course-terra-bucket" -> (known after apply) # (4 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 30 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } # (1 unchanged block hidden) } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terra-demo-2] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all_1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412605" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412605/datasets/trips_data_all_1] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datatalks-411609" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "horizon-raw-data" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/datatalks-411609/datasets/demo_dataset] google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Creation complete after 17s [id=horizon-raw-data] 1
hernanviscarra@MacBook-Pro-de-Hernan Terraform % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411514" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-411514-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-411514/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-411514-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. hernanviscarra@MacBook-Pro-de-Hernan Terraform % 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_zoomcamp_2024_rdilone" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-2024-rdilone" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo_bucket_zoomcamp_2024_rdilone" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/zoomcamp-2024-rdilone/datasets/demo_dataset_zoomcamp_2024_rdilone] google_storage_bucket.demo-bucket: Creation complete after 1s [id=demo_bucket_zoomcamp_2024_rdilone] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "coherent-ranger-412815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "my-project-icoherent-ranger-412815-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/coherent-ranger-412815/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=my-project-icoherent-ranger-412815-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "zc_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "my-rides-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "my-rides-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/my-rides-zoomcamp/datasets/zc_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=my-rides-zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=data-engineering-course-412921-data-lake] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "root-wharf-412723" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "root-wharf-412723-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/root-wharf-412723/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=root-wharf-412723-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "test-project-412700" + self_link = (known after apply) 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "influential-bit-412922" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "influential-bit-412922-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/influential-bit-412922/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=influential-bit-412922-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-template" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-template-bucket-woojin" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
@ArbenKqiku ➜ .../ZoomCamp-2024/data-engineering-zoomcamp/week_1_basics_n_setup/1_terraform_gcp (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + max_time_travel_hours = (known after apply) + project = "terraform-412318" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "terraform-412318-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-412318-demo-bucket] google_bigquery_dataset.demo-dataset: Creation complete after 1s [id=projects/terraform-412318/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-411915" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcamp-411915-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dezoomcamp-411915/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dezoomcamp-411915-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp-2024-412121-dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-2024-412121" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-2024-412121-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
C:\Personal\Training\dataengineering\terraform>terraform apply google_storage_bucket.demo-bucket: Refreshing state... [id=data-engineering-akl-training] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "training_data_1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "data-engineering-akl" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/data-engineering-akl/datasets/training_data_1] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. C:\Personal\Training\dataengineering\terraform> 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/kjproject1/datasets/kj_big_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-kj-test-bucket] 1
@eokwukwe ➜ /workspaces/zoomcamp-data-engineer-2024 (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "taxi_trips_data" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + max_time_travel_hours = (known after apply) + project = "zoomcamp-2024-411805" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "zoomcamp_data_lake_zoomcamp-2024-411805" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/zoomcamp-2024-411805/datasets/taxi_trips_data] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=zoomcamp_data_lake_zoomcamp-2024-411805] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
erraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "keen-hangar-411922" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "keen-hangar-411922-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/keen-hangar-411922/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=keen-hangar-411922-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-EAST2" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411808" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-EAST2" + name = "terraform-dtc-de-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-411808/datasets/demo_dataset] google_storage_bucket.demo-bucket: Still creating... [10s elapsed] google_storage_bucket.demo-bucket: Still creating... [20s elapsed] google_storage_bucket.demo-bucket: Still creating... [30s elapsed] google_storage_bucket.demo-bucket: Still creating... [40s elapsed] google_storage_bucket.demo-bucket: Still creating... [50s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m0s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m10s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m20s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m30s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m40s elapsed] google_storage_bucket.demo-bucket: Still creating... [1m50s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m0s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m10s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m20s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m30s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m40s elapsed] google_storage_bucket.demo-bucket: Still creating... [2m50s elapsed] google_storage_bucket.demo-bucket: Creation complete after 2m58s [id=terraform-dtc-de-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "peak-academy-343418" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "peak-academy-343418-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/peak-academy-343418/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 0s [id=peak-academy-343418-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_demo_412204_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412204" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412204-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412204/datasets/terraform_demo_412204_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412204-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
crowley@M1168  ~/workspace/de-zoomcamp/WK1/terraform   main  terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.cr-demo_dataset will be created + resource "google_bigquery_dataset" "cr-demo_dataset" { + creation_time = (known after apply) + dataset_id = "cr_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "australia-southeast2" + max_time_travel_hours = (known after apply) + project = "cr-de-zoomcamp-411206" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.cr-demo-bucket will be created + resource "google_storage_bucket" "cr-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST2" + name = "cr_demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.cr-demo_dataset: Creating... google_storage_bucket.cr-demo-bucket: Creating... google_storage_bucket.cr-demo-bucket: Creation complete after 3s [id=cr_demo-bucket] google_bigquery_dataset.cr-demo_dataset: Creation complete after 4s [id=projects/cr-de-zoomcamp-411206/datasets/cr_demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=de-course-411610-demo-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-course-411610" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-course-411610/datasets/demo_dataset1] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset-zy will be created + resource "google_bigquery_dataset" "dataset-zy" { + creation_time = (known after apply) + dataset_id = "zy_zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412301" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.bucket-zy will be created + resource "google_storage_bucket" "bucket-zy" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "ze-zoomcamp-zy" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "primeval-nectar-256815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "primeval-nectar-256815-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/primeval-nectar-256815/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=primeval-nectar-256815-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
RJonyo@ICRAFKE25926 MINGW64 /c/rich/data-engineering/PROJECTS/zoomcamp-2024/01-docker-terraform/1_terraform_gcp (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "my-bkt" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.auto-expire: Creating... ╷ │ Error: googleapi: Error 409: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again., conflict │ │ with google_storage_bucket.auto-expire, │ on main.tf line 17, in resource "google_storage_bucket" "auto-expire": │ 17: resource "google_storage_bucket" "auto-expire" { │ ╵ (base) RJonyo@ICRAFKE25926 MINGW64 /c/rich/data-engineering/PROJECTS/zoomcamp-2024/01-docker-terraform/1_terraform_gcp (main) $ 1
google_storage_bucket.demo-bucket: Refreshing state... [id=bts-loves-anwulika] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/tranquil-door-410801/datasets/demo_dataset] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed 1
(base) marfanyan@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_thrd" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-marfanyan" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket_thrd" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-rides-marfanyan/datasets/demo_dataset_thrd] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket_thrd] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) marfanyan@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ 1
PS C:\Users\13612\Datacamp\terrademo> terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-410814" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.bucket will be created + resource "google_storage_bucket" "bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-410814-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-course-410814/datasets/dataset] google_storage_bucket.bucket: Creation complete after 2s [id=dtc-de-course-410814-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/datatalkszoomcamp-411713/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datatalkszoomcamp-411713" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-tanunpuchr" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/datatalkszoomcamp-411713/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-tanunpuchr] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezc2024-411905" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezc2024-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dezc2024-411905/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dezc2024-bucket] 1
(base) user@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_basic$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "test_dataset_de" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "robotic-vista-412114" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "ASIA-NORTHEAST3" + name = "test-bucket-de2" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols:   + create Terraform will perform the following actions:   **# google_bigquery_dataset.demo_dataset** will be created   + resource "google_bigquery_dataset" "demo_dataset" {       + creation_time              = (known after apply)       + dataset_id                 = "trips_data"       + default_collation          = (known after apply)       + delete_contents_on_destroy = false       + effective_labels           = (known after apply)       + etag                       = (known after apply)       + id                         = (known after apply)       + is_case_insensitive        = (known after apply)       + last_modified_time         = (known after apply)       + location                   = "US"       + max_time_travel_hours      = (known after apply)       + project                    = "jan-swart"       + self_link                  = (known after apply)       + storage_billing_model      = (known after apply)       + terraform_labels           = (known after apply)     }   **# google_storage_bucket.demo-bucket** will be created   + resource "google_storage_bucket" "demo-bucket" {       + effective_labels            = (known after apply)       + force_destroy               = true       + id                          = (known after apply)       + location                    = "US"       + name                        = "trips-batch-bucket"       + project                     = (known after apply)       + public_access_prevention    = (known after apply)       + self_link                   = (known after apply)       + storage_class               = "STANDARD"       + terraform_labels            = (known after apply)       + uniform_bucket_level_access = (known after apply)       + url                         = (known after apply)       + lifecycle_rule {           + action {               + type = "AbortIncompleteMultipartUpload"             }           + condition {               + age                   = 1               + matches_prefix        = []               + matches_storage_class = []               + matches_suffix        = []               + with_state            = (known after apply)             }         }     } **Plan:** 2 to add, 0 to change, 0 to destroy. **Do you want to perform these actions?**   Terraform will perform the actions described above.   Only 'yes' will be accepted to approve.   **Enter a value:** yes **google_bigquery_dataset.demo_dataset: Creating...** **google_storage_bucket.demo-bucket: Creating...** **google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/jan-swart/datasets/trips_data]** **google_storage_bucket.demo-bucket: Creation complete after 4s [id=trips-batch-bucket]** **Apply complete! Resources: 2 added, 0 changed, 0 destroyed.** 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-eng-411707" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-eng-411707-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-eng-411707/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=data-eng-411707-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=arcane-attic-412509-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "arcane-attic-412509" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/arcane-attic-412509/datasets/ny_taxi] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dct-de-410921" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "demo-bucket-dc-de-410921" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dct-de-410921/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo-bucket-dc-de-410921] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dte-course" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dte-course/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) dashel@dashel-G7-7790:~/Documents/data-eng-zoomcamp/Homeworks/data_eng_zoomcamp_hw_module1/terraform$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "stellar-orb-412123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "stellar-orb-412123-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/stellar-orb-412123/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=stellar-orb-412123-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_example_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-409120" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-251223" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: y Apply cancelled. ribjoao@LAPTOP-6IUOH675:~/desktop/data-engineer-zoocamp/week1_1_basics_n_setup/1_terraform$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_example_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-409120" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-251223" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=terraform-demo-251223] google_bigquery_dataset.demo-dataset: Creation complete after 3s [id=projects/terraform-demo-409120/datasets/demo_example_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dataengineeringzoomcamp-412520/datasets/first_bq_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST3" + name = "tsbalzhanov-dtc-week-1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=tsbalzhanov-dtc-week-1] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "example_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "data-engineering-course-411410" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "data-engineering-course-411410-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
(base) silverlining:terraform barbaraatkins$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "linear_archway_412518_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "linear-archway-412518" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "inear-archway-412518-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/linear-archway-412518/datasets/linear_archway_412518_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=inear-archway-412518-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
The result: (base) tetianaomelchenko@Tetianas-Air 1_terraform_gcp % terraform apply var.project dezc2024-taxi-data Enter a value: dezc2024-taxi-data Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west1" + max_time_travel_hours = (known after apply) + project = "dezc2024-taxi-data" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "dezc2024_data_lake_dezc2024-taxi-data" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dezc2024_data_lake_dezc2024-taxi-data] google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/dezc2024-taxi-data/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
var.project Your GCP Project ID Enter a value: <omitted> Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "<omitted>" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_<omitted>" + project = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_storage_class = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/<omitted>/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_<omitted>] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/de-zoomcamp-412201/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp2024-412620" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcamp2024-412620-terraform" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "data_zoomcamp_2024" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "dataset for test" + effective_labels = { + "env" = "default" } + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "env" = "default" } + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-412209" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "env" = "default" } + access { + domain = "hashicorp.com" + role = "READER" } } # google_storage_bucket.bucket-demo will be created + resource "google_storage_bucket" "bucket-demo" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-bucket-2024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.bucket-demo: Creating... google_bigquery_dataset.dataset: Creating... google_storage_bucket.bucket-demo: Creation complete after 3s [id=data-bucket-2024] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/de-zoomcamp-2024-412209/datasets/data_zoomcamp_2024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ethereal-smoke-268310/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-ethereal-smoke-268310-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "hw1_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "inbound-ship-412204" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "inbound-ship-412204-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/inbound-ship-412204/datasets/hw1_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=inbound-ship-412204-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-412002" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-clauff" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-412002/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-clauff] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "sunny-web-411214" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "sunny-web-411214-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/sunny-web-411214/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 5s [id=sunny-web-411214-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412119" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "my-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-412119/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=my-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "example_dataset" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "This is a test description" + effective_labels = { + "env" = "default" } + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "env" = "default" } + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411800" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "env" = "default" } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-411800-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=de-zoomcamp-411800-terra-bucket] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/de-zoomcamp-411800/datasets/example_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
➜ homework-1 git:(main) ✗ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dataset_unique_name999" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zoomcamp-412016" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-terra-bucket-unique-name999" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-unique-name999] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/zoomcamp-412016/datasets/dataset_unique_name999] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "majestic-gizmo-412717" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-bucket-demo-zoomcamp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/majestic-gizmo-412717/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-bucket-demo-zoomcamp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.week_1_hw_dataset will be created + resource "google_bigquery_dataset" "week_1_hw_dataset" { + creation_time = (known after apply) + dataset_id = "week_1_hw_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "ngulik-de-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.week-1-hw-bucket will be created + resource "google_storage_bucket" "week-1-hw-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "week-1-hw-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.week_1_hw_dataset: Creating... google_storage_bucket.week-1-hw-bucket: Creating... google_storage_bucket.week-1-hw-bucket: Creation complete after 2s [id=week-1-hw-bucket] google_bigquery_dataset.week_1_hw_dataset: Creation complete after 2s [id=projects/ngulik-de-zoomcamp/datasets/week_1_hw_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=dataengineering2024-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dataengineering2024/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: ~ update in-place Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be updated in-place ~ resource "google_bigquery_dataset" "demo_dataset" { ~ default_partition_expiration_ms = 5184000000 -> 3600000 ~ default_table_expiration_ms = 5184000000 -> 3600000 id = "projects/dataengineering2024/datasets/demo_dataset" # (12 unchanged attributes hidden) # (4 unchanged blocks hidden) } Plan: 0 to add, 1 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Modifying... [id=projects/dataengineering2024/datasets/demo_dataset] google_bigquery_dataset.demo_dataset: Modifications complete after 2s [id=projects/dataengineering2024/datasets/demo_dataset] Apply complete! Resources: 0 added, 1 changed, 0 destroyed. 1
Acquiring state lock. This may take a few moments... Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dataset_big" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-engr-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-engr-zoomcamp_terabuck" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-engr-zoomcamp/datasets/dataset_big] google_storage_bucket.demo-bucket: Creation complete after 1s [id=data-engr-zoomcamp_terabuck] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
https://github.com/anurag629/DataEngineeringZoomCamp 1
I haven't the GCP account yet and i need some time to understand terraform 1
open-source tool by HashiCorp, used for provisioning infrastructure resources, supports DevOps best practices for change management. Managing configuration files in source control to maintain an ideal provisioning state for testing and production environments 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "plucky-cascade-305020" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "plucky-cascade-305020" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=plucky-cascade-305020] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/plucky-cascade-305020/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-409315/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-409315-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Armut@Armut-PC MINGW64 ~/Desktop/ZoomCamp-GCP $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "evident-beacon-412117" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "evident-beacon-412117-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=evident-beacon-412117-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/evident-beacon-412117/datasets/demo_dataset] 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/powerful-balm-408120/datasets/taxi_ride] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=powerful-balm-408120] 1
I previously configured Terraform a year ago during a previous course. Now, I want to use Terraform with Linux but don't have enough time for the installation process and configuring new Google credentials. I'll catch up on Terraform in the next parts of the course. 1
*****Initially had error because of terraform google version mismatch from the course***** @subin-babu-89 ➜ /workspaces/SuZoomcamp2024/terrademo (main) $ terraform apply ╷ │ Error: Inconsistent dependency lock file │ │ The following dependency selections recorded in the lock file are inconsistent with the current configuration: │ - provider registry.terraform.io/hashicorp/google: locked version selection 5.14.0 doesn't match the updated version constraints "5.6.0" │ │ To update the locked dependency selections to match a changed configuration, run: │ terraform init -upgrade ╵ _________________________________________________________________________________________ *****Fixed version mismatch error***** @subin-babu-89 ➜ /workspaces/SuZoomcamp2024/terrademo (main) $ terraform init -upgrade Initializing the backend... Initializing provider plugins... - Finding hashicorp/google versions matching "5.6.0"... - Installing hashicorp/google v5.6.0... - Installed hashicorp/google v5.6.0 (signed by HashiCorp) Terraform has made some changes to the provider dependency selections recorded in the .terraform.lock.hcl file. Review those changes and commit them to your version control system if they represent changes you intended to make. Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. _________________________________________________________________________________________ *****terraform apply. Errors out due to duplicate bucket name***** @subin-babu-89 ➜ /workspaces/SuZoomcamp2024/terrademo (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412904" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/dtc-de-course-412904/datasets/demo_dataset] ╷ │ Error: googleapi: Error 409: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again., conflict │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 17, in resource "google_storage_bucket" "demo-bucket": │ 17: resource "google_storage_bucket" "demo-bucket" { │ ╵ _________________________________________________________________________________________ *****Fixed bucket name. terraform apply. No error***** @subin-babu-89 ➜ /workspaces/SuZoomcamp2024/terrademo (main) $ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dtc-de-course-412904/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412904-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412904-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # aws_redshift_cluster.my_redshift_cluster will be created + resource "aws_redshift_cluster" "my_redshift_cluster" { + allow_version_upgrade = true + apply_immediately = false + aqua_configuration_status = (known after apply) + arn = (known after apply) + automated_snapshot_retention_period = 1 + availability_zone = (known after apply) + cluster_identifier = "zoomcamp-redshift-cluster" + cluster_namespace_arn = (known after apply) + cluster_nodes = (known after apply) + cluster_parameter_group_name = (known after apply) + cluster_public_key = (known after apply) + cluster_revision_number = (known after apply) + cluster_subnet_group_name = (known after apply) + cluster_type = "single-node" + cluster_version = "1.0" + database_name = (known after apply) + default_iam_role_arn = (known after apply) + dns_name = (known after apply) + encrypted = false + endpoint = (known after apply) + enhanced_vpc_routing = (known after apply) + iam_roles = (known after apply) + id = (known after apply) + kms_key_id = (known after apply) + maintenance_track_name = "current" + manual_snapshot_retention_period = -1 + master_password = (sensitive value) + master_password_secret_arn = (known after apply) + master_password_secret_kms_key_id = (known after apply) + master_username = "masteruser" + node_type = "dc2.large" + number_of_nodes = 1 + port = 5439 + preferred_maintenance_window = (known after apply) + publicly_accessible = true + skip_final_snapshot = false + tags_all = (known after apply) + vpc_security_group_ids = (known after apply) } # aws_s3_bucket.my_bucket will be created + resource "aws_s3_bucket" "my_bucket" { + acceleration_status = (known after apply) + acl = "private" + arn = (known after apply) + bucket = "zoomcamp-data-lake" + bucket_domain_name = (known after apply) + bucket_prefix = (known after apply) + bucket_regional_domain_name = (known after apply) + force_destroy = false + hosted_zone_id = (known after apply) + id = (known after apply) + object_lock_enabled = (known after apply) + policy = (known after apply) + region = (known after apply) + request_payer = (known after apply) + tags_all = (known after apply) + website_domain = (known after apply) + website_endpoint = (known after apply) + versioning { + enabled = true + mfa_delete = false } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes aws_s3_bucket.my_bucket: Creating... aws_redshift_cluster.my_redshift_cluster: Creating... aws_s3_bucket.my_bucket: Creation complete after 1s [id=zoomcamp-data-lake] aws_redshift_cluster.my_redshift_cluster: Still creating... [10s elapsed] aws_redshift_cluster.my_redshift_cluster: Still creating... [20s elapsed] aws_redshift_cluster.my_redshift_cluster: Still creating... [30s elapsed] aws_redshift_cluster.my_redshift_cluster: Still creating... [40s elapsed] aws_redshift_cluster.my_redshift_cluster: Still creating... [50s elapsed] aws_redshift_cluster.my_redshift_cluster: Still creating... [1m0s elapsed] aws_redshift_cluster.my_redshift_cluster: Creation complete after 1m4s [id=zoomcamp-redshift-cluster] 1
var.gcp_project Your GCP Project ID Enter a value: hive-project-404608 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "ny_trips_data" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "hive-project-404608" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "de_data_lake_hive-project-404608" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/hive-project-404608/datasets/ny_trips_data] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=de_data_lake_hive-project-404608] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_tyler" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "healthy-battery-412201" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-tyler" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/healthy-battery-412201/datasets/demo_dataset_tyler] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-tyler] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST1" + max_time_travel_hours = (known after apply) + project = "aisling-de-zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST1" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
@Sriramc27 ➜ ~/terrademo $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset1" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "custom-temple-411521-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/custom-temple-411521/datasets/demo_dataset1] google_storage_bucket.demo-bucket: Creation complete after 1s [id=custom-temple-411521-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.brisk_de_zooomcamp_404305 will be created + resource "google_bigquery_dataset" "brisk_de_zooomcamp_404305" { + creation_time = (known after apply) + dataset_id = "brisk_de_zooomcamp_404305" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-404305" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.brisk_de_zooomcamp_404305 will be created + resource "google_storage_bucket" "brisk_de_zooomcamp_404305" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "brisk_de_zooomcamp_404305" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.brisk_de_zooomcamp_404305: Creating... google_storage_bucket.brisk_de_zooomcamp_404305: Creating... google_bigquery_dataset.brisk_de_zooomcamp_404305: Creation complete after 2s [id=projects/dtc-de-course-404305/datasets/brisk_de_zooomcamp_404305] google_storage_bucket.brisk_de_zooomcamp_404305: Creation complete after 3s [id=brisk_de_zooomcamp_404305] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "tidy-agency-412121" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtidy-agency-412121-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "example_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datacampproj" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datacampproj_terra_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/datacampproj/datasets/example_dataset] google_storage_bucket.demo_bucket: Creation complete after 1s [id=datacampproj_terra_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "evident-time-410307" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "evident-time-410307-data-lake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/evident-time-410307/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=evident-time-410307-data-lake-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
An execution plan has been generated and is shown below. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.my_dataset will be created + resource "google_bigquery_dataset" "my_dataset" { + dataset_id = "my_dataset_name" + id = tes_project_da-zoom + location = "us-central1" + project = tes_project_da-zoom-project } # google_storage_bucket.my_bucket will be created + resource "google_storage_bucket" "my_bucket" { + force_destroy = true + id = (known after apply) + location = "us-central1" + name = "my_bucket_name" } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: google_storage_bucket.my_bucket: Creating... google_bigquery_dataset.my_dataset: Creating... google_storage_bucket.my_bucket: Creation complete after 3s [id=my_bucket_name] google_bigquery_dataset.my_dataset: Creation complete after 5s [id=projects/my_project_id/datasets/my_dataset_name] Apply complete! Resources: 2 added, 0 changed, 0 destroyed.me] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dezc_dataset_2" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "dezoomcamp-411607" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket-2 will be created + resource "google_storage_bucket" "data-lake-bucket-2" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dezoomcamp-411607-terraform-bucket-2" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket-2: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dezoomcamp-411607/datasets/dezc_dataset_2] google_storage_bucket.data-lake-bucket-2: Creation complete after 1s [id=dezoomcamp-411607-terraform-bucket-2] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
https://github.com/blessedmadukoma/DE-Zoomcamp/tree/week1/week_1/homework/terraform_apply.md 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.amilcar_de_dataset will be created + resource "google_bigquery_dataset" "amilcar_de_dataset" { + creation_time = (known after apply) + dataset_id = "amilcar_de_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dezoomcamp24" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.amilcar_de_bucket will be created + resource "google_storage_bucket" "amilcar_de_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "amilcar_de_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.amilcar_de_dataset: Creating... google_storage_bucket.amilcar_de_bucket: Creating... google_bigquery_dataset.amilcar_de_dataset: Creation complete after 2s [id=projects/dezoomcamp24/datasets/amilcar_de_dataset] google_storage_bucket.amilcar_de_bucket: Creation complete after 3s [id=amilcar_de_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "week1_hw_bq_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST1" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-409609" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "week1_hw_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-409609/datasets/week1_hw_bq_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=week1_hw_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
➜ terraform terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.first-bucket will be created + resource "google_storage_bucket" "first-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-first-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.first-bucket: Creating... google_storage_bucket.first-bucket: Creation complete after 2s [id=terraform-first-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. ➜ terraform 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoom_412411_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoom-412411" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoom_412411_terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/zoom-412411/datasets/zoom_412411_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=zoom_412411_terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "test_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "EU" + project = "dtc-de-course-412502" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-de-course-412502-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 4s [id=projects/dtc-de-course-412502/datasets/test_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 5s [id=dtc-de-course-412502-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "mindful-furnace-412108" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "mindful-furnace-412108-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.taxi-dataset will be created + resource "google_bigquery_dataset" "taxi-dataset" { + creation_time = (known after apply) + dataset_id = "taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "aerobic-badge-408610" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.taxi-bucket will be created + resource "google_storage_bucket" "taxi-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "aerobic-badge-408610-taxi-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.taxi-dataset: Creating... google_storage_bucket.taxi-bucket: Creating... google_storage_bucket.taxi-bucket: Creation complete after 2s [id=aerobic-badge-408610-taxi-bucket] google_bigquery_dataset.taxi-dataset: Creation complete after 2s [id=projects/aerobic-badge-408610/datasets/taxi_dataset] 1
PS C:\Users\Utente\Desktop\data_engineering_zoomcamp\week_1_basics_n_setup\GCP + Terraform\terraform> terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST8" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST8" + name = "dtc-de-course-411815-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-411815-demo-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-411815/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset_de_kl will be created + resource "google_bigquery_dataset" "demo_dataset_de_kl" { + creation_time = (known after apply) + dataset_id = "demo_dataset_de_kl" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411420" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket-dez-kl will be created + resource "google_storage_bucket" "demo-bucket-dez-kl" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket_de_kl" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset_de_kl: Creating... google_storage_bucket.demo-bucket-dez-kl: Creating... google_bigquery_dataset.demo_dataset_de_kl: Creation complete after 1s [id=projects/dtc-de-course-411420/datasets/demo_dataset_de_kl] google_storage_bucket.demo-bucket-dez-kl: Creation complete after 1s [id=terraform-demo-terra-bucket_de_kl] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-411615" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-demo-bucket will be created + resource "google_storage_bucket" "de-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "de-zoomcamp-2024-411615-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.de-demo-bucket: Creating... google_storage_bucket.de-demo-bucket: Creation complete after 1s [id=de-zoomcamp-2024-411615-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-411615/datasets/demo_dataset] 1
terraform init Initializing the backend... Initializing provider plugins... - Reusing previous version of hashicorp/google from the dependency lock file - Using previously-installed hashicorp/google v5.12.0 Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. 1
D:\ProjectFiles\data-engineering-zoomcamp\01-docker-terraform\1_terraform_gcp\terraform\terraform_test>terraform apply google_bigquery_dataset.zoomcamp_dataset: Refreshing state... [id=projects/de-zoomcamp-412720/datasets/zoomcamp_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.zoomcamp_dataset will be created + resource "google_bigquery_dataset" "zoomcamp_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412720" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-zoomcamp-bucket-yelzha will be created + resource "google_storage_bucket" "de-zoomcamp-bucket-yelzha" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-bucket-yelzha" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.zoomcamp_dataset: Creating... google_storage_bucket.de-zoomcamp-bucket-yelzha: Creating... google_bigquery_dataset.zoomcamp_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412720/datasets/zoomcamp_dataset] google_storage_bucket.de-zoomcamp-bucket-yelzha: Creation complete after 2s [id=de-zoomcamp-bucket-yelzha] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. D:\ProjectFiles\data-engineering-zoomcamp\01-docker-terraform\1_terraform_gcp\terraform\terraform_test> 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "bigquery_dataset_hw_1" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "EU" + project = "terraform-demo-412515" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412515-data-lake-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/terraform-demo-412515/datasets/bigquery_dataset_hw_1] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=terraform-demo-412515-data-lake-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412115" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412115-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412115/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412115-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 0s [id=projects/de-ibphilippov/datasets/ibphilippov_test] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=ibphilippov-terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "warm-calculus-411320-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bukcet: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/dtc-de-course-412523/datasets/demo_dataset] google_storage_bucket.demo-bukcet: Creation complete after 2s [id=dtc-de-course-412523-terraform-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(de-zoomcamp) ➜ terraform git:(main) ✗ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-407321" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-de-zoomcamp-407321" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "skilled-keyword-292704" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "skilled-keyword-292704-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/skilled-keyword-292704/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=skilled-keyword-292704-terra-bucket] 1
(base) kevin@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-bootcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-kevin" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/zoomcamp-bootcamp/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-kevin] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) kevin@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.practice-dataset will be created + resource "google_bigquery_dataset" "practice-dataset" { + creation_time = (known after apply) + dataset_id = "manifest-altar-412117-practice-dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.practice-bucket will be created + resource "google_storage_bucket" "practice-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "manifest-altar-412117-practice-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "wise-coyote-411413" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-1232432-234234234-234" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-1232432-234234234-234] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/wise-coyote-411413/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411905" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-411905-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-411905/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-411905-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
dariuslim269@cloudshell:~ (directed-bongo-411510)$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "terraform_project_dataset63641236" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "directed-bongo-411510" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_project_bucket63641236" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "australia-southeast2" + max_time_travel_hours = (known after apply) + project = "dtc-de-410504" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST2" + name = "terraform-dtc-de-410504-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-dtc-de-410504-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/dtc-de-410504/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west3" + max_time_travel_hours = (known after apply) + project = "dataengineeringzoomcamp-409819" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST3" + name = "taras-sh-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Ezequiel@LAPTOP-ASUS MINGW64 ~/OneDrive/Escritorio/repo/zoomcamp24 (feature/homewoork-w1) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.sbox-dataset will be created + resource "google_bigquery_dataset" "sbox-dataset" { + creation_time = (known after apply) + dataset_id = "SBOX" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "eze-zoomcamp24" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.sbox-bucket will be created + resource "google_storage_bucket" "sbox-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp24" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.sbox-dataset: Creating... google_storage_bucket.sbox-bucket: Creating... google_bigquery_dataset.sbox-dataset: Creation complete after 1s [id=projects/eze-zoomcamp24/datasets/SBOX] google_storage_bucket.sbox-bucket: Creation complete after 1s [id=zoomcamp24] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (zoomcamp24-py3.9) 1
yudisyudis@YUDIS-LAPTOP:~/DE_Zoomcamp/2024/week_1/terrademo$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast2" + max_time_travel_hours = (known after apply) + project = "mesmerizing-bee-412306" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "mesmerizing-bee-412306-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=mesmerizing-bee-412306-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/mesmerizing-bee-412306/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412515" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "de-zoomcamp-412515-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoomcamp-412515-demo-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-412515/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/PROJECT_NAME/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = “BUCKET_NAME” + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=BUCKET_NAME] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.datalks-dataset will be created + resource "google_bigquery_dataset" "datalks-dataset" { + creation_time = (known after apply) + dataset_id = "datatalks_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + description = "sample bigquery dataset" + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "sodium-chalice-412103" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-project will be created + resource "google_storage_bucket" "de-project" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "sodium-chalice-412103-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dataengineering-411512" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dataengineering-411512-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/dataengineering-411512/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=dataengineering-411512-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "imposing-ace-411817" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-zoomcamp-2024-bucket-rlwchang will be created + resource "google_storage_bucket" "de-zoomcamp-2024-bucket-rlwchang" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-2024-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.de-zoomcamp-2024-bucket-rlwchang: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/imposing-ace-411817/datasets/de_zoomcamp_dataset] google_storage_bucket.de-zoomcamp-2024-bucket-rlwchang: Creation complete after 1s [id=de-zoomcamp-2024-bucket] 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp_dataengineering_terra_bigquery" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zoomcamp-dataengineering" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "zoomcamp-dataengineering-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/zoomcamp-dataengineering/datasets/zoomcamp_dataengineering_terra_bigquery] google_storage_bucket.demo-bucket: Creation complete after 2s [id=zoomcamp-dataengineering-terra-bucket] 1
$ terraform apply google_compute_instance.de-zoomcamp: Refreshing state... [id=projects/thinking-glass-412101/zones/us-central1-a/instances/de-zoomcamp] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_compute_instance.de-zoomcamp will be created + resource "google_compute_instance" "de-zoomcamp" { + can_ip_forward = false + cpu_platform = (known after apply) + current_status = (known after apply) + deletion_protection = false + effective_labels = { + "goog-ec-src" = "vm_add-tf" } + enable_display = false + guest_accelerator = (known after apply) + id = (known after apply) + instance_id = (known after apply) + label_fingerprint = (known after apply) + labels = { + "goog-ec-src" = "vm_add-tf" } + machine_type = "e2-standard-4" + metadata_fingerprint = (known after apply) + min_cpu_platform = (known after apply) + name = "de-zoomcamp" + project = "thinking-glass-412101" + self_link = (known after apply) + tags_fingerprint = (known after apply) + terraform_labels = { + "goog-ec-src" = "vm_add-tf" } + zone = "us-central1-a" + boot_disk { + auto_delete = true + device_name = "de-zoomcamp" + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) + mode = "READ_WRITE" + source = (known after apply) + initialize_params { + image = "projects/ubuntu-os-cloud/global/images/ubuntu-2004-focal-v20240110" + labels = (known after apply) + provisioned_iops = (known after apply) + provisioned_throughput = (known after apply) + size = 30 + type = "pd-balanced" } } + network_interface { + internal_ipv6_prefix_length = (known after apply) + ipv6_access_type = (known after apply) + ipv6_address = (known after apply) + name = (known after apply) + network = (known after apply) + network_ip = (known after apply) + queue_count = 0 + stack_type = "IPV4_ONLY" + subnetwork = "projects/thinking-glass-412101/regions/us-central1/subnetworks/default" + subnetwork_project = (known after apply) + access_config { + nat_ip = (known after apply) + network_tier = "PREMIUM" } } + scheduling { + automatic_restart = true + on_host_maintenance = "MIGRATE" + preemptible = false + provisioning_model = "STANDARD" } + service_account { + email = "182971974119-compute@developer.gserviceaccount.com" + scopes = [ + "https://www.googleapis.com/auth/devstorage.read_only", + "https://www.googleapis.com/auth/logging.write", + "https://www.googleapis.com/auth/monitoring.write", + "https://www.googleapis.com/auth/service.management.readonly", + "https://www.googleapis.com/auth/servicecontrol", + "https://www.googleapis.com/auth/trace.append", ] } + shielded_instance_config { + enable_integrity_monitoring = true + enable_secure_boot = false + enable_vtpm = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_compute_instance.de-zoomcamp: Creating... google_compute_instance.de-zoomcamp: Still creating... [10s elapsed] google_compute_instance.de-zoomcamp: Creation complete after 13s [id=projects/thinking-glass-412101/zones/us-central1-a/instances/de-zoomcamp] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
(base) rwilliams@instance-1:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-rwilliams" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_terra_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "chromatic-fx-411315" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "chromatic-fx-411315_terrabucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/chromatic-fx-411315/datasets/demo_terra_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=chromatic-fx-411315_terrabucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo will be created + resource "google_bigquery_dataset" "demo" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + default_partition_expiration_ms = 2592000000 + default_table_expiration_ms = 31536000000 + delete_contents_on_destroy = false + description = "demo_dataset" + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = "96" + project = "data-engineering-409902" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform_bucket will be created + resource "google_storage_bucket" "terraform_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-engineering-409902-terraform-bucket-01" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo: Creating... google_storage_bucket.terraform_bucket: Creating... google_storage_bucket.terraform_bucket: Creation complete after 1s [id=data-engineering-409902-terraform-bucket-01] google_bigquery_dataset.demo: Creation complete after 1s [id=projects/data-engineering-409902/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.week_1_hw_dataset will be created + resource "google_bigquery_dataset" "de_zoomcamp_week1_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_week1_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "central-accord-388808" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.week-1-hw-bucket will be created + resource "google_storage_bucket" "de-zoomcamp-week1-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "de-zoomcamp-week1-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_zoomcamp_week1_dataset: Creating... google_storage_bucket.de-zoomcamp-week1-bucket: Creating... google_storage_bucket.de-zoomcamp-week1-bucket: Creation complete after 2s [id=de-zoomcamp-week1-bucket] google_bigquery_dataset.de_zoomcamp_week1_dataset: Creation complete after 2s [id=projects/central-accord-388808/datasets/de_zoomcamp_week1_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 0s [id=hw1-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/precise-rite-412717/datasets/hw1_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412000" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_buckets will be created + resource "google_storage_bucket" "demo_buckets" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412000-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_buckets: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/dtc-de-course-412000/datasets/demo_dataset] google_storage_bucket.demo_buckets: Creation complete after 3s [id=dtc-de-course-412000-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
```Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "arthur-data-engineering-course" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "arthur-data-engineering-course-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/arthur-data-engineering-course/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=arthur-data-engineering-course-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed.``` 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/dtc-de-course-376210/datasets/dtc_de_course_376210_my_test_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=dtc-de-course-376210-my-test-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "rosy-element-294708" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-294708-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/rosy-element-294708/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-294708-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-course-411914" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-course-411914" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-course-411914/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-course-411914] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411817" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-411817-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-411817/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-411817-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411812" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. ───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "civil-charmer-410021" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411615" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-411615-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-411615/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=dtc-de-course-411615-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast2" + project = "learning-gcp-369416" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "de_zoomcamp_data_lake_learning-gcp-369416" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. ─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. administrator@admins-MacBook-Pro-3 week1 % terraform apply -var="project=learning-gcp-369416" Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast2" + project = "learning-gcp-369416" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST2" + name = "de_zoomcamp_data_lake_learning-gcp-369416" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/learning-gcp-369416/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=de_zoomcamp_data_lake_learning-gcp-369416] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "xzde-20240114" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.first-bucket will be created + resource "google_storage_bucket" "first-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "xzde-202401140-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.first-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/xzde-20240114/datasets/demo_dataset] google_storage_bucket.first-bucket: Creation complete after 1s [id=xzde-202401140-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_01" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412901" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-01" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412901/datasets/demo_dataset_01] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-01] 1
(base) imransaeed@Imran-Saeeds-MacBook-Pro terraform % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-93155" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-93155-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-93155/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-93155-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "valued-aquifer-411012" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket-valued-aquifer-411012 will be created + resource "google_storage_bucket" "demo-bucket-valued-aquifer-411012" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-bucket-valued-aquifer-411012" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket-valued-aquifer-411012: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/valued-aquifer-411012/datasets/demo_dataset] google_storage_bucket.demo-bucket-valued-aquifer-411012: Creation complete after 2s [id=demo-bucket-valued-aquifer-411012] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "engaged-shade-411420" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "engaged-shade-411420" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/engaged-shade-411420/datasets/ny_taxi] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=engaged-shade-411420] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp2024_412721_terraform_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp2024-412721" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp2024-412721-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
var.project Your GCP Project ID Enter a value: <omitted> Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + last_modified_time = (known after apply) + location = "us-west1" + project = "<omitted>" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US-WEST1" + name = "dtc_data_lake_<omitted>" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/<omitted>/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_<omitted>] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "esoteric-cab-411900" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "esoteric-cab-411900" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/esoteric-cab-411900/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=esoteric-cab-411900] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) sonny@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/ny-rides-sonny/datasets/demo_dataset_sonny] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket_sonny" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket_sonny] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
$ terraform apply var.project de-2024 Enter a value: de-2024 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_data_2024" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "ASIA-SOUTHEAST1" + max_time_travel_hours = (known after apply) + project = "de-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST11" + name = "terraform-demo-terra-bucket-de-2024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-2024/datasets/demo_data_2024] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-de-2024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-north1" + max_time_travel_hours = (known after apply) + project = "polished-will-411520" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-NORTH1" + name = "terraform-demo-terra-bucket-kashif" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "tidy-agency-412105" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "demo_dataset" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: Yes? 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "nyc_trips_data" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-west1" + max_time_travel_hours = (known after apply) + project = "radiant-gateway-412001" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data_lake_bucket will be created + resource "google_storage_bucket" "data_lake_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-WEST1" + name = "dezoomcamp_2024_storage_bucket_radiant-gateway-412001" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 80 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data_lake_bucket: Creating... google_storage_bucket.data_lake_bucket: Creation complete after 0s [id=dezoomcamp_2024_storage_bucket_radiant-gateway-412001] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/radiant-gateway-412001/datasets/nyc_trips_data] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "bq_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "fluent-archway-412721" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "fluent-archway-412721-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/fluent-archway-412721/datasets/bq_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=fluent-archway-412721-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "tokyo-scholar-412417" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "tokyo-scholar-412417-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.ny_taxi_dataset: Creating... google_storage_bucket.taxi-data-bucket: Creating... google_storage_bucket.taxi-data-bucket: Creation complete after 2s [id=HIDDEN_PROJECT_ID-data-bucket] google_bigquery_dataset.ny_taxi_dataset: Creation complete after 2s [id=projects/HIDDEN_PROJECT_ID/datasets/ny_taxi_dataset] 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_01" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-411905" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-411905-demo-bucket-01" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-411905/datasets/demo_dataset_01] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-411905-demo-bucket-01] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-bruno" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-de-zoomcamp-2024-bruno" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-zoomcamp-2024-bruno/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-de-zoomcamp-2024-bruno] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.data_dezoomcamp_dataset will be created + resource "google_bigquery_dataset" "data_dezoomcamp_dataset" { + creation_time = (known after apply) + dataset_id = "dezoomcamp_411914_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST2" + max_time_travel_hours = (known after apply) + project = "dezoomcamp-411914" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data_dezoomcamp_bucket will be created + resource "google_storage_bucket" "data_dezoomcamp_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST2" + name = "dezoomcamp_411914_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.data_dezoomcamp_dataset: Creating... google_storage_bucket.data_dezoomcamp_bucket: Creating... google_bigquery_dataset.data_dezoomcamp_dataset: Creation complete after 1s [id=projects/dezoomcamp-411914/datasets/dezoomcamp_411914_dataset] google_storage_bucket.data_dezoomcamp_bucket: Creation complete after 2s [id=dezoomcamp_411914_bucket] 1
(base) Haitham.hamad@zoomcamp2024:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "sonic-airfoil-411903" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "sonic-airfoil-411903-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/sonic-airfoil-411903/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=sonic-airfoil-411903-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/subtle-isotope-412719/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=subtle-isotope-412719-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
cyril@DESKTOP-QT3M72N MINGW64 ~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform_learn/terrademo (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "ny-rides-lecco" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "ny-rides-lecco-412411-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_storage_bucket.demo_bucket: Creation complete after 2s [id=ny-rides-lecco-412411-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/ny-rides-lecco/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. (base) 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoom-camp-412008" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoom-camp-412008-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/de-zoom-camp-412008/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoom-camp-412008-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-411218/datasets/demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 3s [id=terraform-demo-411218-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "aerobic-form-411600" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-bucket-dezoom1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/aerobic-form-411600/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-bucket-dezoom1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions:  # google_bigquery_dataset.demo_dataset will be created  + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_homework_1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-410416" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) }  # google_storage_bucket.demo-bucket will be created  + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-de-410416-terra-bucket-homework-1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-410416/datasets/demo_dataset_homework_1] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-410416-terra-bucket-homework-1]  Apply complete! Resources: 2 added, 0 changed, 0 destroyed.  1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # minio_s3_bucket.data_lake_bucket will be created + resource "minio_s3_bucket" "data_lake_bucket" { + acl = "public" + arn = (known after apply) + bucket = "dtc-bucket-01" + bucket_domain_name = (known after apply) + force_destroy = false + id = (known after apply) + object_locking = false } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes minio_s3_bucket.data_lake_bucket: Creating... minio_s3_bucket.data_lake_bucket: Creation complete after 0s [id=dtc-bucket-01] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "composed-sun-375018" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_composed-sun-375018" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_composed-sun-375018] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/composed-sun-375018/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/dtc-de-course-412305/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412305-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-412305-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de-zoomcamp-2024-dataset will be created + resource "google_bigquery_dataset" "de-zoomcamp-2024-dataset" { + creation_time = (known after apply) + dataset_id = "second_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-411915" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de-zoomcamp-2024-bucket will be created + resource "google_storage_bucket" "de-zoomcamp-2024-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-2024-411915-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "bigquerylearning-402002" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "bigquerylearning-402002-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/bigquerylearning-402002/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=bigquerylearning-402002-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "sunny-web-411214" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "sunny-web-411214-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 4s [id=projects/sunny-web-411214/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 5s [id=sunny-web-411214-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions:  # google_bigquery_dataset.demo_dataset will be created  + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-412609" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) }  # google_storage_bucket.terraform-demo-bucket will be created  + resource "google_storage_bucket" "terraform-demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-2024-412609-terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 2 to add, 0 to change, 0 to destroy. google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.terraform-demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-412609/datasets/demo_dataset] google_storage_bucket.terraform-demo-bucket: Creation complete after 1s [id=de-zoomcamp-2024-412609-terraform-demo-bucket]  Apply complete! Resources: 2 added, 0 changed, 0 destroyed.  1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_zoomcamp_alfianhid will be created + resource "google_bigquery_dataset" "de_zoomcamp_alfianhid" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_alfianhid" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "alfianhid-projects" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.de_zoomcamp_alfianhid will be created + resource "google_storage_bucket" "de_zoomcamp_alfianhid" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "de_zoomcamp_alfianhid" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_zoomcamp_alfianhid: Creating... google_storage_bucket.de_zoomcamp_alfianhid: Creating... google_storage_bucket.de_zoomcamp_alfianhid: Creation complete after 2s [id=de_zoomcamp_alfianhid] google_bigquery_dataset.de_zoomcamp_alfianhid: Creation complete after 4s [id=projects/alfianhid-projects/datasets/de_zoomcamp_alfianhid] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + description = "This is a demo dataset" + effective_labels = (known after apply) + etag = (known after apply) + friendly_name = "Demo dataset" + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west2" + max_time_travel_hours = (known after apply) + project = "citric-gradient-351018" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST2" + name = "citric-gradient-351018-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=citric-gradient-351018-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/citric-gradient-351018/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.homework_dataset will be created + resource "google_bigquery_dataset" "homework_dataset" { + creation_time = (known after apply) + dataset_id = "homework_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-taxi-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.homework_bucket will be created + resource "google_storage_bucket" "homework_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ny-taxi-2024-homework-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.homework_dataset: Creating... google_storage_bucket.homework_bucket: Creating... google_bigquery_dataset.homework_dataset: Creation complete after 1s [id=projects/ny-taxi-2024/datasets/homework_dataset] google_storage_bucket.homework_bucket: Creation complete after 1s [id=ny-taxi-2024-homework-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) jafet@dezoomcampjaf:~/terrademo$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "astute-catcher-411918" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-bucket-411918-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/astute-catcher-411918/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=demo-bucket-411918-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) ramazan@de-zoomcamp:~/my_zoomcamp/module_1/terraform_GCP$ terraform apply var.project Name of the project Enter a value: fresh-ocean-412204 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "fresh-ocean-412204" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "fresh-ocean-412204" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/fresh-ocean-412204/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=fresh-ocean-412204] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412911" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-412911-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412911-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412911/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "datatalks-course" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket-00215 will be created + resource "google_storage_bucket" "demo-bucket-00215" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datatalks-course-terra-046854" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket-00215: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/datatalks-course/datasets/demo_dataset] google_storage_bucket.demo-bucket-00215: Creation complete after 1s [id=datatalks-course-terra-046854] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dataset_playground_a66ae505" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "playground-s-11-a66ae505" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "bucket-playground-s-11-a66ae505" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=bucket-playground-s-11-a66ae505] google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/playground-s-11-a66ae505/datasets/dataset_playground_a66ae505] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) vladimir@dtc:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_basic$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "dtc-de-412516" + self_link = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-412516-terra-buckett" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-412516/datasets/ny_taxi] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-412516-terra-buckett] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/lyrical-compass-412311/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "stb_de_bucket_terraform_vm_test" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=stb_de_bucket_terraform_vm_test] 1
@haripriya-vanchinathan ➜ /workspaces/de_zoomcamp2024/1_terraform_gcp (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-de-course-412305" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-de-course-412305-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-de-course-412305/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-de-course-412305-terra-bucket] 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/modern-alpha-412800/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=modern-alpha-412800-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-193031" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "de_datalake_de-zoomcamp-193031" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/de-zoomcamp-193031/datasets google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=de_datalake_de-zoomcamp-193031 Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de2024_dylan_dataset-homework1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + max_time_travel_hours = (known after apply) + project = "de2024-dylan" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "de2024-dylan-bucket-homework1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "intrepid-axe-411322" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "intrepid-axe-411322-test-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.zoomcamp-bucket will be created + resource "google_storage_bucket" "zoomcamp-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "alien-rainfall-411316-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.zoomcamp-bucket: Creating... google_storage_bucket.zoomcamp-bucket: Creation complete after 2s [id=alien-rainfall-411316-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
$ terraform apply var.project dtc-de-2024 Enter a value: dtc-de-2024 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-east1" + max_time_travel_hours = (known after apply) + project = "dtc-de-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-EAST1" + name = "dtc_data_lake_dtc-de-2024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/dtc-de-2024/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=dtc_data_lake_dtc-de-2024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/crafty-hall-410615/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=crafty-hall-410615-data-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
PS C:\_prog\DEZoomcamp> terraform.exe apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-bq-dataset will be created + resource "google_bigquery_dataset" "demo-bq-dataset" { + creation_time = (known after apply) + dataset_id = "bq_dataset_ny_taxi" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "gifted-antonym-411815" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "bucket-ny-taxi" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-1-410619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-1-410619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de-project-1" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "spotify-data-engineering-mohit" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... ╷ │ Error: googleapi: Error 409: The requested bucket name is not available. The bucket namespace is shared by all users of the system. Please select a different name and try again., conflict │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 17, in resource "google_storage_bucket" "demo-bucket": │ 17: resource "google_storage_bucket" "demo-bucket" { │ ╵ ╷ │ Error: Error creating Dataset: googleapi: Error 400: Invalid dataset ID "de-project-1". Dataset IDs must be alphanumeric (plus underscores) and must be at most 1024 characters long., invalid │ │ with google_bigquery_dataset.demo_dataset, │ on main.tf line 35, in resource "google_bigquery_dataset" "demo_dataset": │ 35: resource "google_bigquery_dataset" "demo_dataset" { │ 1
Terraform terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "composed-sun-375018" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_composed-sun-375018" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_composed-sun-375018] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/composed-sun-375018/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset_hw will be created + resource "google_bigquery_dataset" "demo_dataset_hw" { + creation_time = (known after apply) + dataset_id = "demo_dataset_bq" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "versatile-gist-411710" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket_hw will be created + resource "google_storage_bucket" "demo_bucket_hw" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform_demo_terra_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset_hw: Creating... google_storage_bucket.demo_bucket_hw: Creating... google_storage_bucket.demo_bucket_hw: Creation complete after 3s [id=terraform_demo_terra_bucket] google_bigquery_dataset.demo_dataset_hw: Creation complete after 3s [id=projects/versatile-gist-411710/datasets/demo_dataset_bq] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform will perform the following actions: # google_bigquery_dataset.tf_dataset will be created + resource "google_bigquery_dataset" "tf_dataset" { + creation_time = (known after apply) + dataset_id = "bq_dataset_sai" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US-CENTRAL1" + max_time_travel_hours = (known after apply) + project = "learningde" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_compute_instance.tf_gcp_instance will be created + resource "google_compute_instance" "tf_gcp_instance" { + can_ip_forward = false + cpu_platform = (known after apply) + current_status = (known after apply) + deletion_protection = false + effective_labels = (known after apply) + guest_accelerator = (known after apply) + id = (known after apply) + instance_id = (known after apply) + label_fingerprint = (known after apply) + machine_type = "e2-standard-4" + metadata_fingerprint = (known after apply) + min_cpu_platform = (known after apply) + name = "gcp-instance" + project = "learningde" + self_link = (known after apply) + tags_fingerprint = (known after apply) + terraform_labels = (known after apply) + zone = "us-central1-b" + boot_disk { + auto_delete = true + device_name = (known after apply) + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) + mode = "READ_WRITE" + source = (known after apply) + initialize_params { + image = "ubuntu-os-cloud/ubuntu-2204-lts" + labels = (known after apply) + provisioned_iops = (known after apply) + provisioned_throughput = (known after apply) + size = 30 + type = (known after apply) } } + network_interface { + internal_ipv6_prefix_length = (known after apply) + ipv6_access_type = (known after apply) + ipv6_address = (known after apply) + name = (known after apply) + network = "default" + network_ip = (known after apply) + stack_type = (known after apply) + subnetwork = (known after apply) + subnetwork_project = (known after apply) + access_config { + nat_ip = (known after apply) + network_tier = (known after apply) } } } # google_storage_bucket.tf_gcs_bucket will be created + resource "google_storage_bucket" "tf_gcs_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "dezoomcamp-bucket-sai" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.tf_dataset: Creating... google_storage_bucket.tf_gcs_bucket: Creating... google_compute_instance.tf_gcp_instance: Creating... google_bigquery_dataset.tf_dataset: Creation complete after 1s [id=projects/learningde/datasets/bq_dataset_sai] google_storage_bucket.tf_gcs_bucket: Creation complete after 2s [id=dezoomcamp-bucket-sai] google_compute_instance.tf_gcp_instance: Still creating... [10s elapsed] google_compute_instance.tf_gcp_instance: Creation complete after 16s [id=projects/learningde/zones/us-central1-b/instances/gcp-instance] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "data-axiom-412014" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_data-axiom-412014" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Refreshing state... [id=dtc_data_lake_data-axiom-412014] google_bigquery_dataset.dataset: Refreshing state... [id=projects/data-axiom-412014/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412619-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412619/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412619-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Error: Error creating Dataset: googleapi: Error 403: BigQuery API has not been used in project 544579867320 before or it is disabled. Enable it by visiting https://console.developers.google.com/apis/api/bigquery.googleapis.com/overview?project=544579867320 then retry. If you enabled this API recently, wait a few minutes for the action to propagate to our systems and retry 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "terra_nytaxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = true + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-south1" + max_time_travel_hours = (known after apply) + project = "coral-firefly-411510" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terra_nytaxi_222" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 22 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=terra_nytaxi_222] google_bigquery_dataset.dataset: Creation complete after 5s [id=projects/coral-firefly-411510/datasets/terra_nytaxi_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "nth-rookery-411422" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "nth-rookery-411422-terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/nth-rookery-411422/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=nth-rookery-411422-terraform-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_tiago_hw" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-tiago-411410" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp-tiago-411410_gc_bucket_dem" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/zoomcamp-tiago-411410/datasets/demo_dataset_tiago_hw] google_storage_bucket.demo-bucket: Creation complete after 3s [id=zoomcamp-tiago-411410_gc_bucket_dem] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "datatalks1995" + default_collation = (known after apply) + default_table_expiration_ms = 3600000 + delete_contents_on_destroy = false + description = "This is a test Big Query dataset" + effective_labels = { + "env" = "default" } + etag = (known after apply) + friendly_name = "test" + id = (known after apply) + is_case_insensitive = (known after apply) + labels = { + "env" = "default" } + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "data-talks-412218" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = { + "env" = "default" } + access { + domain = "hashicorp.com" + role = "READER" } } # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "test-gcp-data-talks-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.auto-expire: Creating... google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/data-talks-412218/datasets/datatalks1995] google_storage_bucket.auto-expire: Creation complete after 3s [id=test-gcp-data-talks-bucket] 1
terraform plan Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-arij" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. (zoomcamp) arij@de-zmcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-arij" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zc_hw1_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zc-hw1" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zc-hw1-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/zc-hw1/datasets/zc_hw1_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=zc-hw1-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "zoomcamp0_bq" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "zoomcamp-0" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp0_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/zoomcamp-0/datasets/zoomcamp0_bq] google_storage_bucket.demo-bucket: Creation complete after 1s [id=zoomcamp0_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412810" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412810-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412810/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412810-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "amazing-modem-411901" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.bucket will be created + resource "google_storage_bucket" "bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "amazing-modem-411901-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/amazing-modem-411901/datasets/demo_dataset] google_storage_bucket.bucket: Creation complete after 2s [id=amazing-modem-411901-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412612" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-zoomcamp-412612-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412612/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=de-zoomcamp-412612-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "airy-galaxy-412921" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-engineering-412208" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "data-engineering-412208-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/data-engineering-412208/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=data-engineering-412208-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "mr_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "eu" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412621" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-bucket-mr" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-412621/datasets/mr_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-bucket-mr] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) nico@dezoom:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/helical-history-412202/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset must be replaced -/+ resource "google_bigquery_dataset" "demo_dataset" { ~ creation_time = 1706462244336 -> (known after apply) ~ dataset_id = "demo_dataset" -> "terraform_test_bq1" # forces replacement + default_collation = (known after apply) - default_partition_expiration_ms = 0 -> null - default_table_expiration_ms = 0 -> null ~ effective_labels = {} -> (known after apply) ~ etag = "CjU8eZtlbupsr52UTvOuIA==" -> (known after apply) ~ id = "projects/helical-history-412202/datasets/demo_dataset" -> (known after apply) ~ is_case_insensitive = false -> (known after apply) - labels = {} -> null ~ last_modified_time = 1706462244336 -> (known after apply) + max_time_travel_hours = (known after apply) ~ self_link = "https://bigquery.googleapis.com/bigquery/v2/projects/helical-history-412202/datasets/demo_dataset" -> (known after apply) + storage_billing_model = (known after apply) ~ terraform_labels = {} -> (known after apply) # (3 unchanged attributes hidden) - access { - role = "OWNER" -> null - user_by_email = "dezoomcamp1@helical-history-412202.iam.gserviceaccount.com" -> null } - access { - role = "OWNER" -> null - special_group = "projectOwners" -> null } - access { - role = "READER" -> null - special_group = "projectReaders" -> null } - access { - role = "WRITER" -> null - special_group = "projectWriters" -> null } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_test_bucket1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Destroying... [id=projects/helical-history-412202/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Destruction complete after 0s google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform_test_bucket1] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/helical-history-412202/datasets/terraform_test_bq1] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ajdataengineering2024dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411602" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ajdataengineering2024bucket01" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-411602/datasets/ajdataengineering2024dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=ajdataengineering2024bucket01] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(env) max_ladmin@max-ladmins-MBP week_1_terraform % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412020" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412020-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
google_bigquery_dataset.fstweekhw_dataset: Creating... google_storage_bucket.fstweekhw-bucket: Creating... google_storage_bucket.fstweekhw-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-fstweekhw] google_bigquery_dataset.fstweekhw_dataset: Creation complete after 1s [id=projects/decoded-flag-411310/datasets/demo_dataset_fstweekhw] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "asia-southeast1" + project = "valiant-core-624981" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTHEAST1" + name = "dtc_data_lake_valiant-core-624981" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_valiant-core-624981] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/valiant-core-624981/datasets/trips_data_all] 1
ammar@HP-ENVY-X360 MINGW64 /c/DEZoomCamp2024/terrademo $ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraformdemo-412412/datasets/terraformdemo_412412_demo_dataset] google_storage_bucket.demo-bucket: Refreshing state... [id=terraformdemo-412412-terra-bucket] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
(base) cris@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ terraform apply google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/data-engineering-2024-411821/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "cris-crawfords-terraform-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=cris-crawfords-terraform-demo-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. (base) cris@de-zoomcamp:~/data-engineering-zoomcamp/01-docker-terraform/1_terraform_gcp/terraform/terraform_with_variables$ 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "de_zoomcamp_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zeta-anthem-411614" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "zeta-anthem-411614-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=zeta-anthem-411614-terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/zeta-anthem-411614/datasets/de_zoomcamp_dataset] 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/ny-taxi-project-411903/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "NORTHAMERICA-NORTHEAST1" + name = "ny-taxi-project-411903-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=ny-taxi-project-411903-terraform-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
$ terraform apply var.project datatalks-de-351308 Enter a value: datatalks-de-351308 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "datatalks-de-351308" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_datatalks-de-351308" + project = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_storage_class = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=dtc_data_lake_datatalks-de-351308] google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/datatalks-de-351308/datasets/trips_data_all] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/zoomcamp-terraform-intro/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "venren-zoomcamp-terraform-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=venren-zoomcamp-terraform-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "de-woka-set" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "de-zoocamp-woka" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "de-woka" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes 1
@konnerhorton ➜ /workspaces/zoomcamp-data-engineering/terraform_with_variables (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "warm_physics_411912_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "warm-physics-411912" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "warm_physics_411912_demo_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/warm-physics-411912/datasets/warm_physics_411912_demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 1s [id=warm_physics_411912_demo_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demodataset2024 will be created + resource "google_bigquery_dataset" "demodataset2024" { + creation_time = (known after apply) + dataset_id = "demodataset2024id" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "zoomcamp2024-411708" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demobucket2024 will be created + resource "google_storage_bucket" "demobucket2024" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "zoomcamp2024-411708-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demodataset2024: Creating... google_storage_bucket.demobucket2024: Creating... google_storage_bucket.demobucket2024: Creation complete after 2s [id=zoomcamp2024-411708-bucket] google_bigquery_dataset.demodataset2024: Creation complete after 2s [id=projects/zoomcamp2024-411708/datasets/demodataset2024id] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset_demo will be created + resource "google_bigquery_dataset" "dataset_demo" { + creation_time = (known after apply) + dataset_id = "demo_dataset_name" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "taxi-de-pr" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "taxi-de-pr-demo-storage" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. 1
❯ tf apply -auto-approve Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.stg_nyc_dataset will be created + resource "google_bigquery_dataset" "stg_nyc_dataset" { + creation_time = (known after apply) + dataset_id = "raw_nyc_trip_record_data" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "us-central1" + max_time_travel_hours = (known after apply) + project = "iobruno-gcp-labs" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.iobruno_lakehouse_raw will be created + resource "google_storage_bucket" "iobruno_lakehouse_raw" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US-CENTRAL1" + name = "iobruno-lakehouse-raw" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. google_bigquery_dataset.stg_nyc_dataset: Creating... google_storage_bucket.iobruno_lakehouse_raw: Creating... google_bigquery_dataset.stg_nyc_dataset: Creation complete after 1s [id=projects/iobruno-gcp-labs/datasets/raw_nyc_trip_record_data] google_storage_bucket.iobruno_lakehouse_raw: Creation complete after 2s [id=iobruno-lakehouse-raw] Releasing state lock. This may take a few moments... Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "homework_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-411702" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-411702-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "stable-vista-412218" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "stable-vista-412218-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/stable-vista-412218/datasets/demo_dataset] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=stable-vista-412218-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_data will be created + resource "google_bigquery_dataset" "demo_data" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412322" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412322-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_data: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_data: Creation complete after 1s [id=projects/dtc-de-course-412322/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-course-412322-terra-bucket] 1
HP@LAPTOP-LRR5FCPM MINGW64 /d/DEZoomCamp/WEEK1/terraform (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.de_dataset will be created + resource "google_bigquery_dataset" "de_dataset" { + creation_time = (known after apply) + dataset_id = "de_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "gothic-sylph-387906" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "shekharsproject-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.de_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.de_dataset: Creation complete after 3s [id=projects/gothic-sylph-387906/datasets/de_dataset] google_storage_bucket.demo-bucket: Creation complete after 6s [id=shekharsproject-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "green_taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "mystic-aileron-412016" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "mystic-aileron-412016_green-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/mystic-aileron-412016/datasets/green_taxi_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=mystic-aileron-412016_green-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dataengineering-412104" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-buckettooooooo1" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/dataengineering-412104/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-buckettooooooo1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "second-core-412212" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-khorj-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/second-core-412212/datasets/demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 2s [id=demo-khorj-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
jakemaund@Jakes-MacBook-Air terrademo % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "praxis-wall-411617" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket-jm will be created + resource "google_storage_bucket" "demo-bucket-jm" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "praxis-wall-411617" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dataeng-376620" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + iam_member = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dataeng-376620-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/dataeng-376620/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dataeng-376620-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-course-410902" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-course-410902-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/de-course-410902/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=de-course-410902-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-zoomcamp-2024" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-13024" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-zoomcamp-2024/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-13024] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "avian-casing-411221" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "avian-casing-411221-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/avian-casing-411221/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=avian-casing-411221-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "positive-rhino-411414" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "positive-rhino-411414-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/positive-rhino-411414/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=positive-rhino-411414-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "gentle-waters-411208" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "gentle-waters-411208" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/gentle-waters-411208/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=gentle-waters-411208] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412610" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412610-demo-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412610/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=dtc-de-course-412610-demo-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-410021" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = (known after apply) + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } # random_id.bucket will be created + resource "random_id" "bucket" { + b64_std = (known after apply) + b64_url = (known after apply) + byte_length = 8 + dec = (known after apply) + hex = (known after apply) + id = (known after apply) } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes random_id.bucket: Creating... random_id.bucket: Creation complete after 0s [id=zakyf9Olyl4] google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo-bucket-cda9327fd3a5ca5e] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/dtc-de-course-410021/datasets/demo_dataset] Apply complete! Resources: 3 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_rides_rc_730424759259" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ny-rides-rc" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ny-rides-rc-demo-bucket-730424759259" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/ny-rides-rc/datasets/ny_rides_rc_730424759259] google_storage_bucket.demo-bucket: Creation complete after 2s [id=ny-rides-rc-demo-bucket-730424759259] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dtc-de-course-2024-dataset will be created + resource "google_bigquery_dataset" "dtc-de-course-2024-dataset" { + creation_time = (known after apply) + dataset_id = "gajop_dtc_de_course_2024_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-northeast1" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-2024-412615" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.dtc-de-course-2024-bucket will be created + resource "google_storage_bucket" "dtc-de-course-2024-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-NORTHEAST1" + name = "gajop_dtc_de_course_2024_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dtc-de-course-2024-dataset: Creating... google_storage_bucket.dtc-de-course-2024-bucket: Creating... google_storage_bucket.dtc-de-course-2024-bucket: Creation complete after 2s [id=gajop_dtc_de_course_2024_bucket] google_bigquery_dataset.dtc-de-course-2024-dataset: Creation complete after 3s [id=projects/dtc-de-course-2024-412615/datasets/gajop_dtc_de_course_2024_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
lbw1125@lbw1125deMBP terraform % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-412517" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-412517-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-412517/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=dtc-de-412517-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/able-door-412405/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucketjoseg" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucketjoseg] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: create Terraform will perform the following actions: google_bigquery_dataset.demo_dataset will be created resource "google_bigquery_dataset" "demo_dataset" { creation_time = (known after apply) dataset_id = "andy-homework-dataset-name" default_collation = (known after apply) delete_contents_on_destroy = false effective_labels = (known after apply) etag = (known after apply) id = (known after apply) is_case_insensitive = (known after apply) last_modified_time = (known after apply) location = "US" max_time_travel_hours = (known after apply) project = "terraformproject-123489" self_link = (known after apply) storage_billing_model = (known after apply) terraform_labels = (known after apply) } google_storage_bucket.demo-bucket will be created resource "google_storage_bucket" "demo-bucket" { effective_labels = (known after apply) force_destroy = true id = (known after apply) location = "US" name = "andy-homework-terra-bucket" project = (known after apply) public_access_prevention = (known after apply) self_link = (known after apply) storage_class = "STANDARD" terraform_labels = (known after apply) uniform_bucket_level_access = (known after apply) url = (known after apply) lifecycle_rule { action { type = "AbortIncompleteMultipartUpload" } condition { age = 1 matches_prefix = [] matches_storage_class = [] matches_suffix = [] with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
➜ terraform_basic git:(bitazaratustra) ✗ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "DataEngCourseDataBase" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = "dtc-de-course-412514" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412514-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/dtc-de-course-412514/datasets/DataEngCourseDataBase] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc-de-course-412514-terra-bucket] 1
terraform apply google_compute_network.vpc_network: Refreshing state... [id=projects/daniso-app/global/networks/terraform-network] google_compute_instance.vm_instance: Refreshing state... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: -/+ destroy and then create replacement Terraform will perform the following actions: # google_compute_instance.vm_instance must be replaced -/+ resource "google_compute_instance" "vm_instance" { ~ cpu_platform = "Intel Haswell" -> (known after apply) ~ current_status = "RUNNING" -> (known after apply) - enable_display = false -> null ~ guest_accelerator = [] -> (known after apply) ~ id = "projects/daniso-app/zones/us-central1-c/instances/terraform-instance" -> (known after apply) ~ instance_id = "6727925410280753002" -> (known after apply) ~ label_fingerprint = "42WmSpB8rSM=" -> (known after apply) - labels = {} -> null - metadata = {} -> null ~ metadata_fingerprint = "cPl62E8NuUA=" -> (known after apply) + min_cpu_platform = (known after apply) name = "terraform-instance" ~ project = "daniso-app" -> (known after apply) - resource_policies = [] -> null ~ self_link = "https://www.googleapis.com/compute/v1/projects/daniso-app/zones/us-central1-c/instances/terraform-instance" -> (known after apply) tags = [ "dev", "web", ] ~ tags_fingerprint = "XaeQnaHMn9Y=" -> (known after apply) ~ zone = "us-central1-c" -> (known after apply) # (3 unchanged attributes hidden) ~ boot_disk { ~ device_name = "persistent-disk-0" -> (known after apply) + disk_encryption_key_sha256 = (known after apply) + kms_key_self_link = (known after apply) ~ source = "https://www.googleapis.com/compute/v1/projects/daniso-app/zones/us-central1-c/disks/terraform-instance" -> (known after apply) # (2 unchanged attributes hidden) ~ initialize_params { ~ image = "https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-11-bullseye-v20240110" -> "cos-cloud/cos-stable" # forces replacement ~ labels = {} -> (known after apply) ~ size = 10 -> (known after apply) ~ type = "pd-standard" -> (known after apply) } } ~ network_interface { + ipv6_access_type = (known after apply) ~ name = "nic0" -> (known after apply) ~ network = "https://www.googleapis.com/compute/v1/projects/daniso-app/global/networks/terraform-network" -> "terraform-network" ~ network_ip = "10.128.0.2" -> (known after apply) - queue_count = 0 -> null ~ stack_type = "IPV4_ONLY" -> (known after apply) ~ subnetwork = "https://www.googleapis.com/compute/v1/projects/daniso-app/regions/us-central1/subnetworks/terraform-network" -> (known after apply) ~ subnetwork_project = "daniso-app" -> (known after apply) ~ access_config { ~ nat_ip = "23.236.55.213" -> (known after apply) ~ network_tier = "PREMIUM" -> (known after apply) } } - scheduling { - automatic_restart = true -> null - min_node_cpus = 0 -> null - on_host_maintenance = "MIGRATE" -> null - preemptible = false -> null - provisioning_model = "STANDARD" -> null } - shielded_instance_config { - enable_integrity_monitoring = true -> null - enable_secure_boot = false -> null - enable_vtpm = true -> null } } Plan: 1 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_compute_instance.vm_instance: Destroying... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance] google_compute_instance.vm_instance: Still destroying... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance, 10s elapsed] google_compute_instance.vm_instance: Still destroying... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance, 20s elapsed] google_compute_instance.vm_instance: Still destroying... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance, 30s elapsed] google_compute_instance.vm_instance: Still destroying... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance, 40s elapsed] google_compute_instance.vm_instance: Still destroying... [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance, 50s elapsed] google_compute_instance.vm_instance: Destruction complete after 58s google_compute_instance.vm_instance: Creating... google_compute_instance.vm_instance: Still creating... [10s elapsed] google_compute_instance.vm_instance: Creation complete after 17s [id=projects/daniso-app/zones/us-central1-c/instances/terraform-instance] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.Terra-dataset will be created + resource "google_bigquery_dataset" "Terra-dataset" { + creation_time = (known after apply) + dataset_id = "terra_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-bootcamp-411900" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terrademo-bucket will be created + resource "google_storage_bucket" "terrademo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "de-bootcamp-411900-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/mindful-future-412612/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "mindful-future-412612-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=mindful-future-412612-terra-bucket] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "asia-south2" + max_time_travel_hours = (known after apply) + project = "helical-sol-409813" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA-SOUTH2" + name = "helical-sol-409813-demo" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=helical-sol-409813-demo] google_bigquery_dataset.demo-dataset: Creation complete after 5s [id=projects/helical-sol-409813/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_jp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "dtc-de-course-412115" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-jp" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-course-412115/datasets/demo_dataset_jp] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket-jp] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terraform_demo_412714_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412714" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412714-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412714/datasets/terraform_demo_412714_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412714-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.ny_taxi_dataset will be created + resource "google_bigquery_dataset" "ny_taxi_dataset" { + creation_time = (known after apply) + dataset_id = "ny_taxi_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EUROPE-WEST2" + max_time_travel_hours = (known after apply) + project = "upbeat-bolt-412612" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.ny_taxi_bucket will be created + resource "google_storage_bucket" "ny_taxi_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST2" + name = "upbeat-bolt-412612-ny-taxi-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.ny_taxi_dataset: Creating... google_storage_bucket.ny_taxi_bucket: Creating... google_bigquery_dataset.ny_taxi_dataset: Creation complete after 1s [id=projects/upbeat-bolt-412612/datasets/ny_taxi_dataset] google_storage_bucket.ny_taxi_bucket: Creation complete after 1s [id=upbeat-bolt-412612-ny-taxi-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "some-project-name-123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
var.project Your GCP Project ID Enter a value: dtc-de-376922 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + max_time_travel_hours = (known after apply) + project = "dtc-de-376922" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_dtc-de-376922" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/dtc-de-376922/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_dtc-de-376922] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-demo-terra-bucket-safgasfwae] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-module-1" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-module-1/datasets/demo_dataset] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
(de-zoom) bgoldb@Bens-MBP terraform % terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # azurerm_resource_group.bg-rg will be created + resource "azurerm_resource_group" "bg-rg" { + id = (known after apply) + location = "eastus" + name = "bg-resources" } # azurerm_storage_account.bg_storage will be created + resource "azurerm_storage_account" "bg_storage" { + access_tier = (known after apply) + account_kind = "StorageV2" + account_replication_type = "GRS" + account_tier = "Standard" + allow_nested_items_to_be_public = true + cross_tenant_replication_enabled = true + default_to_oauth_authentication = false + enable_https_traffic_only = true + id = (known after apply) + infrastructure_encryption_enabled = false + is_hns_enabled = false + large_file_share_enabled = (known after apply) + location = "eastus" + min_tls_version = "TLS1_2" + name = "bgstoragebucket" + nfsv3_enabled = false + primary_access_key = (sensitive value) + primary_blob_connection_string = (sensitive value) + primary_blob_endpoint = (known after apply) + primary_blob_host = (known after apply) + primary_blob_internet_endpoint = (known after apply) + primary_blob_internet_host = (known after apply) + primary_blob_microsoft_endpoint = (known after apply) + primary_blob_microsoft_host = (known after apply) + primary_connection_string = (sensitive value) + primary_dfs_endpoint = (known after apply) + primary_dfs_host = (known after apply) + primary_dfs_internet_endpoint = (known after apply) + primary_dfs_internet_host = (known after apply) + primary_dfs_microsoft_endpoint = (known after apply) + primary_dfs_microsoft_host = (known after apply) + primary_file_endpoint = (known after apply) + primary_file_host = (known after apply) + primary_file_internet_endpoint = (known after apply) + primary_file_internet_host = (known after apply) + primary_file_microsoft_endpoint = (known after apply) + primary_file_microsoft_host = (known after apply) + primary_location = (known after apply) + primary_queue_endpoint = (known after apply) + primary_queue_host = (known after apply) + primary_queue_microsoft_endpoint = (known after apply) + primary_queue_microsoft_host = (known after apply) + primary_table_endpoint = (known after apply) + primary_table_host = (known after apply) + primary_table_microsoft_endpoint = (known after apply) + primary_table_microsoft_host = (known after apply) + primary_web_endpoint = (known after apply) + primary_web_host = (known after apply) + primary_web_internet_endpoint = (known after apply) + primary_web_internet_host = (known after apply) + primary_web_microsoft_endpoint = (known after apply) + primary_web_microsoft_host = (known after apply) + public_network_access_enabled = true + queue_encryption_key_type = "Service" + resource_group_name = "bg-resources" + secondary_access_key = (sensitive value) + secondary_blob_connection_string = (sensitive value) + secondary_blob_endpoint = (known after apply) + secondary_blob_host = (known after apply) + secondary_blob_internet_endpoint = (known after apply) + secondary_blob_internet_host = (known after apply) + secondary_blob_microsoft_endpoint = (known after apply) + secondary_blob_microsoft_host = (known after apply) + secondary_connection_string = (sensitive value) + secondary_dfs_endpoint = (known after apply) + secondary_dfs_host = (known after apply) + secondary_dfs_internet_endpoint = (known after apply) + secondary_dfs_internet_host = (known after apply) + secondary_dfs_microsoft_endpoint = (known after apply) + secondary_dfs_microsoft_host = (known after apply) + secondary_file_endpoint = (known after apply) + secondary_file_host = (known after apply) + secondary_file_internet_endpoint = (known after apply) + secondary_file_internet_host = (known after apply) + secondary_file_microsoft_endpoint = (known after apply) + secondary_file_microsoft_host = (known after apply) + secondary_location = (known after apply) + secondary_queue_endpoint = (known after apply) + secondary_queue_host = (known after apply) + secondary_queue_microsoft_endpoint = (known after apply) + secondary_queue_microsoft_host = (known after apply) + secondary_table_endpoint = (known after apply) + secondary_table_host = (known after apply) + secondary_table_microsoft_endpoint = (known after apply) + secondary_table_microsoft_host = (known after apply) + secondary_web_endpoint = (known after apply) + secondary_web_host = (known after apply) + secondary_web_internet_endpoint = (known after apply) + secondary_web_internet_host = (known after apply) + secondary_web_microsoft_endpoint = (known after apply) + secondary_web_microsoft_host = (known after apply) + sftp_enabled = false + shared_access_key_enabled = true + table_encryption_key_type = "Service" + tags = { + "environment" = "dev" } } # azurerm_virtual_network.bg-vn will be created + resource "azurerm_virtual_network" "bg-vn" { + address_space = [ + "10.123.0.0/16", ] + dns_servers = (known after apply) + guid = (known after apply) + id = (known after apply) + location = "eastus" + name = "bg-network" + resource_group_name = "bg-resources" + subnet = (known after apply) } Plan: 3 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.terra_dataset will be created + resource "google_bigquery_dataset" "terra_dataset" { + creation_time = (known after apply) + dataset_id = "terra_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "astute-impulse-412600" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terra-bucket will be created + resource "google_storage_bucket" "terra-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "astute-impulse-412600-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412617" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.auto-expire will be created + resource "google_storage_bucket" "auto-expire" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412617-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.auto-expire: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-demo-412617/datasets/demo_dataset] google_storage_bucket.auto-expire: Creation complete after 2s [id=terraform-demo-412617-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "digital-gearbox-411612" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "digital-gearbox-411612-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/digital-gearbox-411612/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=digital-gearbox-411612-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-dev-country-411714" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-dev-country-411714] 1
Terraform is an infrastructure as code tool that enables you to safely and predictably provision and manage infrastructure in any cloud. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "gold-order-410717" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "gold-order-410717-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 2s [id=projects/terrademo-412700/datasets/terra_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=terrademo-412700-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "green_taxi_trips" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "taxi-rides-ny-412715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "taxi-rides-ny-412715-storage-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/taxi-rides-ny-412715/datasets/green_taxi_trips] google_storage_bucket.demo-bucket: Creation complete after 1s [id=taxi-rides-ny-412715-storage-bucket] 1
google_storage_bucket.demo-bucket: Refreshing state... [id=terraform-datatalks-terra-bucket] google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/terraform-datatalks/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: ~ update in-place Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be updated in-place ~ resource "google_bigquery_dataset" "demo_dataset" { - default_partition_expiration_ms = 5184000000 -> null - default_table_expiration_ms = 5184000000 -> null id = "projects/terraform-datatalks/datasets/demo_dataset" # (12 unchanged attributes hidden) # (4 unchanged blocks hidden) } Plan: 0 to add, 1 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Modifying... [id=projects/terraform-datatalks/datasets/demo_dataset] google_bigquery_dataset.demo_dataset: Modifications complete after 1s [id=projects/terraform-datatalks/datasets/demo_dataset] Apply complete! Resources: 0 added, 1 changed, 0 destroyed. 1
(base) ndirangu749@envy15:~/ZOOMCAMP/Data_Engineering_Zoomcamp_2024/week_1_basics_n_setup/homework$ terraform init Initializing the backend... Initializing provider plugins... - Finding hashicorp/google versions matching "5.14.0"... - Installing hashicorp/google v5.14.0... - Installed hashicorp/google v5.14.0 (signed by HashiCorp) Terraform has created a lock file .terraform.lock.hcl to record the provider selections it made above. Include this file in your version control repository so that Terraform can guarantee to make the same selections by default when you run "terraform init" in the future. Terraform has been successfully initialized! You may now begin working with Terraform. Try running "terraform plan" to see any changes that are required for your infrastructure. All Terraform commands should now work. If you ever set or change modules or backend configuration for Terraform, rerun this command to reinitialize your working directory. If you forget, other commands will detect it and remind you to do so if necessary. (base) ndirangu749@envy15:~/ZOOMCAMP/Data_Engineering_Zoomcamp_2024/week_1_basics_n_setup/homework$ terraform plan Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-north1" + max_time_travel_hours = (known after apply) + project = "direct-disk-412820" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-NORTH1" + name = "direct-disk-412820-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. ────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── Note: You didn't use the -out option to save this plan, so Terraform can't guarantee to take exactly these actions if you run "terraform apply" now. (base) ndirangu749@envy15:~/ZOOMCAMP/Data_Engineering_Zoomcamp_2024/week_1_basics_n_setup/homework$ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-north1" + max_time_travel_hours = (known after apply) + project = "direct-disk-412820" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-NORTH1" + name = "direct-disk-412820-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/direct-disk-412820/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 4s [id=direct-disk-412820-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.datacamp-demo-bucket will be created + resource "google_storage_bucket" "datacamp-demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "datacamp-demo-412721" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.datacamp-demo-bucket: Creating... google_storage_bucket.datacamp-demo-bucket: Creation complete after 2s [id=datacamp-demo-412721] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "utilitarian-arc-399715" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket_123" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/utilitarian-arc-399715/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket_123] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412611" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412611-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412611/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412611-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "arcane-timer-411710" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "arcane-timer-411710-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/arcane-timer-411710/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=arcane-timer-411710-terra-bucket] 1
terraform apply var.project Your GCP Project ID Enter a value: 759274576604 google_storage_bucket.data-lake-bucket: Refreshing state... [id=dtc_data_lake_dataeng-zoomcamp-376312] google_bigquery_dataset.dataset: Refreshing state... [id=projects/dataeng-zoomcamp-376312/datasets/trips_data_all] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "us-west1" + project = "759274576604" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket must be replaced -/+ resource "google_storage_bucket" "data-lake-bucket" { - default_event_based_hold = false -> null ~ id = "dtc_data_lake_dataeng-zoomcamp-376312" -> (known after apply) - labels = {} -> null ~ name = "dtc_data_lake_dataeng-zoomcamp-376312" -> "dtc_data_lake_759274576604" # forces replacement ~ project = "dataeng-zoomcamp-376312" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/dtc_data_lake_dataeng-zoomcamp-376312" -> (known after apply) ~ url = "gs://dtc_data_lake_dataeng-zoomcamp-376312" -> (known after apply) # (4 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 30 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } # (1 unchanged block hidden) } Plan: 2 to add, 0 to change, 1 to destroy. 1
oogle_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/hybrid-saga-412112/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket-working-data-dev will be created + resource "google_storage_bucket" "demo-bucket-working-data-dev" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo-bucket-working-data-dev" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket-working-data-dev: Creating... google_storage_bucket.demo-bucket-working-data-dev: Creation complete after 1s [id=demo-bucket-working-data-dev] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "eng_zoom_camp_big_query_homework" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "eng-zoom-camp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "eng_zoom_camp_terra_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo-dataset will be created + resource "google_bigquery_dataset" "demo-dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412114" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412114-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo-dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo-dataset: Creation complete after 2s [id=projects/terraform-demo-412114/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-412114-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/de-course-411516/datasets/terraform_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_bucket_dfvanegas" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo_bucket: Creating... google_storage_bucket.demo_bucket: Creation complete after 2s [id=terraform_bucket_dfvanegas] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "utility-logic-375619" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_utility-logic-375619" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 3s [id=projects/utility-logic-375619/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 3s [id=dtc_data_lake_utility-logic-375619] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_de_zoomcamp_411619" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411619" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_demo_terra_bucket_de_zoomcamp_411619" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-411619/datasets/demo_dataset_de_zoomcamp_411619] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform_demo_terra_bucket_de_zoomcamp_411619] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
aws_s3_bucket.terraform_test_bucket: Refreshing state... [id=de-project-bucket-yh2527] No changes. Your infrastructure matches the configuration. Terraform has compared your real infrastructure against your configuration and found no differences, so no changes are needed. Apply complete! Resources: 0 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ml_zoomcamp_402900_hw1_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "ml-zoomcamp-402900" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "ml_zoomcamp_402900_hw1_bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/ml-zoomcamp-402900/datasets/ml_zoomcamp_402900_hw1_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=ml_zoomcamp_402900_hw1_bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
@kiliantscherny ➜ /workspaces/DE-Zoomcamp-2024/terraform (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-de-kilian" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "kilian-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-de-kilian/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=kilian-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket00182] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/juanalytics/datasets/demo_dataset] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dataset_hw" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "data-engineering-project2023" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket-hw" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-hw] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/data-engineering-project2023/datasets/dataset_hw] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-2024-411900" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-411900-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-2024-411900/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-411900-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "ny_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-412918" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-ny-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/terraform-412918/datasets/ny_dataset] google_storage_bucket.demo-bucket: Creation complete after 0s [id=terraform-ny-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "cp-de-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "cp-de-zoomcamp-terra-bucket-test" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/cp-de-zoomcamp/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=cp-de-zoomcamp-terra-bucket-test] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "gifted-vigil-412323" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "demo_terraform_ot" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/gifted-vigil-412323/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=demo_terraform_ot] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(terraform) daviddada@home ~ tf apply var.project Your GCP Project ID Enter a value: hopeful-machine-405721 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "northamerica-northeast1" + max_time_travel_hours = (known after apply) + project = "hopeful-machine-405721" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "NORTHAMERICA-NORTHEAST1" + name = "dtc_data_lake_hopeful-machine-405721" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = true + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/hopeful-machine-405721/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 2s [id=dtc_data_lake_hopeful-machine-405721] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.dataset: Creating... google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 1s [id=projects/helpful-symbol-412902/datasets/terraformdataset] google_storage_bucket.data-lake-bucket: Creation complete after 1s [id=helpful-symbol-412902-terraform-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
asbru@DESKTOP-9R8I5P5 MINGW64 ~/data-engineering-zoomcamp/week_1_basics_n_setup/terraform_primer (main) $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "lithe-timer-412215" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "lithe-timer-412215-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/lithe-timer-412215/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=lithe-timer-412215-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_20240128" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "vld-dtc-de-00001" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "vld_bucket_test_20240128" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/vld-dtc-de-00001/datasets/demo_dataset_20240128] google_storage_bucket.demo-bucket: Creation complete after 1s [id=vld_bucket_test_20240128] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "dtc_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "dtc-zoomcamp-24" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "dtc-zoomcamp-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/dtc-zoomcamp-24/datasets/dtc_dataset] google_storage_bucket.demo-bucket: Creation complete after 3s [id=dtc-zoomcamp-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/rational-diode-412022/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "rational-diode-412022-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + last_modified_time = (known after apply) + location = "europe-west6" + project = "dtc-de-412312" + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + bucket_policy_only = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST6" + name = "dtc_data_lake_dtc-de-412312" + project = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 30 + is_live = (known after apply) + matches_storage_class = [] + with_state = (known after apply) } } + versioning { + enabled = true } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.data-lake-bucket: Creating... google_bigquery_dataset.dataset: Creating... google_bigquery_dataset.dataset: Creation complete after 4s [id=projects/dtc-de-412312/datasets/trips_data_all] google_storage_bucket.data-lake-bucket: Creation complete after 4s [id=dtc_data_lake_dtc-de-412312] 1
terrademo terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "terraform-demo-412302" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-412302-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/terraform-demo-412302/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-412302-terra-bucket] 1
google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-demo-terra-bucket-jloscalzo] Apply complete! Resources: 1 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "terraform-demo-411813" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "terraform-demo-411813-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "AUSTRALIA-SOUTHEAST2" + max_time_travel_hours = (known after apply) + project = "vaulted-bit-411213" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "AUSTRALIA-SOUTHEAST2" + name = "59201240277-terraform-demo-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 3s [id=59201240277-terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 3s [id=projects/vaulted-bit-411213/datasets/demo_dataset] 1
Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform-runner-412811-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/terraform-runner-412811/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
(base) ➜ terraform_gcp terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_adjei" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-412401" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-terra-bucket_adjei" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/de-zoomcamp-412401/datasets/demo_dataset_adjei] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-demo-terra-bucket_adjei] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "fleet-furnace-412302" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo_bucket will be created + resource "google_storage_bucket" "demo_bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "fleet-furnace-412302-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo_bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/fleet-furnace-412302/datasets/demo_dataset] google_storage_bucket.demo_bucket: Creation complete after 1s [id=fleet-furnace-412302-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "northamerica-northeast2" + max_time_travel_hours = (known after apply) + project = "civic-indexer-411316" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "NORTHAMERICA-NORTHEAST2" + name = "civic-indexer-411316-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 0s [id=civic-indexer-411316-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/civic-indexer-411316/datasets/demo_dataset] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
var.project Your GCP Project ID Enter a value: dtc-de-course-411918 Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "trips_data_all" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "us-east1" + project = "dtc-de-course-411918" + self_link = (known after apply) + access { + domain = (known after apply) + group_by_email = (known after apply) + role = (known after apply) + special_group = (known after apply) + user_by_email = (known after apply) + dataset { + target_types = (known after apply) + dataset { + dataset_id = (known after apply) + project_id = (known after apply) } } + routine { + dataset_id = (known after apply) + project_id = (known after apply) + routine_id = (known after apply) } + view { + dataset_id = (known after apply) + project_id = (known after apply) + table_id = (known after apply) } } } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + force_destroy = true + id = (known after apply) + location = "US-EAST1" + name = "dtc_data_lake_dtc-de-course-411918" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + versioning { + enabled = (known after apply) } + website { + main_page_suffix = (known after apply) + not_found_page = (known after apply) } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.dataset: Creation complete after 0s [id=projects/dtc-de-course-411918/datasets/trips_data_all] google_storage_bucket.demo-bucket: Creation complete after 0s [id=dtc_data_lake_dtc-de-course-411918] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "terra_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "europe-west2" + max_time_travel_hours = (known after apply) + project = "evident-display-410312" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EUROPE-WEST2" + name = "demo-terra-bucket_evident-display-410312" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/evident-display-410312/datasets/terra_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=demo-terra-bucket_evident-display-410312] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "EU" + max_time_travel_hours = (known after apply) + project = "pivotal-bonbon-411719" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "EU" + name = "pivotal-bonbon-411719-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 1s [id=pivotal-bonbon-411719-terra-bucket] google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/pivotal-bonbon-411719/datasets/demo_dataset] 1
google_bigquery_dataset.demo_dataset: Refreshing state... [id=projects/datatalks-de-409612/datasets/demo_dataset] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "datatalks-de-409612-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... google_storage_bucket.demo-bucket: Creation complete after 2s [id=datatalks-de-409612-terra-bucket] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412404-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 1 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Creating... ╷ │ Error: googleapi: Error 403: The billing account for the owning project is disabled in state absent, accountDisabled │ │ with google_storage_bucket.demo-bucket, │ on main.tf line 16, in resource "google_storage_bucket" "demo-bucket": │ 16: resource "google_storage_bucket" "demo-bucket" { │ ╵ CHAOS@DESKTOP-3DD9SNO MINGW64 ~/downloads/teraform $ terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "dtc-de-course-412404-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + rpo = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "Delete" } + condition { + age = 3 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } 1
Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/data-taxi-1/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 1s [id=terraform-taxi-data-1] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "drux-de-zoomcamp" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.terraform-demo-drux31-bucket will be created + resource "google_storage_bucket" "terraform-demo-drux31-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform-demo-drux31-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.terraform-demo-drux31-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 0s [id=projects/drux-de-zoomcamp/datasets/demo_dataset] google_storage_bucket.terraform-demo-drux31-bucket: Creation complete after 1s [id=terraform-demo-drux31-bucket] 1
google_storage_bucket.demo-bucket: Refreshing state... [id=qu-qu-353611-terraform-demo-terra-bucket] Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create -/+ destroy and then create replacement Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "qu_qu_353611_demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "qu-qu-353611" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket must be replaced -/+ resource "google_storage_bucket" "demo-bucket" { - default_event_based_hold = false -> null ~ effective_labels = {} -> (known after apply) - enable_object_retention = false -> null ~ id = "qu-qu-353611-terraform-demo-terra-bucket" -> (known after apply) - labels = {} -> null ~ name = "qu-qu-353611-terraform-demo-terra-bucket" -> "qu_qu_353611_terraform-demo-terra-bucket" # forces replacement ~ project = "qu-qu-353611" -> (known after apply) ~ public_access_prevention = "inherited" -> (known after apply) - requester_pays = false -> null ~ self_link = "https://www.googleapis.com/storage/v1/b/qu-qu-353611-terraform-demo-terra-bucket" -> (known after apply) ~ terraform_labels = {} -> (known after apply) ~ uniform_bucket_level_access = false -> (known after apply) ~ url = "gs://qu-qu-353611-terraform-demo-terra-bucket" -> (known after apply) # (3 unchanged attributes hidden) ~ lifecycle_rule { - condition { - age = 1 -> null - days_since_custom_time = 0 -> null - days_since_noncurrent_time = 0 -> null - matches_prefix = [] -> null - matches_storage_class = [] -> null - matches_suffix = [] -> null - num_newer_versions = 0 -> null - with_state = "ANY" -> null } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } # (1 unchanged block hidden) } } Plan: 2 to add, 0 to change, 1 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_storage_bucket.demo-bucket: Destroying... [id=qu-qu-353611-terraform-demo-terra-bucket] google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Destruction complete after 1s google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/qu-qu-353611/datasets/qu_qu_353611_demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 2s [id=qu_qu_353611_terraform-demo-terra-bucket] Apply complete! Resources: 2 added, 0 changed, 1 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "sharp-harbor-411301" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "ASIA" + name = "sharp-harbor-411301-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 2s [id=projects/sharp-harbor-411301/datasets/demo_dataset] google_storage_bucket.demo-bucket: Creation complete after 5s [id=sharp-harbor-411301-bucket] 1
terraform apply Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.first_dataset will be created + resource "google_bigquery_dataset" "first_dataset" { + creation_time = (known after apply) + dataset_id = "de_Zoomcamp" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "de-zoomcamp-411222" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.zc_tfbucket will be created + resource "google_storage_bucket" "zc_tfbucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "zc-tfbucket-4112226920" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.first_dataset: Creating... google_storage_bucket.zc_tfbucket: Creating... google_bigquery_dataset.first_dataset: Creation complete after 0s [id=projects/de-zoomcamp-411222/datasets/de_Zoomcamp] google_storage_bucket.zc_tfbucket: Creation complete after 1s [id=zc-tfbucket-4112226920] 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.demo_dataset will be created + resource "google_bigquery_dataset" "demo_dataset" { + creation_time = (known after apply) + dataset_id = "demo_dataset_high_magpie_412123" + default_collation = (known after apply) + delete_contents_on_destroy = false + effective_labels = (known after apply) + etag = (known after apply) + id = (known after apply) + is_case_insensitive = (known after apply) + last_modified_time = (known after apply) + location = "US" + max_time_travel_hours = (known after apply) + project = "high-magpie-412123" + self_link = (known after apply) + storage_billing_model = (known after apply) + terraform_labels = (known after apply) } # google_storage_bucket.demo-bucket will be created + resource "google_storage_bucket" "demo-bucket" { + effective_labels = (known after apply) + force_destroy = true + id = (known after apply) + location = "US" + name = "terraform_demo_bucket_high_magpie_412123" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + terraform_labels = (known after apply) + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: yes google_bigquery_dataset.demo_dataset: Creating... google_storage_bucket.demo-bucket: Creating... google_bigquery_dataset.demo_dataset: Creation complete after 1s [id=projects/high-magpie-412123/datasets/demo_dataset_high_magpie_412123] google_storage_bucket.demo-bucket: Creation complete after 2s [id=terraform_demo_bucket_high_magpie_412123] Apply complete! Resources: 2 added, 0 changed, 0 destroyed. 1
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the following symbols: + create Terraform will perform the following actions: # google_bigquery_dataset.dataset will be created + resource "google_bigquery_dataset" "dataset" { + creation_time = (known after apply) + dataset_id = "dataset" + delete_contents_on_destroy = false + etag = (known after apply) + id = (known after apply) + labels = (known after apply) + last_modified_time = (known after apply) + location = "US" + project = (known after apply) + self_link = (known after apply) } # google_storage_bucket.data-lake-bucket will be created + resource "google_storage_bucket" "data-lake-bucket" { + force_destroy = true + id = (known after apply) + location = "US" + name = "zoomcamp2024-412215-terra-bucket" + project = (known after apply) + public_access_prevention = (known after apply) + self_link = (known after apply) + storage_class = "STANDARD" + uniform_bucket_level_access = (known after apply) + url = (known after apply) + lifecycle_rule { + action { + type = "AbortIncompleteMultipartUpload" } + condition { + age = 1 + matches_prefix = [] + matches_storage_class = [] + matches_suffix = [] + with_state = (known after apply) } } } Plan: 2 to add, 0 to change, 0 to destroy. Do you want to perform these actions? Terraform will perform the actions described above. Only 'yes' will be accepted to approve. Enter a value: 1

Calculated: 11 October 2024, 08:33