Files
Software/artemis-backup-20260614-1920/terraform-pve/terraform/modules/lxc/main.tf

80 lines
1.4 KiB
HCL

terraform {
required_providers {
proxmox = {
source = "bpg/proxmox"
version = "0.70.0"
}
}
}
resource "proxmox_virtual_environment_container" "this" {
node_name = var.node
vm_id = var.vmid
unprivileged = var.unprivileged
description = "Terraform batch LXC — ${var.hostname}"
cpu {
cores = var.cores
}
memory {
dedicated = var.memory
}
disk {
datastore_id = var.storage
size = var.rootfs_size
}
network_interface {
name = "eth0"
bridge = "vmbr0"
}
dynamic "features" {
for_each = var.unprivileged ? [1] : []
content {
nesting = true
}
}
dynamic "device_passthrough" {
for_each = var.devices
content {
path = device_passthrough.value.path
mode = device_passthrough.value.mode
uid = device_passthrough.value.uid
gid = device_passthrough.value.gid
deny_write = device_passthrough.value.deny_write
}
}
initialization {
hostname = var.hostname
dns {
servers = var.dns_servers
}
ip_config {
ipv4 {
address = var.ipv4
gateway = var.gateway
}
}
user_account {
keys = [file(var.ssh_key_path)]
password = var.password
}
}
operating_system {
template_file_id = var.template_file_id
type = "debian"
}
tags = var.tags
}