fc1b42c60d
Adds support for using UEFI boot mode for nodes. This is done via node capabilities, as it is in Ironic. The default boot mode is now configurable via the default_boot_mode variable. The default boot mode remains legacy BIOS for now, although this may change. Updates the existing CI jobs, with the OVS jobs using BIOS boot mode, and the linuxbridge jobs using UEFI boot mode. Depends-On: https://github.com/stackhpc/ansible-role-libvirt-vm/pull/83 Depends-On: https://github.com/stackhpc/ansible-role-libvirt-host/pull/50 Depends-On: https://review.opendev.org/c/openstack/kayobe/+/827486 Change-Id: Ifaf95ecfd4f6e925d3c69d4b324fdf2cd6b0ca52
63 lines
2.3 KiB
YAML
63 lines
2.3 KiB
YAML
---
|
|
- hosts: localhost
|
|
tags:
|
|
- host-setup
|
|
tasks:
|
|
- name: Load state from file
|
|
include_vars:
|
|
file: "{{ state_file_path }}"
|
|
name: tenks_state
|
|
|
|
- hosts: hypervisors
|
|
tags:
|
|
- host-setup
|
|
vars:
|
|
physnet_indices: >-
|
|
{{ hostvars.localhost.tenks_state[inventory_hostname].physnet_indices }}
|
|
tasks:
|
|
- include_tasks: hypervisor_setup.yml
|
|
|
|
- hosts: libvirt
|
|
tags:
|
|
- host-setup
|
|
tasks:
|
|
- block:
|
|
- name: Configure host for Libvirt
|
|
include_role:
|
|
name: stackhpc.libvirt-host
|
|
vars:
|
|
libvirt_host_pools:
|
|
- name: "{{ libvirt_pool_name }}"
|
|
type: "{{ libvirt_pool_type }}"
|
|
capacity: "{{ libvirt_pool_capacity }}"
|
|
path: "{{ libvirt_pool_path }}"
|
|
mode: "{{ libvirt_pool_mode }}"
|
|
owner: "{{ libvirt_pool_owner }}"
|
|
group: "{{ libvirt_pool_group }}"
|
|
libvirt_host_require_vt: "{{ libvirt_require_vt }}"
|
|
libvirt_host_uri: "{{ libvirt_local_uri }}"
|
|
libvirt_host_socket_dir: "{{ libvirt_custom_socket_path }}"
|
|
libvirt_host_pid_path: "{{ libvirt_custom_pid_path }}"
|
|
libvirt_host_enable_efi_support: >-
|
|
{{ hostvars.localhost.tenks_state[inventory_hostname].nodes |
|
|
default([]) |
|
|
map('set_libvirt_boot_firmware') |
|
|
selectattr('boot_firmware', 'equalto', 'efi') |
|
|
list |
|
|
length > 0 }}
|
|
|
|
- name: Set up Virtual BMC daemon
|
|
include_role:
|
|
name: virtualbmc-daemon
|
|
vars:
|
|
# NOTE(mgoddard): On CentOS 8 if SELinux is enabled, install
|
|
# virtualbmc to the system rather than a virtualenv. SELinux
|
|
# prevents systemd from accessing files in users' home directories.
|
|
selinux_enabled: "{{ ansible_selinux.status | default('disabled') == 'enabled' }}"
|
|
is_centos8: "{{ ansible_os_family == 'RedHat' and ansible_distribution_major_version | int == 8 }}"
|
|
vbmcd_virtualenv_path: "{{ '' if is_centos8 and selinux_enabled else virtualenv_path }}"
|
|
vbmcd_python_upper_constraints_url: >-
|
|
{{ python_upper_constraints_url }}
|
|
|
|
when: cmd == 'deploy'
|