From 624d7ec2f67c42d0f621a2d6c1a40954cde36dac Mon Sep 17 00:00:00 2001 From: robcxyz Date: Fri, 5 Jan 2024 14:39:31 -0800 Subject: [PATCH] expose firmware path which can be different based on platform - ie ubuntu --- README.md | 1 + modules/terraform-libvirt-instance/main.tf | 2 +- modules/terraform-libvirt-instance/variables.tf | 7 +++++++ 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 4f47273..d490b25 100644 --- a/README.md +++ b/README.md @@ -69,6 +69,7 @@ module "instance_provisioning" { instance_libvirt_network = "default" instance_libvirt_pool = "default" instance_uefi_enabled = true + instance_firmware = "/usr/share/edk2/ovmf/OVMF_CODE.fd" instance_network_interfaces = [ { interface_network_name = "default" diff --git a/modules/terraform-libvirt-instance/main.tf b/modules/terraform-libvirt-instance/main.tf index ee303a1..d34fe59 100644 --- a/modules/terraform-libvirt-instance/main.tf +++ b/modules/terraform-libvirt-instance/main.tf @@ -51,7 +51,7 @@ resource "libvirt_domain" "service-vm" { memory = var.instance_memory*1024 vcpu = var.instance_cpu machine = var.instance_uefi_enabled ? "q35" : "" - firmware = var.instance_uefi_enabled ? "/usr/share/edk2/ovmf/OVMF_CODE.fd" : "" + firmware = var.instance_uefi_enabled ? var.instance_firmware : "" boot_device { dev = [ "hd", "cdrom", "network" ] diff --git a/modules/terraform-libvirt-instance/variables.tf b/modules/terraform-libvirt-instance/variables.tf index 4d5b80b..fc1a2d7 100644 --- a/modules/terraform-libvirt-instance/variables.tf +++ b/modules/terraform-libvirt-instance/variables.tf @@ -102,6 +102,13 @@ variable "instance_uefi_enabled" { description = "Set this to true if OS should be installed via ISO" } + +variable "instance_firmware" { + type = string + default = "/usr/share/edk2/ovmf/OVMF_CODE.fd" + description = "Path to the ovmf firmware on the host machine. Ubuntu=/usr/share/OVMF/OVMF_CODE.fd" +} + variable "instance_network_interfaces" { type = list(object({ interface_network = string