Skip to content

Commit 9dfb826

Browse files
authored
Merge pull request #469 from stackhpc/upstream/2025.1-2025-09-08
Synchronise 2025.1 with upstream
2 parents 6c14214 + 9b67036 commit 9dfb826

File tree

9 files changed

+70
-17
lines changed

9 files changed

+70
-17
lines changed

ansible/inventory/group_vars/all/seed-vm

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,15 @@ seed_vm_root_format: qcow2
4646
# https://dl.rockylinux.org/pub/rocky/9/images/x86_64/Rocky-9-GenericCloud.latest.x86_64.qcow2
4747
# when os_distribution is "rocky",
4848
# or
49-
# "https://cloud.centos.org/centos/9-stream/x86_64/images/CentOS-Stream-GenericCloud-9-latest.x86_64.qcow2"
49+
# "https://cloud.centos.org/centos/9-stream/x86_64/images/CentOS-Stream-GenericCloud-x86_64-9-latest.x86_64.qcow2"
5050
# otherwise.
5151
seed_vm_root_image: >-
5252
{%- if os_distribution == 'ubuntu' %}
5353
https://cloud-images.ubuntu.com/noble/current/noble-server-cloudimg-amd64.img
5454
{%- elif os_distribution == 'rocky' %}
5555
https://dl.rockylinux.org/pub/rocky/9/images/x86_64/Rocky-9-GenericCloud.latest.x86_64.qcow2
5656
{%- else -%}
57-
https://cloud.centos.org/centos/9-stream/x86_64/images/CentOS-Stream-GenericCloud-9-latest.x86_64.qcow2
57+
https://cloud.centos.org/centos/9-stream/x86_64/images/CentOS-Stream-GenericCloud-x86_64-9-latest.x86_64.qcow2
5858
{%- endif %}
5959

6060
# Capacity of the seed VM data volume.

ansible/network-connectivity.yml

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -68,9 +68,12 @@
6868
command: >
6969
ping {{ remote_ip }} -c1 -M do {% if mtu %} -s {{ mtu | int - icmp_overhead_bytes }}{% endif %}
7070
with_items: "{{ network_interfaces }}"
71+
loop_control:
72+
label: "{{ remote_host }} on {{ item }}"
7173
when:
72-
- item | net_ip
7374
- remote_hosts | length > 0
75+
- remote_ip | length > 0
76+
- item | net_ip
7477
changed_when: False
7578
vars:
7679
# Select other hosts targeted by this play which have this network
@@ -83,6 +86,10 @@
8386
rejectattr('inventory_hostname', 'equalto', inventory_hostname) |
8487
map(attribute='inventory_hostname') |
8588
list }}
86-
remote_host: "{{ remote_hosts | random }}"
87-
remote_ip: "{{ item | net_ip(remote_host) }}"
89+
# NOTE(wszumski): Needed to fix random choice for the run otherwise the
90+
# when check: remote_ip | length > 0, would pass, but remote_ip was ''
91+
# in the command. Assumption was that this was being evaluated once
92+
# for the when clause and then again for the command. Bug?
93+
remote_host: "{{ remote_hosts | random(seed=ansible_facts.date_time.iso8601) }}"
94+
remote_ip: "{{ lookup('cached', 'vars', item ~ '_ips')[remote_host] | default('', true) }}"
8895
mtu: "{{ item | net_mtu }}"

ansible/roles/bootstrap/tasks/main.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -61,8 +61,10 @@
6161
user: "{{ ansible_facts.user_id }}"
6262
key: "{{ lookup('file', bootstrap_ssh_private_key_path ~ '.pub') }}"
6363

64+
# NOTE(priteau): Exclude comments from ssh-keyscan output because they break
65+
# known_hosts on centos/rocky 10.
6466
- name: Scan for SSH keys
65-
command: ssh-keyscan {{ item }}
67+
shell: ssh-keyscan {{ item }} | grep -v '^#'
6668
with_items:
6769
- localhost
6870
- 127.0.0.1

ansible/roles/ssh-known-host/tasks/main.yml

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,11 @@
1313
vm provision' and 'kayobe overcloud inventory discover'.
1414
when: not ansible_host | default(inventory_hostname)
1515

16+
# NOTE(priteau): Exclude comments from ssh-keyscan output because they break
17+
# known_hosts on centos/rocky 10.
1618
- name: Scan for SSH keys
1719
local_action:
18-
module: command ssh-keyscan {{ item }}
20+
module: shell ssh-keyscan {{ item }} | grep -v '^#'
1921
with_items:
2022
- "{{ ansible_host|default(inventory_hostname) }}"
2123
register: keyscan_result

