43 lines
1.2 KiB
YAML
43 lines
1.2 KiB
YAML
---
|
|
- name: Cleanup Xen installer media
|
|
when: hypervisor_type == "xen"
|
|
delegate_to: localhost
|
|
become: false
|
|
vars:
|
|
xen_installer_media_enabled: "{{ xen_installer_media_enabled | default(false) }}"
|
|
block:
|
|
- name: Ensure Xen disk definitions exist
|
|
ansible.builtin.include_tasks: ../../virtualization/tasks/_xen_disks.yml
|
|
|
|
- name: Render Xen VM configuration without installer media
|
|
vars:
|
|
xen_installer_media_enabled: false
|
|
ansible.builtin.template:
|
|
src: xen.cfg.j2
|
|
dest: /tmp/xen-{{ hostname }}.cfg
|
|
mode: "0644"
|
|
|
|
- name: Destroy Xen VM if running
|
|
ansible.builtin.command:
|
|
argv:
|
|
- xl
|
|
- destroy
|
|
- "{{ hostname }}"
|
|
register: cleanup_xen_destroy
|
|
failed_when: false
|
|
changed_when: cleanup_xen_destroy.rc == 0
|
|
|
|
- name: Start Xen VM without installer media
|
|
ansible.builtin.command:
|
|
argv:
|
|
- xl
|
|
- create
|
|
- /tmp/xen-{{ hostname }}.cfg
|
|
register: cleanup_xen_start_result
|
|
changed_when: cleanup_xen_start_result.rc == 0
|
|
|
|
- name: Remove temporary Xen configuration file
|
|
ansible.builtin.file:
|
|
path: /tmp/xen-{{ hostname }}.cfg
|
|
state: absent
|