Some checks failed
Deploy / Update Proxmox Dev VMs / Detect changed Proxmox tfvars (push) Successful in 26s
Test / Static Analysis (push) Failing after 25s
Test / Unit Tests — Docker Stack (push) Has been skipped
Test / Unit Tests — K8s Stack (push) Has been skipped
Deploy / Update Proxmox Dev VMs / Provision ${{ matrix.tfvars }} (push) Failing after 32s
Deploy / Update Proxmox Dev VMs / Destroy ${{ matrix.tfvars }} (push) Has been skipped
Test / Integration Test — K8s (k3d) (push) Has been skipped
50 lines
2.7 KiB
HCL
50 lines
2.7 KiB
HCL
# ─── Example developer VM configuration ──────────────────────────────────────
|
|
#
|
|
# File naming convention: proxmox/apps/<devname>.tfvars
|
|
# The filename becomes the Tofu workspace name, the VM hostname, and the
|
|
# key name used for gopass secrets (infra/ssh-keys/<devname>).
|
|
#
|
|
# Required Gitea secrets (set once in the repository settings):
|
|
# PROXMOX_ENDPOINT — https://proxmox.example.com:8006/
|
|
# PROXMOX_API_TOKEN — user@pam!tokenid=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
|
|
# PROXMOX_TLS_INSECURE — true (if using a self-signed cert), otherwise omit
|
|
#
|
|
# Chained deploy convention:
|
|
# vm_role = "docker" → also applies apps/<devname>-qa.tfvars (if present)
|
|
# vm_role = "k3s" → also applies k8s/apps/<devname>-qa.tfvars (if present)
|
|
# ─────────────────────────────────────────────────────────────────────────────
|
|
|
|
# ─── Proxmox placement ───────────────────────────────────────────────────────
|
|
|
|
proxmox_node = "pve" # your Proxmox node name
|
|
template_vm_id = 9000 # VM ID of your cloud-init template (must have qemu-guest-agent)
|
|
storage_pool = "local-lvm"
|
|
|
|
# snippets_datastore = "local" # default; must have Snippets content type enabled
|
|
|
|
# ─── VM sizing ───────────────────────────────────────────────────────────────
|
|
|
|
cores = 2
|
|
memory_mb = 2048
|
|
disk_size_gb = 30
|
|
|
|
# ─── Networking ──────────────────────────────────────────────────────────────
|
|
|
|
bridge = "vmbr0"
|
|
|
|
# vlan_tag = 100 # uncomment to place the VM in a specific VLAN
|
|
|
|
# ─── Role & access ───────────────────────────────────────────────────────────
|
|
|
|
# "docker" → installs Docker CE; pairs with apps/<devname>-qa.tfvars
|
|
# "k3s" → installs k3s; pairs with k8s/apps/<devname>-qa.tfvars
|
|
vm_role = "docker"
|
|
|
|
cloud_init_user = "developer"
|
|
|
|
# Leave empty to auto-generate an ED25519 key pair.
|
|
# The private key is stored in Tofu state and automatically saved to gopass
|
|
# as infra/ssh-keys/<devname> by the CI pipeline.
|
|
# Or paste the developer's SSH public key here:
|
|
ssh_public_key = ""
|