How asbedb/proxaform works
Proxaform is a Bash/Terraform/Ansible tool for provisioning, configuring, and tearing down Proxmox LXC containers. Its primary workflow starts with environment setup, gathers a reusable container configuration, provisions infrastructure, generates inventory, then runs a selected Ansible playbook after SSH is available. The README documents these orchestration steps and capabilities; source excerpts were unavailable, so links below reflect documented relationships only.
Main entry points: playbooks Ansible playbooks · deploy.sh Deploy orchestration · main.tf Container provisioning · destroy.sh Teardown orchestration
Components 20
Lifecycle scripts
- Environment setup
setup.sh - Deploy orchestration
deploy.sh - Teardown orchestration
destroy.sh - Playbook selection
deploy.sh
Infrastructure
- Container config
terraform/terraform.tfvars.example - Container provisioning
terraform/main.tf - Terraform variables
terraform/vars.tf - Terraform outputs
terraform/outputs.tf - SSH public key
Ansible configuration
- Generated inventory
- Common role
roles/common/tasks/main.yml - Docker host role
roles/docker_host/tasks/main.yml - Node.js role
roles/nodejs/tasks/main.yml - Crontab UI role
roles/crontab-ui/tasks/main.yml - Rundeck role
roles/rundeck_server/tasks/main.yml - Technitium role
roles/technitium/tasks/main.yml
Playbook catalog
- Ansible playbooks
playbooks
Other components
- Operator
- Proxmox VE
- LXC container
Connections 25
- Operator → Environment setup: starts setup
- Operator → Deploy orchestration: starts deployment
- Operator → Teardown orchestration: starts teardown
- Environment setup → Operator: installs dependencies
- Deploy orchestration → Container config: creates or selects
- Deploy orchestration → SSH public key: injects key
- Deploy orchestration → Container provisioning: runs provisioning
- Container provisioning → Terraform variables: uses variables
- Container provisioning → Proxmox VE: provisions on
- Proxmox VE → LXC container: hosts
- Container provisioning → Terraform outputs: produces outputs
- Deploy orchestration → Generated inventory: generates inventory
- Deploy orchestration → LXC container: waits for SSH
- Deploy orchestration → Playbook selection: offers selection
- Playbook selection → Ansible playbooks: selects playbook
- Deploy orchestration → Ansible playbooks: runs with Ansible
- Ansible playbooks → Generated inventory: targets hosts
- Ansible playbooks → Common role: uses role
- Ansible playbooks → Docker host role: uses role
- Ansible playbooks → Node.js role: uses role
- Ansible playbooks → Crontab UI role: uses role
- Ansible playbooks → Rundeck role: uses role
- Ansible playbooks → Technitium role: uses role
- Teardown orchestration → Container provisioning: tears down
- Teardown orchestration → Generated inventory: cleans up