terraform { backend "pg" { schema_name = "bootstrap" conn_str = "postgres://terraform@10.42.0.1/terraform_state" } required_providers { libvirt = { source = "dmacvicar/libvirt" } } } provider "libvirt" { uri = "qemu+ssh://root@atlas.hyp/system" } provider "libvirt" { alias = "jefke" uri = "qemu+ssh://root@jefke.hyp/system" } provider "libvirt" { alias = "lewis" uri = "qemu+ssh://root@lewis.hyp/system" } resource "libvirt_pool" "iso" { name = "iso" type = "dir" path = "/kvm/iso" } resource "libvirt_pool" "disk" { name = "disk" type = "dir" path = "/kvm/disk" } resource "libvirt_pool" "init" { name = "init" type = "dir" path = "/kvm/init" } resource "libvirt_volume" "ubuntu_jammy" { name = "ubuntu-jammy.img" pool = "iso" source = "https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img" } resource "libvirt_volume" "debian_bullseye" { name = "debian-bullseye.iso" pool = "iso" source = "https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-generic-amd64.qcow2" } resource "libvirt_volume" "debian_bookworm" { name = "debian-bookworm.qcow2" pool = "iso" source = "https://cloud.debian.org/images/cloud/bookworm/daily/latest/debian-12-generic-amd64-daily.qcow2" } resource "libvirt_network" "dmzbr" { name = "dmzbr" mode = "bridge" bridge = "dmzbr" dhcp { enabled = false } dns { enabled = false } autostart = true } resource "libvirt_pool" "iso_jefke" { name = "iso" type = "dir" path = "/kvm/iso" provider = libvirt.jefke } resource "libvirt_pool" "disk_jefke" { name = "disk" type = "dir" path = "/kvm/disk" provider = libvirt.jefke } resource "libvirt_pool" "init_jefke" { name = "init" type = "dir" path = "/kvm/init" provider = libvirt.jefke } resource "libvirt_volume" "ubuntu_jammy_jefke" { name = "ubuntu-jammy.img" pool = "iso" source = "https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img" provider = libvirt.jefke } resource "libvirt_volume" "debian_bullseye_jefke" { name = "debian-bullseye.iso" pool = "iso" source = "https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-generic-amd64.qcow2" provider = libvirt.jefke } resource "libvirt_volume" "debian_bookworm_jefke" { name = "debian-bookworm.qcow2" pool = "iso" source = "https://cloud.debian.org/images/cloud/bookworm/daily/latest/debian-12-generic-amd64-daily.qcow2" provider = libvirt.jefke } resource "libvirt_network" "dmzbr_jefke" { name = "dmzbr" mode = "bridge" bridge = "dmzbr" dhcp { enabled = false } dns { enabled = false } autostart = true provider = libvirt.jefke } resource "libvirt_pool" "iso_lewis" { name = "iso" type = "dir" path = "/kvm/iso" provider = libvirt.lewis } resource "libvirt_pool" "disk_lewis" { name = "disk" type = "dir" path = "/kvm/disk" provider = libvirt.lewis } resource "libvirt_pool" "init_lewis" { name = "init" type = "dir" path = "/kvm/init" provider = libvirt.lewis } resource "libvirt_volume" "ubuntu_jammy_lewis" { name = "ubuntu-jammy.img" pool = "iso" source = "https://cloud-images.ubuntu.com/jammy/current/jammy-server-cloudimg-amd64.img" provider = libvirt.lewis } resource "libvirt_volume" "debian_bullseye_lewis" { name = "debian-bullseye.iso" pool = "iso" source = "https://cloud.debian.org/images/cloud/bullseye/latest/debian-11-generic-amd64.qcow2" provider = libvirt.lewis } resource "libvirt_volume" "debian_bookworm_lewis" { name = "debian-bookworm.qcow2" pool = "iso" source = "https://cloud.debian.org/images/cloud/bookworm/daily/latest/debian-12-generic-amd64-daily.qcow2" provider = libvirt.lewis } resource "libvirt_network" "dmzbr_lewis" { name = "dmzbr" mode = "bridge" bridge = "dmzbr" dhcp { enabled = false } dns { enabled = false } autostart = true provider = libvirt.lewis }