resource "google_compute_instance" "frontend" { name = "${var.project_name}-frontend" machine_type = var.instance_type zone = var.zone tags = ["frontend", "ssh"] boot_disk { initialize_params { image = "debian-cloud/debian-11" size = 10 } } network_interface { subnetwork = var.frontend_subnet_id access_config {} # IP publique } metadata = { enable-oslogin = "TRUE" } } # --- Backend --- resource "google_compute_instance" "backend" { name = "${var.project_name}-backend" machine_type = var.instance_type zone = var.zone tags = ["backend", "ssh"] boot_disk { initialize_params { image = "debian-cloud/debian-11" size = 10 } } network_interface { subnetwork = var.backend_subnet_id } metadata = { enable-oslogin = "TRUE" } } # --- Database --- resource "google_compute_instance" "database" { name = "${var.project_name}-database" machine_type = var.instance_type zone = var.zone tags = ["database", "ssh"] boot_disk { initialize_params { image = "debian-cloud/debian-11" size = 20 } } network_interface { subnetwork = var.database_subnet_id } metadata = { enable-oslogin = "TRUE" } }