Files
proxmox-template-clone/roles/proxmox_vm/tasks/main.yml
2026-02-02 15:17:08 -05:00

45 lines
1.3 KiB
YAML

---
- name: Clone VM from template
community.proxmox.proxmox_kvm:
api_host: "{{ proxmox_api_host }}"
api_user: "{{ proxmox_api_user }}"
api_token_id: "{{ proxmox_api_token_id }}"
api_token_secret: "{{ proxmox_api_token_secret }}"
node: "{{ vm_template_node }}"
vmid: "{{ vm_template_id }}"
clone: "template"
name: "{{ vm_hostname }}"
full: true
storage: "local-lvm"
target: "{{ target_node }}"
timeout: 600
register: cloned_vm
- name: Configure VM resources
community.proxmox.proxmox_kvm:
api_host: "{{ proxmox_api_host }}"
api_user: "{{ proxmox_api_user }}"
api_token_id: "{{ proxmox_api_token_id }}"
api_token_secret: "{{ proxmox_api_token_secret }}"
node: "{{ target_node }}"
vmid: "{{ cloned_vm.vmid }}"
cores: "{{ cpu_cores }}"
memory: "{{ ram_gb | int * 1024 }}"
net:
net0: "virtio,bridge=vmbr0"
update: true
- name: Start the VM
community.proxmox.proxmox_kvm:
api_host: "{{ proxmox_api_host }}"
api_user: "{{ proxmox_api_user }}"
api_token_id: "{{ proxmox_api_token_id }}"
api_token_secret: "{{ proxmox_api_token_secret }}"
node: "{{ target_node }}"
vmid: "{{ cloned_vm.vmid }}"
state: started
- name: Set VMID fact for later use
ansible.builtin.set_fact:
created_vmid: "{{ cloned_vm.vmid }}"