CI: test ironic UEFI boot mode in overcloud TLS jobs

Set the Ironic boot mode to legacy BIOS explicitly in Tenks config in
anticipation of an upcoming change to the default boot mode.

Override the boot mode to UEFI in the overcloud TLS job to improve
coverage. This requires enabling iPXE booting.

Depends-On: https://review.opendev.org/c/openstack/tenks/+/827479/

Change-Id: Id1b4e9775c834b8b97e086241ee8b247977225a2
This commit is contained in:
Mark Goddard 2022-02-03 13:57:46 +00:00
parent d6e8365867
commit b57b94bbad
5 changed files with 20 additions and 0 deletions

View File

@ -34,6 +34,8 @@ physnet_mappings:
deploy_kernel: ipa.kernel deploy_kernel: ipa.kernel
deploy_ramdisk: ipa.initramfs deploy_ramdisk: ipa.initramfs
default_boot_mode: "bios"
# Use the libvirt daemon deployed by Kolla Ansible in the nova_libvirt # Use the libvirt daemon deployed by Kolla Ansible in the nova_libvirt
# container. Tenks will install libvirt client packages. # container. Tenks will install libvirt client packages.
libvirt_host_install_daemon: false libvirt_host_install_daemon: false

View File

@ -34,6 +34,8 @@ physnet_mappings:
bridge_type: linuxbridge bridge_type: linuxbridge
default_boot_mode: "bios"
# No placement service. # No placement service.
wait_for_placement: false wait_for_placement: false

View File

@ -33,6 +33,13 @@ aio_bridge_ports:
# Enable ironic for testing baremetal compute. # Enable ironic for testing baremetal compute.
kolla_enable_ironic: true kolla_enable_ironic: true
{% if ironic_boot_mode == 'uefi' %}
# iPXE is currently required for UEFI boot mode in Kolla Ansible.
kolla_enable_ironic_ipxe: true
kolla_ironic_enabled_boot_interfaces: [ipxe]
kolla_ironic_default_boot_interface: ipxe
{% endif %}
{% if tls_enabled %} {% if tls_enabled %}
kolla_enable_tls_external: "yes" kolla_enable_tls_external: "yes"
kolla_enable_tls_internal: "yes" kolla_enable_tls_internal: "yes"

View File

@ -25,6 +25,13 @@
src: globals.yml.j2 src: globals.yml.j2
dest: "{{ kayobe_config_src_dir }}/etc/kayobe/kolla/globals.yml" dest: "{{ kayobe_config_src_dir }}/etc/kayobe/kolla/globals.yml"
- name: Configure Tenks to use UEFI boot mode
replace:
path: "{{ kayobe_src_dir }}/dev/tenks-deploy-config-compute.yml"
regexp: '^default_boot_mode: .*$'
replace: 'default_boot_mode: "uefi"'
when: ironic_boot_mode == 'uefi'
- name: Ensure kayobe is installed - name: Ensure kayobe is installed
shell: shell:
cmd: dev/install.sh &> {{ logs_dir }}/ansible/install cmd: dev/install.sh &> {{ logs_dir }}/ansible/install

View File

@ -83,6 +83,7 @@
tenks_src_dir: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['opendev.org/openstack/tenks'].src_dir }}" tenks_src_dir: "{{ ansible_env.PWD ~ '/' ~ zuul.projects['opendev.org/openstack/tenks'].src_dir }}"
is_upgrade: "{{ 'upgrade' in zuul.job }}" is_upgrade: "{{ 'upgrade' in zuul.job }}"
tls_enabled: false tls_enabled: false
ironic_boot_mode: "bios"
- job: - job:
name: kayobe-overcloud-base name: kayobe-overcloud-base
@ -110,6 +111,7 @@
parent: kayobe-overcloud-base parent: kayobe-overcloud-base
vars: vars:
tls_enabled: true tls_enabled: true
ironic_boot_mode: "uefi"
- job: - job:
name: kayobe-overcloud-tls-centos8s name: kayobe-overcloud-tls-centos8s