Give the technitium LXC a second NIC on the atlashorizon VLAN

Technitium now serves and resolves on 192.168.7.2 as well as its
192.168.0.2 address. The interface was added by hand out of band; this
brings it under management so the next apply does not remove it.

Adopts the module's new nic2 object in place of the VM-only ip2 string.
The submodule bump is a single ref, so it also carries in the Flatcar
module support that the next commit starts using.

Co-Authored-By: Claude Opus 5 <[email protected]>
This commit is contained in:
nickandClaude Opus 5 committed 2026-09-22 10:01:58 +00:00
1 parent 14dd42bb1b
commit 5ee0114281
3 files changed
+25 -5

No files matched your search

Submodule opentofu updated: aabd3838f7...c1e428b200.
+8
View File
@@ -145,6 +145,14 @@ nodes = {
bridge = "vmbr0"
ip = "192.168.0.2/24"
gw = "192.168.0.1"
# Manually added out-of-band so Technitium can also serve/resolve on
# the atlashorizon VLAN; brought under management here to match.
nic2 = {
nic_name = "eth1"
bridge = "vmbr0"
vlan = 7
ip = "192.168.7.2/24"
}
}
}
machines = {
+16 -4
View File
@@ -59,9 +59,9 @@ variable "dns_records" {
description = "Manually managed DNS records. Each targets a zone by name (the search_domain zone or one from dns_zones). A record in the search_domain zone whose name matches an auto-added host replaces that host record instead of conflicting with it."
type = list(object({
zone = string
name = string # subdomain label, or "@" for the zone apex
type = string # A, AAAA, CNAME, NS, TXT, MX
value = string # IP / target / text / mail exchanger
name = string # subdomain label, or "@" for the zone apex
type = string # A, AAAA, CNAME, NS, TXT, MX
value = string # IP / target / text / mail exchanger
ttl = optional(number)
priority = optional(number) # required for MX records
}))
@@ -126,12 +126,18 @@ variable "nodes" {
ip = string
nameserver = optional(string)
gw = string
nic2 = optional(object({
nic_name = optional(string, "eth1")
bridge = optional(string, "vmbr0")
vlan = optional(number)
ip = string
gw = optional(string)
}))
})), {})
machines = optional(map(object({
hostname = string
vmid = number
ip = string
ip2 = optional(string, null)
vlan = optional(number, 0)
template = string
full_clone = bool
@@ -149,6 +155,12 @@ variable "nodes" {
bios = string
machine = string
bridge = string
nic2 = optional(object({
bridge = optional(string, "vmbr0")
vlan = optional(number)
ip = string
gw = optional(string)
}))
})), {})
}))
default = {}