- google_compute_resource_policy.daily_backup: daily snapshot at 02:00, 30-day retention, labels (app=agnes, customer=<name>) - google_compute_disk_resource_policy_attachment.data_backup: attach policy to each data disk (prod + dev) - google_monitoring_uptime_check_config.health: per-VM /api/health uptime check every 60s, 10s timeout - google_monitoring_alert_policy.health_failure: alert when uptime check fails for > 5 min New opt-out: enable_monitoring = false (default true) New opt-in: notification_channel_ids = [...] to wire alerts to email/Slack Module API unchanged; existing customers pick up backups + monitoring on next module upgrade. TF provider requirement unchanged.
29 lines
986 B
HCL
29 lines
986 B
HCL
output "instance_ips" {
|
|
description = "Mapa { name => external IP }"
|
|
value = { for k, v in google_compute_address.ip : k => v.address }
|
|
}
|
|
|
|
output "prod_ip" {
|
|
description = "External IP prod instance"
|
|
value = google_compute_address.ip[var.prod_instance.name].address
|
|
}
|
|
|
|
output "vm_service_account" {
|
|
description = "Email VM SA (pro další IAM bindings, např. BigQuery)"
|
|
value = google_service_account.vm.email
|
|
}
|
|
|
|
output "jwt_secret_name" {
|
|
description = "Plný název JWT secretu v Secret Manageru"
|
|
value = google_secret_manager_secret.jwt.name
|
|
}
|
|
|
|
output "backup_policy_id" {
|
|
description = "ID daily backup resource policy attached to data disks"
|
|
value = google_compute_resource_policy.daily_backup.id
|
|
}
|
|
|
|
output "uptime_check_ids" {
|
|
description = "Map of instance name → uptime check ID (empty when enable_monitoring = false)"
|
|
value = { for k, v in google_monitoring_uptime_check_config.health : k => v.uptime_check_id }
|
|
}
|