CI: Emulate Redfish baremetal with Tenks

Emulate baremetal using Tenks to test the deployment of Redfish
baremetal with Ironic.

Depends-On: https://review.opendev.org/c/openstack/tenks/+/995697
Change-Id: I8e75b5e9b56586ced9c0a9d88bb80a8535397f50
Signed-off-by: Jed Preist <jed@stackhpc.com>
This commit is contained in:
Jed Preist committed 2026-07-16 09:33:08 +01:00
1 parent e26af03e18
commit b8bb880f76
6 files changed
+68 -2

No files matched your search

+2
View File
@@ -11,6 +11,8 @@ source "${PARENT}/functions"
function main {
config_init
overcloud_test bm1 test-rc provision-net
# Test Redfish as well
overcloud_test bm2 test-rc-red provision-net
}
main
+3
View File
@@ -10,6 +10,9 @@ source "${PARENT}/functions"
function main {
config_init
# Test Redfish as well
overcloud_test_inspect red0
overcloud_test_inspect tk0
}
@@ -9,7 +9,8 @@ node_types:
volumes:
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
- capacity: 4GiB
# The cloud image seems to fill a 4GiB disk, so allow 6.
- capacity: 6GiB
physical_networks:
- physnet1
console_log_enabled: true
@@ -19,6 +20,24 @@ node_types:
# Stream IPA doesn't fail with "Fatal glibc error: CPU does not support
# x86-64-v2".
cpu_mode: maximum
type1:
memory_mb: 3072
vcpus: 1
volumes:
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
# The cloud image seems to fill a 4GiB disk, so allow 6.
- capacity: 6GiB
physical_networks:
- physnet1
console_log_enabled: true
# We seem to hit issues with missing cpu features in CI as a result of using host-model, e.g:
# https://zuul.opendev.org/t/openstack/build/02c33ab51664419a88a5a54ad22852a9/log/primary/system_logs/libvirt/qemu/tk0.txt.gz#38
# NOTE(bbezak): Force QEMU to expose x86-64‑v2 features, so the CentOS
# Stream IPA doesn't fail with "Fatal glibc error: CPU does not support
# x86-64-v2".
cpu_mode: maximum
ironic_driver: redfish
specs:
- type: type0
@@ -26,10 +45,18 @@ specs:
ironic_config:
resource_class: test-rc
network_interface: flat
- type: type1
count: 1
node_name_prefix: red
ironic_config:
resource_class: test-rc-red
network_interface: flat
nova_flavors:
- resource_class: test-rc
node_type: type0
- resource_class: test-rc-red
node_type: type1
physnet_mappings:
physnet1: breth1
+28 -1
View File
@@ -9,7 +9,8 @@ node_types:
volumes:
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
- capacity: 4GiB
# The cloud image seems to fill a 4GiB disk, so allow 6.
- capacity: 6GiB
physical_networks:
- physnet1
console_log_enabled: true
@@ -19,6 +20,24 @@ node_types:
# Stream IPA doesn't fail with "Fatal glibc error: CPU does not support
# x86-64-v2".
cpu_mode: maximum
type1:
memory_mb: 3072
vcpus: 1
volumes:
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
# The cloud image seems to fill a 4GiB disk, so allow 6.
- capacity: 6GiB
physical_networks:
- physnet1
console_log_enabled: true
# We seem to hit issues with missing cpu features in CI as a result of using host-model, e.g:
# https://zuul.opendev.org/t/openstack/build/02c33ab51664419a88a5a54ad22852a9/log/primary/system_logs/libvirt/qemu/tk0.txt.gz#38
# NOTE(bbezak): Force QEMU to expose x86-64‑v2 features, so the CentOS
# Stream IPA doesn't fail with "Fatal glibc error: CPU does not support
# x86-64-v2".
cpu_mode: maximum
ironic_driver: redfish
specs:
- type: type0
@@ -26,10 +45,18 @@ specs:
ironic_config:
resource_class: test-rc
network_interface: flat
- type: type1
count: 1
node_name_prefix: red
ironic_config:
resource_class: test-rc-red
network_interface: flat
nova_flavors:
- resource_class: test-rc
node_type: type0
- resource_class: test-rc-red
node_type: type1
physnet_mappings:
physnet1: breth1
@@ -2,3 +2,4 @@
hv100
tk0
tk1
red0
@@ -90,6 +90,12 @@
cmd: "{{ kayobe_src_dir }}/dev/overcloud-upgrade.sh &> {{ logs_dir }}/ansible/overcloud-upgrade"
executable: /bin/bash
# Upgrading restarts libvirt, which breaks sushy-emulator.
- name: Restart sushy-emulator
shell:
cmd: "systemctl restart sushy_emulator.service"
become: true
# Remove unused Docker images to avoid reaching full disk
- name: Remove unused Docker images
shell: