All task files now use centralized helper functions, ensuring idempotency across all stages. Code is cleaner, more maintainable, and no breaking changes were introduced.
Updated the Debian image URL and path in the defaults/main.yml file to reflect the latest available images. This change ensures that the correct images are used for testing and deployment.
Updated the Debian image URL to point to a newer version (trixie) and updated the local cache path accordingly. This change reflects the latest available image for testing purposes.
- Added default configuration for VM creation in defaults/main.yml.
- Created tasks for configuring the VM with UEFI, TPM, disks, GPU, and Cloud-Init in tasks/configure-vm.yml.
- Implemented clone creation and configuration logic in tasks/create-clones.yml.
- Added template conversion functionality in tasks/create-template.yml.
- Developed base VM creation logic in tasks/create-vm.yml.
- Included image download and caching tasks in tasks/download-image.yml.
- Introduced utility tasks for common operations in tasks/helpers.yml.
- Organized main orchestration logic in tasks/main.yml, with clear stages for each operation.
- Added pre-flight checks to validate the environment before execution in tasks/preflight-checks.yml.
Improved the structure of the templates by adding comments, whitespace, and consistent indentation. Also added a new variable for the vm_id to make it easier to use throughout the template.
This commit introduces a new feature that allows users to create Debian VM templates and deploy clones. The feature includes options for customizing the template, such as making it a template or creating clones from it.