我有以下可以使用的terraform代码,但是每次我合并以掌握并运行github动作来调用terraform apply
时,部署过程都需要30分钟以上。据我所知,日志中充满了 google_app_engine_flexible_app_version.myapp: Still creating... [15m0s elapsed]
和
google_app_engine_service_split_traffic.myapp: Still modifying... [id=apps/myproject/services/myapp, 13m40s elapsed]
不是经常且快速发布吗?您为什么能花这么长时间有什么见识?
resource "google_app_engine_flexible_app_version" "myapp" {
project = var.GCP_PROJECT
service = "myapp"
runtime = "custom"
version_id = "v${formatdate("YYYYMMDD-hhmmss",timestamp())}"
noop_on_destroy = false
lifecycle {
create_before_destroy = true
}
resources {
cpu = 1
memory_gb = 1
disk_gb = 10
}
deployment {
container {
image = "eu.gcr.io/${var.GCP_PROJECT}/myapp:${var.GIT_SHA}"
}
}
env_variables = {
ASPNETCORE_ENVIRONMENT = var.ENVIRONMENT
}
beta_settings = {
cloud_sql_instances = "${google_sql_database_instance.gps.connection_name}=tcp:5432"
}
manual_scaling {
instances = 1
}
liveness_check {
path = "/liveness_check"
}
readiness_check {
path = "/readiness_check"
app_start_timeout = "1800s"
}
}
resource "google_app_engine_service_split_traffic" "myapp" {
service = google_app_engine_flexible_app_version.myapp.service
migrate_traffic = false
split {
allocations = {
(google_app_engine_flexible_app_version.myapp.version_id) = 1.0
}
}
}
resource "google_dns_record_set" "myapp" {
name = "${local.myapp_domain_name}."
managed_zone = var.DNS_ZONE_NAME
type = "CNAME"
ttl = 300
rrdatas = ["ghs.googlehosted.com."]
}
resource "google_app_engine_domain_mapping" "myapp" {
domain_name = local.myapp_domain_name
override_strategy = "OVERRIDE"
ssl_settings {
ssl_management_type = "AUTOMATIC"
}
}