Skip to content

Conversation

erikamov
Copy link
Contributor

@erikamov erikamov commented Sep 19, 2025

Description

This PR changes the bucket calitp-state-highway-network-stops location to us-west2 through Terraform.

It is currently using US region and since there is no data I can just replace the location.

This change is important to keep buckets at the same region as BigQuery and part of the Cost Savings plan: #3711

[#3712]

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Documentation

How has this been tested?

Tested using terraform plan.

Post-merge follow-ups

  • No action required
  • Actions required (specified below)

Confirm the location was changed.

@erikamov erikamov self-assigned this Sep 19, 2025
@erikamov erikamov force-pushed the mov/3712-fix-state-highway-location branch 2 times, most recently from fa8e522 to 9a8b893 Compare September 19, 2025 19:31
@cal-itp cal-itp deleted a comment from github-actions bot Sep 19, 2025
@cal-itp cal-itp deleted a comment from github-actions bot Sep 19, 2025
@cal-itp cal-itp deleted a comment from github-actions bot Sep 19, 2025
Copy link

github-actions bot commented Sep 19, 2025

Terraform plan in iac/cal-itp-data-infra/gcs/us

Plan: 1 to add, 8 to change, 1 to destroy. Changes to Outputs.
Terraform used the selected providers to generate the following execution
plan. Resource actions are indicated with the following symbols:
!~  update in-place
-/+ destroy and then create replacement

Terraform will perform the following actions:

  # google_storage_bucket.tfer--calitp-state-highway-network-stops must be replaced
-/+ resource "google_storage_bucket" "tfer--calitp-state-highway-network-stops" {
!~      effective_labels            = {
+           "goog-terraform-provisioned" = "true"
        }
-       enable_object_retention     = false -> null
!~      id                          = "**********************************" -> (known after apply)
-       labels                      = {} -> null
!~      location                    = "US" -> "US-WEST2" # forces replacement
        name                        = "calitp-state-highway-network-stops"
!~      project_number              = 1005246706141 -> (known after apply)
!~      rpo                         = "DEFAULT" -> (known after apply)
!~      self_link                   = "https://www.googleapis.com/storage/v1/b/calitp-state-highway-network-stops" -> (known after apply)
!~      terraform_labels            = {
+           "goog-terraform-provisioned" = "true"
        }
!~      time_created                = "2024-10-01T17:58:00.763Z" -> (known after apply)
!~      updated                     = "2024-10-01T17:58:00.763Z" -> (known after apply)
!~      url                         = "gs://calitp-state-highway-network-stops" -> (known after apply)
#        (7 unchanged attributes hidden)

-       hierarchical_namespace {
-           enabled = false -> null
        }

!~      soft_delete_policy (known after apply)
-       soft_delete_policy {
-           effective_time             = "2024-10-01T17:58:00.763Z" -> null
-           retention_duration_seconds = 604800 -> null
        }

-       timeouts {}

!~      versioning (known after apply)

!~      website (known after apply)
    }

  # google_storage_bucket.tfer--rt-parsed-deprecated will be updated in-place
!~  resource "google_storage_bucket" "tfer--rt-parsed-deprecated" {
        id                          = "rt-parsed-deprecated"
        name                        = "rt-parsed-deprecated"
!~      terraform_labels            = {
+           "deprecated" = (known after apply)
        }
#        (16 unchanged attributes hidden)

#        (2 unchanged blocks hidden)
    }

  # google_storage_bucket_iam_binding.tfer--calitp-gtfs-rt-validation will be updated in-place
!~  resource "google_storage_bucket_iam_binding" "tfer--calitp-gtfs-rt-validation" {
        id      = "calitp-gtfs-rt-validation"
!~      members = [
-           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
#            (1 unchanged element hidden)
        ]
#        (3 unchanged attributes hidden)
    }

  # google_storage_bucket_iam_binding.tfer--rt-parsed-deprecated will be updated in-place
!~  resource "google_storage_bucket_iam_binding" "tfer--rt-parsed-deprecated" {
        id      = "rt-parsed-deprecated"
!~      members = [
-           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
#            (1 unchanged element hidden)
        ]
#        (3 unchanged attributes hidden)
    }

  # google_storage_bucket_iam_policy.tfer--calitp-gtfs-rt-parsed will be updated in-place
!~  resource "google_storage_bucket_iam_policy" "tfer--calitp-gtfs-rt-parsed" {
        id          = "calitp-gtfs-rt-parsed"
!~      policy_data = jsonencode(
!~          {
!~              bindings = [
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyBucketOwner"
                    },
!~                  {
!~                      members = [
                            "projectViewer:cal-itp-data-infra",
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
#                        (1 unchanged attribute hidden)
                    },
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectOwner"
                    },
                    {
                        members = [
                            "projectViewer:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectReader"
                    },
-                   {
-                       members = [
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
-                       role    = "roles/storage.objectAdmin"
                    },
-                   {
-                       members = [
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
-                       role    = "roles/storage.objectViewer"
                    },
                ]
            }
        )
#        (2 unchanged attributes hidden)
    }

  # google_storage_bucket_iam_policy.tfer--calitp-gtfs-rt-raw-v2 will be updated in-place
!~  resource "google_storage_bucket_iam_policy" "tfer--calitp-gtfs-rt-raw-v2" {
        id          = "calitp-gtfs-rt-raw-v2"
!~      policy_data = jsonencode(
!~          {
!~              bindings = [
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyBucketOwner"
                    },
!~                  {
!~                      members = [
                            "projectViewer:cal-itp-data-infra",
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
#                        (1 unchanged attribute hidden)
                    },
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectOwner"
                    },
#                    (2 unchanged elements hidden)
                    {
                        members = [
                            "serviceAccount:[email protected]",
                        ]
                        role    = "roles/storage.objectCreator"
                    },
!~                  {
!~                      members = [
                            "serviceAccount:[email protected]",
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
#                        (1 unchanged attribute hidden)
                    },
                ]
            }
        )
#        (2 unchanged attributes hidden)
    }

  # google_storage_bucket_iam_policy.tfer--calitp-gtfs-rt-validation will be updated in-place
!~  resource "google_storage_bucket_iam_policy" "tfer--calitp-gtfs-rt-validation" {
        id          = "calitp-gtfs-rt-validation"
!~      policy_data = jsonencode(
!~          {
!~              bindings = [
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyBucketOwner"
                    },
!~                  {
!~                      members = [
                            "projectViewer:cal-itp-data-infra",
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
#                        (1 unchanged attribute hidden)
                    },
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectOwner"
                    },
                    {
                        members = [
                            "projectViewer:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectReader"
                    },
-                   {
-                       members = [
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
-                       role    = "roles/storage.objectAdmin"
                    },
                ]
            }
        )
#        (2 unchanged attributes hidden)
    }

  # google_storage_bucket_iam_policy.tfer--calitp-gtfs-schedule-raw-v2 will be updated in-place
!~  resource "google_storage_bucket_iam_policy" "tfer--calitp-gtfs-schedule-raw-v2" {
        id          = "calitp-gtfs-schedule-raw-v2"
!~      policy_data = jsonencode(
!~          {
!~              bindings = [
#                    (4 unchanged elements hidden)
                    {
                        members = [
                            "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
                        role    = "roles/storage.objectAdmin"
                    },
-                   {
-                       members = [
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
-                       role    = "roles/storage.objectViewer"
                    },
                ]
            }
        )
#        (2 unchanged attributes hidden)
    }

  # google_storage_bucket_iam_policy.tfer--rt-parsed-deprecated will be updated in-place
!~  resource "google_storage_bucket_iam_policy" "tfer--rt-parsed-deprecated" {
        id          = "rt-parsed-deprecated"
!~      policy_data = jsonencode(
!~          {
!~              bindings = [
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyBucketOwner"
                    },
!~                  {
!~                      members = [
                            "projectViewer:cal-itp-data-infra",
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
#                        (1 unchanged attribute hidden)
                    },
                    {
                        members = [
                            "projectEditor:cal-itp-data-infra",
                            "projectOwner:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectOwner"
                    },
                    {
                        members = [
                            "projectViewer:cal-itp-data-infra",
                        ]
                        role    = "roles/storage.legacyObjectReader"
                    },
-                   {
-                       members = [
-                           "serviceAccount:project-1005246706141@storage-transfer-service.iam.gserviceaccount.com",
                        ]
-                       role    = "roles/storage.objectAdmin"
                    },
                ]
            }
        )
#        (2 unchanged attributes hidden)
    }

Plan: 1 to add, 8 to change, 1 to destroy.

Changes to Outputs:
!~  google_storage_bucket_tfer--calitp-state-highway-network-stops_self_link                                   = "https://www.googleapis.com/storage/v1/b/calitp-state-highway-network-stops" -> (known after apply)

📝 Plan generated in Terraform Plan #573

@erikamov erikamov force-pushed the mov/3712-fix-state-highway-location branch from 9a8b893 to 2b16691 Compare September 24, 2025 22:40
@ohrite ohrite force-pushed the mov/3712-fix-state-highway-location branch 2 times, most recently from 014496a to 646b0f9 Compare September 26, 2025 04:00
@erikamov erikamov force-pushed the mov/3712-fix-state-highway-location branch from 646b0f9 to 6a38863 Compare October 9, 2025 20:24
@erikamov erikamov force-pushed the mov/3712-fix-state-highway-location branch from 6a38863 to 254c10b Compare October 10, 2025 23:00
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants