terraform {
    required_providers {
        google = {
            source  = "hashicorp/google"
            version = "~> 6.12.0"
        }
    }
}

provider "google" {
    project = var.project_id
    region  = var.region
}

module "network" {
    source            = "../../modules/network"
    project_name      = var.project_name
    region           = var.region
    frontend_cidr    = var.frontend_cidr
    backend_cidr     = var.backend_cidr
    database_cidr    = var.database_cidr
    ssh_source_ranges = var.ssh_source_ranges
}

module "compute" {
    source = "../../modules/compute"
    instance_type      = var.instance_type
    zone               = var.zone
    frontend_subnet_id = module.network.subnet_ids["frontend"]
    backend_subnet_id = module.network.subnet_ids["backend"]
    database_subnet_id = module.network.subnet_ids["database"]
}