The user-data.yml.tftpl file was replaced with OS-specific templates to
support
different init systems. The new templates are
user-data-systemd.yml.tftpl and
user-data-alpine.yml.tftpl, selected based on the VM's OS type.
The virtual_machines map is now populated with configuration for an
IPFabric VM, including specifications for OS, CPU, memory, disk size, IP
address, gateway, and associated tags.
Add proxmox_ssh_private_key for provider SSH in CI pipelines.
Add admin_ssh_public_key as content-based alternative to file path.
Both default to empty string for backward compatibility with local usage.
Update the production terraform variables to define the 'ipfabric'
virtual machine. This replaces the empty VM map with specific
resource allocations:
- Resources: 4 vCPUs, 16GB RAM, 128GB Storage
- Network: Static IP 192.168.1.161
- OS tag: ipfabric
This configuration enables the provisioning of the IP Fabric node in the
production environment.
Remove the configuration for the "netlab" virtual machine (192.168.1.161).
This clears the virtual_machines map in the production environment, effectively decommissioning the instance.
Adds the 'ipfabric' instance to the production virtual_machines inventory.
This provisions the server with 8 cores, 16GB memory, and 128GB disk
assigned to IP 192.168.1.162.
Update the `supported_os` local variable in `01-virtual-machines.tf` to
reflect current provisioning requirements. This change removes `centos`
and adds `ipfabric` to the set of allowed operating system templates.
- Add `qemu-guest-agent` enable/start command to `user-data.yml.tftpl` to ensure the agent is active immediately after provisioning.
- Set `stop_on_destroy = true` in the Proxmox VM resource definition to ensure graceful shutdown during Terraform destroy operations.
Add the configuration for the "netlab" VM in the production environment. This machine is provisioned with:
- OS: Debian
- 8 CPU cores
- 16GB RAM
- 64GB Disk
- Static IP 192.168.1.161
Update the indentation of the `virtual_machines` map in `terraform/prod/terraform.tfvars` from 4 spaces to 2 spaces to maintain consistency with the surrounding HCL code style. No functional changes were made to the configuration values.
- Remove `*.tfvars` from .gitignore to allow tracking variable files.
- Enforce Terraform version to be greater than or equal to 1.5.0 in prod configuration.
Reformat the Proxmox template requirements table in `terraform/prod/README.md` to improve readability and ensure consistent spacing between columns. This purely aesthetic change aligns the headers and cell contents properly.
The commit message should be:
``` Translate docs to French and update domain examples
Change the example domain from lab.home.arnodo.fr to taila5ad8.ts.net
and convert documentation to French. Remove LXC container configuration
that was not being used. ```
This message captures the key changes: 1. Translation of documentation
to French 2. Update of domain examples throughout the codebase 3.
Removal of unused LXC container configuration
The changes warrant a body since there are multiple related but distinct
changes being made. The message follows the Git commit style guidelines,
using imperative mood and keeping the first line under 50 characters.
The commit rephrases the README to focus on Cloud-Init setup and removes
unused Ansible code, making Tailscale configuration automatic.
Subject line: Replace Ansible with automated Cloud-Init configuration
Body: Refactors infrastructure bootstrapping to leverage Cloud-Init
instead of Ansible for initial VM setup, particularly with respect to
Tailscale installation and authentication.
This simplifies the architecture by: - Removing manual post-provisioning
Ansible steps - Automating Tailscale setup via Cloud-Init - Updating
documentation to reflect new workflow