Files
2025-10-02 09:59:10 +00:00

54 lines
1.3 KiB
Terraform

terraform {
required_providers {
azurerm = {
source = "hashicorp/azurerm"
version = "4.46.0"
}
}
}
provider "azurerm" {
features{}
subscription_id = "4b2d6154-f4c5-4854-be82-12dfc82d4d23"
}
module "network" {
source = "../../modules/network"
vnet_name = "dev-vnet"
resource_group_name = "terraform"
location = "UK South"
address_space = ["10.0.0.0/16"]
subnets = { public = "10.0.1.0/24", private = "10.0.2.0/24" }
environment = "dev"
project = "TerraformBootcamp"
}
data "azurerm_ssh_public_key" "kp" {
name = "terraform-kp"
resource_group_name = "terraform"
}
data "azurerm_ssh_public_key" "sd" {
name = "sbcomsam-d-01"
resource_group_name = "terraform"
}
data "http" "my_ip" {
url = "https://checkip.amazonaws.com/"
}
locals {
my_ip = chomp(data.http.my_ip.response_body)
}
module "compute" {
source = "../../modules/compute"
resource_group_name = "terraform"
location = "UK South"
subnet_id = module.network.subnet_ids["public"]
vm_size = "Standard_B1s"
admin_username = "azureuser"
ssh_public_key = data.azurerm_ssh_public_key.sd.public_key
ex_ip = local.my_ip
}