Terraform provider overhaul#4941
Merged
Merged
Conversation
This no longer seems to be necessary, at least in sandbox. Due to the way we are handling routing now, this is not used.
This seems to help things
Contributor
|
Terraform plan for meta No changes. Your infrastructure matches the configuration.✅ Plan applied in Deploy to Development and Management Environment #994 |
Contributor
|
Terraform plan for dev Plan: 3 to add, 10 to change, 3 to destroy.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
<= read (data resources)
Terraform will perform the following actions:
# module.dev.cloudfoundry_network_policy.app-network-policy will be updated in-place
!~ resource "cloudfoundry_network_policy" "app-network-policy" {
id = "99884884-59ae-8864-786d-a5e33d1b1455"
- policy {
- destination_app = "caa8e542-9d7e-438d-a17c-3af19b05eaa6" -> null
- port = "61443" -> null
- protocol = "tcp" -> null
- source_app = "d7fcdc7a-fd97-4e31-89ae-b823883b5992" -> null
}
+ policy {
+ destination_app = (known after apply)
+ port = "61443"
+ protocol = "tcp"
+ source_app = "d7fcdc7a-fd97-4e31-89ae-b823883b5992"
}
# (2 unchanged blocks hidden)
}
# module.dev.cloudfoundry_network_policy.clamav-network-policy will be updated in-place
!~ resource "cloudfoundry_network_policy" "clamav-network-policy" {
id = "30fc72e9-9a5e-c40d-140c-98bc1b576989"
- policy {
- destination_app = "caa8e542-9d7e-438d-a17c-3af19b05eaa6" -> null
- port = "61443" -> null
- protocol = "tcp" -> null
- source_app = "6eab89ac-271f-4193-893f-cfa1f590f3d9" -> null
}
- policy {
- destination_app = "caa8e542-9d7e-438d-a17c-3af19b05eaa6" -> null
- port = "61443" -> null
- protocol = "tcp" -> null
- source_app = "ea09b23c-eebc-4383-9f4d-29152236ad87" -> null
}
+ policy {
+ destination_app = (known after apply)
+ port = "61443"
+ protocol = "tcp"
+ source_app = "6eab89ac-271f-4193-893f-cfa1f590f3d9"
}
+ policy {
+ destination_app = (known after apply)
+ port = "61443"
+ protocol = "tcp"
+ source_app = "ea09b23c-eebc-4383-9f4d-29152236ad87"
}
}
# module.dev.cloudfoundry_network_policy.logshipper-network-policy will be updated in-place
!~ resource "cloudfoundry_network_policy" "logshipper-network-policy" {
id = "f188b467-82e6-e5d6-bae1-138086a288c5"
- policy {
- destination_app = "caa8e542-9d7e-438d-a17c-3af19b05eaa6" -> null
- port = "61443" -> null
- protocol = "tcp" -> null
- source_app = "92483ac7-d368-43b0-b429-0170e3e2b2c2" -> null
}
+ policy {
+ destination_app = (known after apply)
+ port = "61443"
+ protocol = "tcp"
+ source_app = (known after apply)
}
}
# module.dev.cloudfoundry_network_policy.scanner-network-policy will be updated in-place
!~ resource "cloudfoundry_network_policy" "scanner-network-policy" {
id = "1c06d5ba-733a-e0a1-8eb6-d577a1347e2b"
- policy {
- destination_app = "6eab89ac-271f-4193-893f-cfa1f590f3d9" -> null
- port = "61443" -> null
- protocol = "tcp" -> null
- source_app = "a0669f56-c5a5-4c35-85bf-5b6201478ad5" -> null
}
- policy {
- destination_app = "caa8e542-9d7e-438d-a17c-3af19b05eaa6" -> null
- port = "61443" -> null
- protocol = "tcp" -> null
- source_app = "a0669f56-c5a5-4c35-85bf-5b6201478ad5" -> null
}
+ policy {
+ destination_app = "6eab89ac-271f-4193-893f-cfa1f590f3d9"
+ port = "61443"
+ protocol = "tcp"
+ source_app = (known after apply)
}
+ policy {
+ destination_app = (known after apply)
+ port = "61443"
+ protocol = "tcp"
+ source_app = (known after apply)
}
}
# module.dev.module.cg-logshipper.cloudfoundry_app.logshipper_app will be updated in-place
!~ resource "cloudfoundry_app" "logshipper_app" {
!~ created_at = "2025-04-21T18:47:16Z" -> (known after apply)
!~ id = "************************************" -> (known after apply)
!~ log_rate_limit_per_second = "-1" -> (known after apply)
name = "logshipper"
!~ readiness_health_check_type = "process" -> (known after apply)
!~ routes = [
- {
- protocol = "http1" -> null
- route = "fac-dev-logshipper.app.cloud.gov" -> null
},
] -> (known after apply)
!~ source_code_hash = "82b306b126425094badf7873be022c6168cfafca9ea6d7a14c8ce0bea56b0849" -> "e4e9e942a857c76a4792c6b18bcbee83cbcabc2c89084fc3a0a1cb94fb4d15e2"
!~ stack = "cflinuxfs4" -> (known after apply)
!~ updated_at = "2025-04-21T19:08:35Z" -> (known after apply)
# (12 unchanged attributes hidden)
}
# module.dev.module.cg-logshipper.cloudfoundry_route.logshipper_route will be updated in-place
!~ resource "cloudfoundry_route" "logshipper_route" {
!~ destinations = [
- {
- app_id = "92483ac7-d368-43b0-b429-0170e3e2b2c2" -> null
- app_process_type = "web" -> null
- id = "cb430c0b-be04-428f-b94f-0af6d42d100b" -> null
- port = 8080 -> null
- protocol = "http1" -> null
},
+ {
+ app_id = (known after apply)
+ app_process_type = (known after apply)
+ id = (known after apply)
+ port = (known after apply)
+ protocol = (known after apply)
},
]
id = "3aec8f3f-c16b-4528-bc10-021921a7c5c6"
!~ updated_at = "2025-04-21T18:49:17Z" -> (known after apply)
# (6 unchanged attributes hidden)
}
# module.dev.module.cors.null_resource.cors_header must be replaced
-/+ resource "null_resource" "cors_header" {
!~ id = "*******************" -> (known after apply)
!~ triggers = { # forces replacement
!~ "always_run" = "2025-04-21T19:07:14Z" -> (known after apply)
}
}
# module.dev.module.fac-file-scanner.data.cloudfoundry_domain.internal will be read during apply
# (depends on a resource or a module with changes pending)
<= data "cloudfoundry_domain" "internal" {
+ annotations = (known after apply)
+ created_at = (known after apply)
+ id = (known after apply)
+ internal = (known after apply)
+ labels = (known after apply)
+ name = "apps.internal"
+ org = (known after apply)
+ router_group = (known after apply)
+ shared_orgs = (known after apply)
+ supported_protocols = (known after apply)
+ updated_at = (known after apply)
}
# module.dev.module.fac-file-scanner.data.external.scannerzip will be read during apply
# (depends on a resource or a module with changes pending)
<= data "external" "scannerzip" {
+ id = (known after apply)
+ program = [
+ "/bin/sh",
+ "prepare-scanner.sh",
]
+ query = {
+ "gitref" = "refs/heads/main"
}
+ result = (known after apply)
+ working_dir = "../shared/modules/scanner"
}
# module.dev.module.fac-file-scanner.cloudfoundry_app.scanner_app will be updated in-place
!~ resource "cloudfoundry_app" "scanner_app" {
!~ created_at = "2025-04-21T18:53:54Z" -> (known after apply)
!~ id = "************************************" -> (known after apply)
!~ log_rate_limit_per_second = "-1" -> (known after apply)
name = "fac-file-scanner"
!~ path = "../shared/modules/scanner/scanner.zip" -> (known after apply)
!~ readiness_health_check_type = "process" -> (known after apply)
!~ routes = [
- {
- protocol = "http1" -> null
- route = "fac-file-scanner-dev.apps.internal" -> null
},
] -> (known after apply)
!~ source_code_hash = "7a3b52c9a6b09e17b1faa6baa3096c3ab60df1c232489770fbe492d860be7e2f" -> (known after apply)
!~ stack = "cflinuxfs4" -> (known after apply)
!~ updated_at = "2025-04-21T19:09:41Z" -> (known after apply)
# (11 unchanged attributes hidden)
}
# module.dev.module.fac-file-scanner.cloudfoundry_route.scanner_route must be replaced
-/+ resource "cloudfoundry_route" "scanner_route" {
!~ created_at = "2025-04-21T19:09:42Z" -> (known after apply)
!~ destinations = [
- {
- app_id = "a0669f56-c5a5-4c35-85bf-5b6201478ad5" -> null
- app_process_type = "web" -> null
- id = "ad6bcf9e-a3dc-4674-8eb5-9dd3a8ed96d5" -> null
- port = 8080 -> null
- protocol = "http1" -> null
},
+ {
+ app_id = (known after apply)
+ app_process_type = (known after apply)
+ id = (known after apply)
+ port = (known after apply)
+ protocol = (known after apply)
},
]
!~ domain = "26df58ef-0c0d-4997-b68b-8defb7b3998b" -> (known after apply) # forces replacement
!~ id = "************************************" -> (known after apply)
!~ protocol = "http" -> (known after apply)
!~ updated_at = "2025-04-21T19:09:42Z" -> (known after apply)
!~ url = "fac-file-scanner-dev.apps.internal" -> (known after apply)
# (2 unchanged attributes hidden)
}
# module.dev.module.https-proxy.cloudfoundry_app.egress_app will be updated in-place
!~ resource "cloudfoundry_app" "egress_app" {
!~ created_at = "2025-04-21T18:44:40Z" -> (known after apply)
!~ disk_quota = "2048M" -> (known after apply)
!~ health_check_type = "port" -> (known after apply)
!~ id = "************************************" -> (known after apply)
!~ log_rate_limit_per_second = "-1" -> (known after apply)
name = "https-proxy"
!~ path = ".terraform/modules/dev.https-proxy/egress_proxy/proxy.zip" -> "/tmp/terraform-data-dir/modules/dev.https-proxy/egress_proxy/proxy.zip"
!~ readiness_health_check_type = "process" -> (known after apply)
!~ routes = [
- {
- protocol = "http1" -> null
- route = "gsa-tts-oros-fac-dev-egress-https-proxy.apps.internal" -> null
},
] -> (known after apply)
!~ source_code_hash = "be167a50f5b2c762443595195786bd2fc4d024f43eb58c58d144b7d5cbf544f5" -> "175a3a43404fb2a33deaf8fba9e461a196ec830fb1991f4dffac53a6504ffcc8"
!~ stack = "cflinuxfs4" -> (known after apply)
!~ updated_at = "2025-04-21T19:07:46Z" -> (known after apply)
# (8 unchanged attributes hidden)
}
# module.dev.module.https-proxy.cloudfoundry_route.egress_route will be updated in-place
!~ resource "cloudfoundry_route" "egress_route" {
!~ destinations = [
- {
- app_id = "caa8e542-9d7e-438d-a17c-3af19b05eaa6" -> null
- app_process_type = "web" -> null
- id = "2bf104be-d294-4864-a5e1-49d08e420a04" -> null
- port = 8080 -> null
- protocol = "http1" -> null
},
+ {
+ app_id = (known after apply)
+ app_process_type = (known after apply)
+ id = (known after apply)
+ port = (known after apply)
+ protocol = (known after apply)
},
]
id = "13dc80b5-4d3b-4181-b7c1-b6dc8d5a0e65"
!~ updated_at = "2025-04-21T18:44:56Z" -> (known after apply)
# (6 unchanged attributes hidden)
}
# module.dev.module.fac-file-scanner.module.quarantine.data.cloudfoundry_service_plans.s3 will be read during apply
# (depends on a resource or a module with changes pending)
<= data "cloudfoundry_service_plans" "s3" {
+ name = "basic"
+ service_offering_name = "s3"
+ service_plans = (known after apply)
}
# module.dev.module.fac-file-scanner.module.quarantine.cloudfoundry_service_instance.bucket will be updated in-place
!~ resource "cloudfoundry_service_instance" "bucket" {
+ dashboard_url = (known after apply)
id = "c435cb9c-32a7-4a31-828b-48c8c6f3bf37"
!~ last_operation = {
!~ created_at = "2025-03-14T14:22:42Z" -> (known after apply)
+ description = (known after apply)
!~ state = "succeeded" -> (known after apply)
!~ type = "update" -> (known after apply)
!~ updated_at = "2025-03-14T14:22:42Z" -> (known after apply)
} -> (known after apply)
!~ maintenance_info = {
+ description = (known after apply)
+ version = (known after apply)
} -> (known after apply)
name = "fac-file-scanner-quarantine"
!~ service_plan = "021bb2a3-7e11-4fc2-b06b-d9f5938cd806" -> (known after apply)
tags = [
"s3",
"terraform-cloudgov-managed",
]
!~ updated_at = "2025-03-14T14:22:42Z" -> (known after apply)
!~ upgrade_available = false -> (known after apply)
# (3 unchanged attributes hidden)
}
# module.dev.module.file_scanner_clamav.module.route.data.cloudfoundry_domain.domain will be read during apply
# (depends on a resource or a module with changes pending)
<= data "cloudfoundry_domain" "domain" {
+ annotations = (known after apply)
+ created_at = (known after apply)
+ id = (known after apply)
+ internal = (known after apply)
+ labels = (known after apply)
+ name = "apps.internal"
+ org = (known after apply)
+ router_group = (known after apply)
+ shared_orgs = (known after apply)
+ supported_protocols = (known after apply)
+ updated_at = (known after apply)
}
# module.dev.module.file_scanner_clamav.module.route.data.cloudfoundry_org.org will be read during apply
# (depends on a resource or a module with changes pending)
<= data "cloudfoundry_org" "org" {
+ annotations = (known after apply)
+ created_at = (known after apply)
+ id = (known after apply)
+ labels = (known after apply)
+ name = "gsa-tts-oros-fac"
+ quota = (known after apply)
+ suspended = (known after apply)
+ updated_at = (known after apply)
}
# module.dev.module.file_scanner_clamav.module.route.data.cloudfoundry_space.space will be read during apply
# (config refers to values not yet known)
<= data "cloudfoundry_space" "space" {
+ allow_ssh = (known after apply)
+ annotations = (known after apply)
+ created_at = (known after apply)
+ id = (known after apply)
+ isolation_segment = (known after apply)
+ labels = (known after apply)
+ name = "dev"
+ org = (known after apply)
+ quota = (known after apply)
+ updated_at = (known after apply)
}
# module.dev.module.file_scanner_clamav.module.route.cloudfoundry_route.app_route must be replaced
-/+ resource "cloudfoundry_route" "app_route" {
!~ created_at = "2025-04-21T19:09:43Z" -> (known after apply)
!~ destinations = [
- {
- app_id = "6eab89ac-271f-4193-893f-cfa1f590f3d9" -> null
- app_process_type = "web" -> null
- id = "46579faf-6abe-46e9-bc4f-1dd565fcd8d8" -> null
- port = 8080 -> null
- protocol = "http1" -> null
},
+ {
+ app_id = "************************************"
+ app_process_type = (known after apply)
+ id = (known after apply)
+ port = (known after apply)
+ protocol = (known after apply)
},
]
!~ domain = "26df58ef-0c0d-4997-b68b-8defb7b3998b" -> (known after apply) # forces replacement
!~ id = "************************************" -> (known after apply)
!~ protocol = "http" -> (known after apply)
!~ space = "06525ba3-19c2-451b-96e9-ea4a9134e8b9" -> (known after apply) # forces replacement
!~ updated_at = "2025-04-21T19:09:43Z" -> (known after apply)
!~ url = "fac-av-dev-fs.apps.internal" -> (known after apply)
# (1 unchanged attribute hidden)
}
Plan: 3 to add, 10 to change, 3 to destroy.✅ Plan applied in Deploy to Development and Management Environment #994 |
Contributor
Minimum allowed line rate is |
jadudm
approved these changes
Apr 21, 2025
Contributor
jadudm
left a comment
There was a problem hiding this comment.
Reviewed 20250417 with BM, MJ, AS. Merge takes place after, due to TF state updates that had to happen before/coincidental.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This was done on 20250421, all environments have been upgraded, and this pr will be deployed to sync the code bases on a pairing session with Matt.