diff --git a/iac/cal-itp-data-infra-staging/airflow/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/airflow/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/airflow/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/airflow/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/airflow/us/provider.tf b/iac/cal-itp-data-infra-staging/airflow/us/provider.tf index f50142b439..2b1f646364 100755 --- a/iac/cal-itp-data-infra-staging/airflow/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/airflow/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/cdn/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/cdn/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/cdn/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/cdn/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/cdn/us/provider.tf b/iac/cal-itp-data-infra-staging/cdn/us/provider.tf index 79712798ec..c479a39134 100644 --- a/iac/cal-itp-data-infra-staging/cdn/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/cdn/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/composer/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/composer/us/.terraform.lock.hcl index 9585000de9..5b413e062d 100644 --- a/iac/cal-itp-data-infra-staging/composer/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/composer/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/composer/us/provider.tf b/iac/cal-itp-data-infra-staging/composer/us/provider.tf index 0baaf92ce4..4307b72844 100644 --- a/iac/cal-itp-data-infra-staging/composer/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/composer/us/provider.tf @@ -16,7 +16,7 @@ provider "kubernetes" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } kubernetes = { diff --git a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/.terraform.lock.hcl similarity index 56% rename from iac/cal-itp-data-infra-staging/sftp/us/enghouse/.terraform.lock.hcl rename to iac/cal-itp-data-infra-staging/enghouse-sftp/us/.terraform.lock.hcl index 7c88416d75..789ce9f110 100644 --- a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/.terraform.lock.hcl @@ -2,21 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } @@ -25,6 +25,7 @@ provider "registry.terraform.io/hashicorp/kubernetes" { version = "2.38.0" hashes = [ "h1:7nJdsd1RMPBtOjDXidB37+KSDN5VcOWkbkow69qJVGc=", + "h1:soK8Lt0SZ6dB+HsypFRDzuX/npqlMU6M0fvyaR1yW0k=", "zh:0af928d776eb269b192dc0ea0f8a3f0f5ec117224cd644bdacdc682300f84ba0", "zh:1be998e67206f7cfc4ffe77c01a09ac91ce725de0abaec9030b22c0a832af44f", "zh:326803fe5946023687d603f6f1bab24de7af3d426b01d20e51d4e6fbe4e7ec1b", diff --git a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/enghouse-sftp-endpoint.tf b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/enghouse-sftp-endpoint.tf similarity index 100% rename from iac/cal-itp-data-infra-staging/sftp/us/enghouse/enghouse-sftp-endpoint.tf rename to iac/cal-itp-data-infra-staging/enghouse-sftp/us/enghouse-sftp-endpoint.tf diff --git a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/outputs.tf b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/outputs.tf similarity index 100% rename from iac/cal-itp-data-infra-staging/sftp/us/enghouse/outputs.tf rename to iac/cal-itp-data-infra-staging/enghouse-sftp/us/outputs.tf diff --git a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/provider.tf b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/provider.tf similarity index 95% rename from iac/cal-itp-data-infra-staging/sftp/us/enghouse/provider.tf rename to iac/cal-itp-data-infra-staging/enghouse-sftp/us/provider.tf index 4bfa6e9bde..c276c8929d 100755 --- a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/provider.tf +++ b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } @@ -13,7 +13,6 @@ terraform { bucket = "calitp-staging-gcp-components-tfstate" prefix = "cal-itp-data-infra-staging/sftp-enghouse" } - } data "google_client_config" "default" {} diff --git a/iac/cal-itp-data-infra-staging/sftp/us/enghouse/variables.tf b/iac/cal-itp-data-infra-staging/enghouse-sftp/us/variables.tf similarity index 100% rename from iac/cal-itp-data-infra-staging/sftp/us/enghouse/variables.tf rename to iac/cal-itp-data-infra-staging/enghouse-sftp/us/variables.tf diff --git a/iac/cal-itp-data-infra-staging/firewall/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/firewall/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/firewall/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/firewall/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/firewall/us/provider.tf b/iac/cal-itp-data-infra-staging/firewall/us/provider.tf index d52f1e2445..ff2fb889e5 100755 --- a/iac/cal-itp-data-infra-staging/firewall/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/firewall/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/gcs/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/gcs/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/gcs/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/gcs/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/gcs/us/provider.tf b/iac/cal-itp-data-infra-staging/gcs/us/provider.tf index 528ca7a3cc..36a1d53e3c 100755 --- a/iac/cal-itp-data-infra-staging/gcs/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/gcs/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/gke/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/gke/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/gke/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/gke/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/gke/us/provider.tf b/iac/cal-itp-data-infra-staging/gke/us/provider.tf index 7b133af51b..a1339def8a 100755 --- a/iac/cal-itp-data-infra-staging/gke/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/gke/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/.terraform.lock.hcl new file mode 100644 index 0000000000..72ac3c1275 --- /dev/null +++ b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/.terraform.lock.hcl @@ -0,0 +1,22 @@ +# This file is maintained automatically by "terraform init". +# Manual edits may be lost in future updates. + +provider "registry.terraform.io/hashicorp/google" { + version = "7.10.0" + constraints = "~> 7.10.0" + hashes = [ + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", + "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", + ] +} diff --git a/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/provider.tf b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/provider.tf new file mode 100644 index 0000000000..05b27cd726 --- /dev/null +++ b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/provider.tf @@ -0,0 +1,16 @@ +provider "google" { + project = "cal-itp-data-infra-staging" +} + +terraform { + required_providers { + google = { + version = "~> 7.10.0" + } + } + + backend "gcs" { + bucket = "calitp-staging-gcp-components-tfstate" + prefix = "cal-itp-data-infra-staging/gtfs-rt-archiver" + } +} diff --git a/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/variables.tf b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/variables.tf new file mode 100644 index 0000000000..dc5bcfa250 --- /dev/null +++ b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/variables.tf @@ -0,0 +1,21 @@ +locals { + workflow_path = "${path.module}/../../../../workflows" +} + +data "terraform_remote_state" "iam" { + backend = "gcs" + + config = { + bucket = "calitp-staging-gcp-components-tfstate" + prefix = "cal-itp-data-infra-staging/iam" + } +} + +data "terraform_remote_state" "gcs" { + backend = "gcs" + + config = { + bucket = "calitp-staging-gcp-components-tfstate" + prefix = "cal-itp-data-infra-staging/gcs" + } +} diff --git a/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/workflow.tf b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/workflow.tf new file mode 100644 index 0000000000..6a035c1420 --- /dev/null +++ b/iac/cal-itp-data-infra-staging/gtfs-rt-archiver/us/workflow.tf @@ -0,0 +1,79 @@ +resource "google_pubsub_topic" "gtfs-rt-feed-archiver" { + name = "gtfs-rt-feed-archiver" + project = "cal-itp-data-infra-staging" +} + +resource "google_eventarc_trigger" "gtfs-rt-feed-archiver" { + name = "gtfs-rt-feed-archiver" + location = "us-west2" + project = "cal-itp-data-infra-staging" + + service_account = data.terraform_remote_state.iam.outputs.google_service_account_workflow-service-account_email + + matching_criteria { + attribute = "type" + value = "google.cloud.pubsub.topic.v1.messagePublished" + } + + destination { + workflow = google_workflows_workflow.gtfs-rt-feed-archiver.id + } + + transport { + pubsub { + topic = google_pubsub_topic.gtfs-rt-feed-archiver.id + } + } +} + +resource "google_workflows_workflow" "gtfs-rt-archiver" { + name = "gtfs-rt-archiver" + region = "us-west2" + project = "cal-itp-data-infra-staging" + description = "GTFS-RT Archiver" + service_account = data.terraform_remote_state.iam.outputs.google_service_account_workflow-service-account_email + source_contents = templatefile("${local.workflow_path}/gtfs-rt-archiver.yaml", {}) + + call_log_level = "LOG_ALL_CALLS" + execution_history_level = "EXECUTION_HISTORY_DETAILED" + + user_env_vars = { + "GTFS_RT_ARCHIVER__TOPIC" = google_pubsub_topic.gtfs-rt-feed-archiver.id + } +} + +resource "google_cloud_scheduler_job" "gtfs-rt-archiver" { + project = "cal-itp-data-infra-staging" + name = "gtfs-rt-archiver" + description = "Cloud Scheduler for the GTFS-RT Archiver" + schedule = "*/15 * * * *" + time_zone = "America/Los_Angeles" + attempt_deadline = "60s" + region = "us-west2" + + http_target { + http_method = "POST" + uri = "https://workflowexecutions.googleapis.com/v1/${google_workflows_workflow.gtfs-rt-archiver.id}/executions" + body = base64encode(jsonencode({ argument = jsonencode({ limit = 1 }) })) + + oauth_token { + service_account_email = data.terraform_remote_state.iam.outputs.google_service_account_workflow-service-account_email + } + } +} + +resource "google_workflows_workflow" "gtfs-rt-feed-archiver" { + name = "gtfs-rt-feed-archiver" + region = "us-west2" + project = "cal-itp-data-infra-staging" + description = "GTFS-RT Feed Archiver" + service_account = data.terraform_remote_state.iam.outputs.google_service_account_workflow-service-account_email + source_contents = templatefile("${local.workflow_path}/gtfs-rt-feed-archiver.yaml", {}) + + call_log_level = "LOG_ALL_CALLS" + execution_history_level = "EXECUTION_HISTORY_DETAILED" + + user_env_vars = { + "CALITP_BUCKET__GTFS_RT_RAW" = data.terraform_remote_state.gcs.outputs.google_storage_bucket_calitp-staging-gtfs-rt-raw-v2_name + } +} diff --git a/iac/cal-itp-data-infra-staging/iam/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/iam/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/iam/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/iam/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/iam/us/outputs.tf b/iac/cal-itp-data-infra-staging/iam/us/outputs.tf index 2444c6b051..8d9d52c48a 100755 --- a/iac/cal-itp-data-infra-staging/iam/us/outputs.tf +++ b/iac/cal-itp-data-infra-staging/iam/us/outputs.tf @@ -190,6 +190,10 @@ output "google_service_account_composer-service-account_name" { value = google_service_account.composer-service-account.name } +output "google_service_account_workflow-service-account_email" { + value = google_service_account.workflow-service-account.email +} + output "google_service_account_sftp-pod-service-account_id" { value = google_service_account.sftp-pod-service-account.id } diff --git a/iac/cal-itp-data-infra-staging/iam/us/project_iam_member.tf b/iac/cal-itp-data-infra-staging/iam/us/project_iam_member.tf index ff540651cc..5a875edaf3 100755 --- a/iac/cal-itp-data-infra-staging/iam/us/project_iam_member.tf +++ b/iac/cal-itp-data-infra-staging/iam/us/project_iam_member.tf @@ -294,6 +294,21 @@ resource "google_project_iam_member" "composer-service-account" { project = "cal-itp-data-infra-staging" } +resource "google_project_iam_member" "workflow-service-account" { + for_each = toset([ + "roles/storage.objectUser", + "roles/bigquery.dataViewer", + "roles/bigquery.jobUser", + "roles/pubsub.publisher", + "roles/secretmanager.secretAccessor", + "roles/workflows.invoker", + "roles/iam.serviceAccountTokenCreator" + ]) + role = each.key + member = "serviceAccount:${google_service_account.workflow-service-account.email}" + project = "cal-itp-data-infra-staging" +} + resource "google_project_iam_member" "ms-entra-id-DOT_DDS_Data_Pipeline_and_Warehouse_Users" { for_each = toset([ "roles/viewer", diff --git a/iac/cal-itp-data-infra-staging/iam/us/provider.tf b/iac/cal-itp-data-infra-staging/iam/us/provider.tf index 9cb50010d4..aecf485b58 100755 --- a/iac/cal-itp-data-infra-staging/iam/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/iam/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/iam/us/service_account.tf b/iac/cal-itp-data-infra-staging/iam/us/service_account.tf index 768e8024b2..c7d0c72c25 100755 --- a/iac/cal-itp-data-infra-staging/iam/us/service_account.tf +++ b/iac/cal-itp-data-infra-staging/iam/us/service_account.tf @@ -58,6 +58,14 @@ resource "google_service_account" "composer-service-account" { project = "cal-itp-data-infra-staging" } +resource "google_service_account" "workflow-service-account" { + account_id = "workflow-service-account" + description = "Service account for Workflow" + disabled = "false" + display_name = "workflow" + project = "cal-itp-data-infra-staging" +} + resource "google_service_account" "sftp-pod-service-account" { account_id = "sftp-pod-service-account" description = "Service account for sftp server" diff --git a/iac/cal-itp-data-infra-staging/logging/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/logging/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/logging/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/logging/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/logging/us/provider.tf b/iac/cal-itp-data-infra-staging/logging/us/provider.tf index b4a9d00bfe..3eac55190d 100755 --- a/iac/cal-itp-data-infra-staging/logging/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/logging/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/networks/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/networks/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/networks/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/networks/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/networks/us/provider.tf b/iac/cal-itp-data-infra-staging/networks/us/provider.tf index f86ea03201..8209355d9c 100755 --- a/iac/cal-itp-data-infra-staging/networks/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/networks/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/project/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/project/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/project/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/project/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/project/us/provider.tf b/iac/cal-itp-data-infra-staging/project/us/provider.tf index 85c8040bdd..e66f063b30 100755 --- a/iac/cal-itp-data-infra-staging/project/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/project/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/iac/cal-itp-data-infra-staging/routes/us/.terraform.lock.hcl b/iac/cal-itp-data-infra-staging/routes/us/.terraform.lock.hcl index 528a936c80..72ac3c1275 100644 --- a/iac/cal-itp-data-infra-staging/routes/us/.terraform.lock.hcl +++ b/iac/cal-itp-data-infra-staging/routes/us/.terraform.lock.hcl @@ -2,22 +2,21 @@ # Manual edits may be lost in future updates. provider "registry.terraform.io/hashicorp/google" { - version = "6.41.0" - constraints = "~> 6.41.0" + version = "7.10.0" + constraints = "~> 7.10.0" hashes = [ - "h1:J2umU/CnA4ap8XNqSGUduqlomj/RoCIr1ojUgXe2ju8=", - "h1:f5F5LlkVvFqfmM/oWmqUDZEa8NieeHoAoEW7iNMwFVo=", - "zh:0a375c4f37599de566b6dd19d1953f70f6f88f089bb7cf97d1fa1287b2ebf41c", - "zh:2309a75bf6bd6f97ccae0c8348bb560eb893518786150cb634bc7795898d38f9", - "zh:66ed27c1b9a2b8ab7910954447f77efb319f49bc546d3611fd00d56776a928d8", - "zh:7a8624d5b8d8aee0604cb9a5bc0fb450d235983cf540dd19f68535063fa8cf17", - "zh:883879b1d5d3058d87db13b824c15193e3e2e4995a3b8165ce5835872b955349", - "zh:89971c2ca25a546febbab693f98480a1c032945e7b10e4ccfc0273c5201978bd", - "zh:923281ee1f1f5bb827786a198973abfdfb2a86e87d751e37809a19e55e84c160", - "zh:c0a28bee3e4e8722463e53ca5a090d4df5b6db5fdfb9f622461bc9bc3f27f418", - "zh:c3ac6015b50c93f12cced716ad92f072a8a1245924b034b4a9bc9261eb31fbde", - "zh:d70f83f015182021a4593cd4a9a2687f83c0aa6fd54a982bd374ef0fd25113f2", - "zh:ed9eb0992e901c7b832ae50dc267d12febf53f89ee6b1a02320b7a145830c6ce", + "h1:itPAvjmGmV6R8KpBsDGnONKfi9AXPt0LCFThnDF/3+g=", + "zh:40b90c1e6cc95cccfc935d4af4478590410bf2ce24d2cd7f6b583e7791b9b5b3", + "zh:56f25840e253ea527ab196ffb5cc3f896ef129c6d0dbe795eb9dd305d84354cd", + "zh:5bb291ae271b3363052ea4b01073c91ce9a5fcf58bf8c1d01a919099e1b4e946", + "zh:671daceb89669b51586a1a32861ea77d30233d6c2adb1ec2d3ada48d3f485634", + "zh:965834aeda62b59b8140b8db9d378658d5e3bb56a828a5158d2625237ae925b5", + "zh:9a83c890f65bcd3777eb42a9a7de622c6f9ceb3fe3ceedfe532c1cb4de24ddb2", + "zh:a2a995d03f8a669a753e99e12e6826c0b7081ac573a66c9c90db2d70f00b8ed4", + "zh:a4473ea1f59b6a5837f5e27ac4383a566dc8bdf60e0e63b5fddc5a2523fdaeb5", + "zh:a568e0b3c475629de3d00f60693270d7ae2d8cda7a9b8b28613baec9fb09b37c", + "zh:c53002313ea07dba92503eec6c0876b13b5217a703313c3ac74b31fefa52afbb", + "zh:dbd8c9e2099ca321ebab124b9c9a3421469714ac2d329d0047d0981c8c64ab21", "zh:f569b65999264a9416862bca5cd2a6177d94ccb0424f3a4ef424428912b9cb3c", ] } diff --git a/iac/cal-itp-data-infra-staging/routes/us/provider.tf b/iac/cal-itp-data-infra-staging/routes/us/provider.tf index 2728cc70af..36ab48b5a2 100755 --- a/iac/cal-itp-data-infra-staging/routes/us/provider.tf +++ b/iac/cal-itp-data-infra-staging/routes/us/provider.tf @@ -5,7 +5,7 @@ provider "google" { terraform { required_providers { google = { - version = "~> 6.41.0" + version = "~> 7.10.0" } } diff --git a/workflows/gtfs-rt-archiver.yaml b/workflows/gtfs-rt-archiver.yaml new file mode 100644 index 0000000000..19f30b27c5 --- /dev/null +++ b/workflows/gtfs-rt-archiver.yaml @@ -0,0 +1,68 @@ +main: + params: [args] + steps: + - init: + assign: + - projectId: $${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")} + - location: $${sys.get_env("GOOGLE_CLOUD_LOCATION")} + - topic: $${sys.get_env("GTFS_RT_ARCHIVER__TOPIC")} + - dataset: staging + - table: int_transit_database__gtfs_datasets_dim + - limit: $${int(default(map.get(args, "limit"), "-1"))} + - startTime: $${sys.now()} + - startAt: $${time.format(startTime)} + - runQuery: + call: googleapis.bigquery.v2.jobs.query + args: + projectId: $${projectId} + body: + useLegacySql: false + useQueryCache: true + timeoutMs: 30000 + query: $${ + "SELECT type, pipeline_url, authorization_header_parameter_name, header_secret_key_name, authorization_url_parameter_name, url_secret_key_name, base64_url " + + "FROM `" + projectId + "." + dataset + "." + table + "` " + + "WHERE _is_current = true " + + "AND type IN ('service_alerts', 'trip_updates', 'vehicle_positions') " + + if(limit < 0, "", "LIMIT " + limit) + } + result: queryResult + - publishMessages: + parallel: + for: + value: delay + in: [0, 20, 40] + steps: + - sleep: + call: sys.sleep + args: + seconds: $${delay} + - prepareArgs: + assign: + - messages: [] + - prepareMessages: + for: + value: row + in: $${queryResult.rows} + steps: + - prepareChildArgs: + assign: + - data: {} + - data.startAt: $${startAt} + - data.fetchSecond: $${delay} + - data.type: $${row.f[0].v} + - data.pipelineUrl: $${row.f[1].v} + - data.authorizationHeaderParameterName: $${row.f[2].v} + - data.headerSecretKeyName: $${row.f[3].v} + - data.authorizationUrlParameterName: $${row.f[4].v} + - data.urlSecretKeyName: $${row.f[5].v} + - data.base64Url: $${row.f[6].v} + - message: {} + - message.data: $${base64.encode(json.encode(data))} + - messages: $${list.concat(messages, message)} + - publish: + call: googleapis.pubsub.v1.projects.topics.publish + args: + topic: $${topic} + body: + messages: $${messages} diff --git a/workflows/gtfs-rt-feed-archiver.yaml b/workflows/gtfs-rt-feed-archiver.yaml new file mode 100644 index 0000000000..8399650a8d --- /dev/null +++ b/workflows/gtfs-rt-feed-archiver.yaml @@ -0,0 +1,71 @@ +main: + params: [event] + steps: + - init: + assign: + - projectId: $${sys.get_env("GOOGLE_CLOUD_PROJECT_ID")} + - bucket: $${sys.get_env("CALITP_BUCKET__GTFS_RT_RAW")} + - arguments: $${json.decode(base64.decode(event.data.message.data))} + - fetchDate: $${text.split(arguments.startAt, "T")[0]} + - fetchTime: $${text.split(arguments.startAt, "T")[1]} + - fetchHour: $${text.split(fetchTime, ":")[0]} + - fetchMinute: $${text.split(fetchTime, ":")[1]} + - fetchSecond: $${if(arguments.fetchSecond == 0, "00", arguments.fetchSecond)} + - headers: {} + - query: {} + - userAgentHeaders: + User-Agent: 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36' + priority: 'u=0, i' + sec-ch-ua: '"Chromium";v="130", "Google Chrome";v="130", "Not?A_Brand";v="99"' + sec-ch-ua-mobile: '?0' + sec-ch-ua-platform: '"macOS"' + - applySecrets: + switch: + - condition: $${arguments.headerSecretKeyName != null} + steps: + - headerSecret: + call: googleapis.secretmanager.v1.projects.secrets.versions.accessString + args: + project_id: $${projectId} + secret_id: $${arguments.headerSecretKeyName} + result: headerSecret + - assignHeaders: + assign: + - headers: + $${arguments.authorizationHeaderParameterName}: $${headerSecret} + - condition: $${arguments.urlSecretKeyName != null} + steps: + - querySecret: + call: googleapis.secretmanager.v1.projects.secrets.versions.accessString + args: + project_id: $${projectId} + secret_id: $${arguments.urlSecretKeyName} + result: querySecret + - assignQuery: + assign: + - query: + $${arguments.authorizationUrlParameterName}: $${querySecret} + - fetchUrl: + call: http.get + args: + url: $${arguments.pipelineUrl} + timeout: 20 + headers: $${map.merge(userAgentHeaders, headers)} + query: $${query} + result: result + - writeResult: + call: http.post + args: + url: $${"https://storage.googleapis.com/upload/storage/v1/b/" + bucket + "/o"} + auth: + type: OAuth2 + query: + name: $${ + arguments.type + + "/dt=" + fetchDate + + "/hour=" + fetchDate + "T" + fetchHour + ":00:00+00:00" + + "/ts=" + fetchDate + "T" + fetchHour + ":" + fetchMinute + ":" + fetchSecond + "+00:00" + + "/base64_url=" + arguments.base64Url + + "/feed" + } + body: $${result.body}