playbooks/kayobe-seed-vm-base/overrides.yml.j2

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,11 @@ seed_vm_vcpus: 1
3434
# Reduce the memory footprint of the seed VM.
3535
seed_vm_memory_mb: "{{ 1 * 1024 }}"
3636

37-
# Use cirros rather than CentOS for the VM.
37+
{% if seed_vm_use_cirros | default(true) %}
38+
# Use cirros rather than distribution cloud image for the VM.
3839
seed_bootstrap_user: cirros
3940
seed_vm_root_image: /opt/cache/files/cirros-0.5.3-x86_64-disk.img
41+
{% endif %}
4042

4143
{% if seed_vm_boot_firmware is defined %}
4244
seed_vm_boot_firmware: "{{ seed_vm_boot_firmware }}"
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
fixes:
3+
- |
4+
Fixes CentOS Stream 9 seed and infra VMs not booting by switching to an
5+
EFI-compatible image.
6+
`LP#2121588 <https://bugs.launchpad.net/kayobe/+bug/2121588>`__
Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
---
2+
fixes:
3+
- |
4+
Fixes network connectivity check when a subset of hosts have the ``no_ip``
5+
property set via group or host variables.
6+
`LP#2120918 <https://bugs.launchpad.net/kayobe/+bug/2120918>`__

zuul.d/jobs.yaml

Lines changed: 31 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -395,30 +395,52 @@
395395
kayobe_control_host_become: false
396396

397397
- job:
398-
name: kayobe-seed-vm-efi-base
398+
name: kayobe-seed-vm-centos9s-cloud-image
399+
parent: kayobe-seed-vm-base
400+
nodeset: kayobe-centos9s
401+
voting: false
402+
vars:
403+
seed_vm_use_cirros: false
404+
405+
- job:
406+
name: kayobe-seed-vm-rocky9-cloud-image
407+
parent: kayobe-seed-vm-base
408+
nodeset: kayobe-rocky9
409+
vars:
410+
seed_vm_use_cirros: false
411+
412+
- job:
413+
name: kayobe-seed-vm-ubuntu-noble-cloud-image
414+
parent: kayobe-seed-vm-base
415+
nodeset: kayobe-ubuntu-noble
416+
voting: false
417+
vars:
418+
seed_vm_use_cirros: false
419+
420+
- job:
421+
name: kayobe-seed-vm-q35-base
399422
parent: kayobe-seed-vm-base
400423
description: |
401-
Base job for testing seed VM provisioning with EFI and q35
424+
Base job for testing seed VM provisioning with q35
402425
vars:
403-
seed_vm_boot_firmware: efi
404426
seed_vm_machine: q35
405427

406428
- job:
407-
name: kayobe-seed-vm-centos9s-efi
408-
parent: kayobe-seed-vm-efi-base
429+
name: kayobe-seed-vm-centos9s-q35
430+
parent: kayobe-seed-vm-q35-base
409431
nodeset: kayobe-centos9s
410432
voting: false
411433

412434
- job:
413-
name: kayobe-seed-vm-rocky9-efi
414-
parent: kayobe-seed-vm-efi-base
435+
name: kayobe-seed-vm-rocky9-q35
436+
parent: kayobe-seed-vm-q35-base
415437
nodeset: kayobe-rocky9
416438
vars:
417439
kayobe_control_host_become: false
418440

419441
- job:
420-
name: kayobe-seed-vm-ubuntu-noble-efi
421-
parent: kayobe-seed-vm-efi-base
442+
name: kayobe-seed-vm-ubuntu-noble-q35
443+
parent: kayobe-seed-vm-q35-base
422444
nodeset: kayobe-ubuntu-noble
423445

424446
- job:

zuul.d/project.yaml

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,3 +78,9 @@
7878
- kayobe-seed-images-rocky9-podman
7979
- kayobe-seed-images-ubuntu-noble
8080
- kayobe-seed-images-ubuntu-noble-podman
81+
- kayobe-seed-vm-centos9s-cloud-image
82+
- kayobe-seed-vm-centos9s-q35
83+
- kayobe-seed-vm-rocky9-cloud-image
84+
- kayobe-seed-vm-rocky9-q35
85+
- kayobe-seed-vm-ubuntu-noble-cloud-image
86+
- kayobe-seed-vm-ubuntu-noble-q35

0 commit comments

Comments
 (0)