diff --git a/roles/proxmox_lxc/tasks/main.yml b/roles/proxmox_lxc/tasks/main.yml index f10188c..ecf7036 100644 --- a/roles/proxmox_lxc/tasks/main.yml +++ b/roles/proxmox_lxc/tasks/main.yml @@ -1,5 +1,5 @@ --- -- name: Clone LXC from template +- name: Clone LXC from template (on template's node) community.proxmox.proxmox: api_host: "{{ proxmox_api_host }}" api_user: "{{ proxmox_api_user }}" @@ -10,10 +10,22 @@ hostname: "{{ vm_hostname }}" full: true storage: "local-lvm" - target: "{{ target_node }}" timeout: 600 register: cloned_lxc +- name: Migrate LXC to target node + community.proxmox.proxmox: + 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: "{{ lxc_template_node }}" + vmid: "{{ cloned_lxc.vmid }}" + target: "{{ target_node }}" + state: present + timeout: 600 + when: lxc_template_node != target_node + - name: Configure LXC resources community.proxmox.proxmox: api_host: "{{ proxmox_api_host }}" diff --git a/roles/proxmox_vm/tasks/main.yml b/roles/proxmox_vm/tasks/main.yml index 5799333..cf92289 100644 --- a/roles/proxmox_vm/tasks/main.yml +++ b/roles/proxmox_vm/tasks/main.yml @@ -1,5 +1,5 @@ --- -- name: Clone VM from template +- name: Clone VM from template (on template's node) community.proxmox.proxmox_kvm: api_host: "{{ proxmox_api_host }}" api_user: "{{ proxmox_api_user }}" @@ -11,10 +11,22 @@ name: "{{ vm_hostname }}" full: true storage: "local-lvm" - target: "{{ target_node }}" timeout: 600 register: cloned_vm +- name: Migrate VM to target node + 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: "{{ cloned_vm.vmid }}" + migrate: true + target: "{{ target_node }}" + timeout: 600 + when: vm_template_node != target_node + - name: Configure VM resources community.proxmox.proxmox_kvm: api_host: "{{ proxmox_api_host }}"