Skip to content

Commit 7965794

Browse files
committed
Various AUFN-related changes for Epoxy
1 parent 8dd8ea7 commit 7965794

20 files changed

+145
-37
lines changed

etc/kayobe/ansible/purge-command-not-found.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,7 @@
2525
name:
2626
- command-not-found
2727
- python3-command-not-found
28+
- python3-commandnotfound
2829
purge: true
2930
state: absent
3031
become: true

etc/kayobe/apt.yml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -51,16 +51,21 @@ apt_keys:
5151
# Default is an empty list.
5252
stackhpc_apt_repositories:
5353
- url: "{{ stackhpc_repo_ubuntu_noble_url }}"
54+
name: ubuntu
5455
suites: "{{ ansible_facts.distribution_release }} {{ ansible_facts.distribution_release }}-updates {{ ansible_facts.distribution_release }}-backports"
5556
components: main restricted universe multiverse
57+
signed_by: /usr/share/keyrings/ubuntu-archive-keyring.gpg
5658
architecture: amd64
5759
required: true
5860
- url: "{{ stackhpc_repo_ubuntu_noble_security_url }}"
61+
name: ubuntu
5962
suites: "{{ ansible_facts.distribution_release }}-security"
6063
components: main restricted universe multiverse
64+
signed_by: /usr/share/keyrings/ubuntu-archive-keyring.gpg
6165
architecture: amd64
6266
required: true
6367
- url: "{{ stackhpc_repo_docker_ce_ubuntu_noble_url }}"
68+
name: ubuntu
6469
suites: "{{ ansible_facts.distribution_release }}"
6570
components: stable
6671
signed_by: docker.asc

etc/kayobe/bifrost.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -138,19 +138,19 @@
138138
kolla_bifrost_ipa_kernel_upstream_url: "{{ (stackhpc_ipa_image_url + '/ipa.kernel') if stackhpc_ipa_image_bifrost_enabled | bool }}"
139139

140140
# URL of checksum of Ironic Python Agent (IPA) kernel image.
141-
#kolla_bifrost_ipa_kernel_checksum_url:
141+
kolla_bifrost_ipa_kernel_checksum_url: "{{ kolla_bifrost_ipa_kernel_upstream_url }}.sha256"
142142

143143
# Algorithm of checksum of Ironic Python Agent (IPA) kernel image.
144-
#kolla_bifrost_ipa_kernel_checksum_algorithm:
144+
kolla_bifrost_ipa_kernel_checksum_algorithm: sha256
145145

146146
# URL of Ironic Python Agent (IPA) ramdisk image.
147147
kolla_bifrost_ipa_ramdisk_upstream_url: "{{ (stackhpc_ipa_image_url + '/ipa.initramfs') if stackhpc_ipa_image_bifrost_enabled | bool }}"
148148

149149
# URL of checksum of Ironic Python Agent (IPA) ramdisk image.
150-
#kolla_bifrost_ipa_ramdisk_checksum_url:
150+
kolla_bifrost_ipa_ramdisk_checksum_url: "{{ kolla_bifrost_ipa_ramdisk_upstream_url }}.sha256"
151151

152152
# Algorithm of checksum of Ironic Python Agent (IPA) ramdisk image.
153-
#kolla_bifrost_ipa_ramdisk_checksum_algorithm:
153+
kolla_bifrost_ipa_ramdisk_checksum_algorithm: sha256
154154

155155
###############################################################################
156156
# Inventory configuration.

etc/kayobe/environments/aufn-ceph/a-universe-from-nothing.sh

Lines changed: 12 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -14,16 +14,23 @@ KAYOBE_BRANCH=stackhpc/2025.1
1414
KAYOBE_CONFIG_BRANCH=stackhpc/2025.1
1515
KAYOBE_ENVIRONMENT=aufn-ceph
1616

17+
if [[ ! -f $BASE_PATH/vault-pw ]]; then
18+
echo "Vault password file not found at $BASE_PATH/vault-pw"
19+
exit 1
20+
fi
21+
1722
# Install git and tmux.
1823
if $(which dnf 2>/dev/null >/dev/null); then
1924
sudo dnf -y install git tmux
2025
else
2126
sudo apt update
22-
sudo apt -y install git tmux gcc libffi-dev python3-dev python-is-python3
27+
sudo apt -y install git tmux gcc libffi-dev python3-dev python-is-python3 python3-pip python3.12-venv
2328
fi
2429

30+
export KAYOBE_VAULT_PASSWORD=$(cat $BASE_PATH/vault-pw)
31+
2532
# Disable the firewall.
26-
sudo systemctl is-enabled firewalld && sudo systemctl stop firewalld && sudo systemctl disable firewalld
33+
sudo systemctl is-enabled firewalld && sudo systemctl stop firewalld && sudo systemctl disable firewalld || true
2734

2835
# Disable SELinux both immediately and permanently.
2936
if $(which setenforce 2>/dev/null >/dev/null); then
@@ -32,7 +39,7 @@ if $(which setenforce 2>/dev/null >/dev/null); then
3239
fi
3340

3441
# Prevent sudo from performing DNS queries.
35-
echo 'Defaults !fqdn' | sudo tee /etc/sudoers.d/no-fqdn
42+
echo 'Defaults !fqdn' | sudo tee /etc/sudoers.d/no-fqdn
3643

3744
# Clone repositories
3845
cd $BASE_PATH
@@ -47,15 +54,15 @@ popd
4754
mkdir -p venvs
4855
pushd venvs
4956
if [[ ! -d kayobe ]]; then
50-
python3 -m venv kayobe
57+
python3.12 -m venv kayobe
5158
fi
5259
# NOTE: Virtualenv's activate and deactivate scripts reference an
5360
# unbound variable.
5461
set +u
5562
source kayobe/bin/activate
5663
set -u
5764
pip install -U pip
58-
pip install ../src/kayobe
65+
pip install -r ../src/kayobe-config/requirements.txt
5966
popd
6067

6168
# Activate environment
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
###############################################################################
3+
# Compute node configuration.
4+
5+
# User with which to access the computes via SSH during bootstrap, in order
6+
# to setup the Kayobe user account. Default is {{ os_distribution }}.
7+
compute_bootstrap_user: "{{ os_distribution if os_distribution == 'ubuntu' else 'cloud-user' }}"
8+
9+
###############################################################################
10+
# Compute node LVM configuration.
11+
12+
# List of compute volume groups. See mrlesmithjr.manage-lvm role for
13+
# format.
14+
compute_lvm_groups:
15+
- "{{ stackhpc_lvm_group_rootvg }}"
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
###############################################################################
3+
# Controller node configuration.
4+
5+
# User with which to access the controllers via SSH during bootstrap, in order
6+
# to setup the Kayobe user account. Default is {{ os_distribution }}.
7+
controller_bootstrap_user: "{{ os_distribution if os_distribution == 'ubuntu' else 'cloud-user' }}"
8+
9+
###############################################################################
10+
# Controller node LVM configuration.
11+
12+
# List of controller volume groups. See mrlesmithjr.manage-lvm role for
13+
# format.
14+
controller_lvm_groups:
15+
- "{{ stackhpc_lvm_group_rootvg }}"
Lines changed: 27 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
---
2+
###############################################################################
3+
# StackHPC LVM Logical Volume (LV) configuration.
4+
5+
# StackHPC LVM lv_swap LV size.
6+
stackhpc_lvm_lv_swap_size: 120m
7+
8+
# StackHPC LVM lv_root LV size.
9+
stackhpc_lvm_lv_root_size: 1g
10+
11+
# StackHPC LVM lv_tmp LV size.
12+
stackhpc_lvm_lv_tmp_size: 1g
13+
14+
# StackHPC LVM lv_var LV size.
15+
stackhpc_lvm_lv_var_size: 2.5g
16+
17+
# StackHPC LVM lv_var_tmp LV size.
18+
stackhpc_lvm_lv_var_tmp_size: 1g
19+
20+
# StackHPC LVM lv_log LV size.
21+
stackhpc_lvm_lv_log_size: 1g
22+
23+
# StackHPC LVM lv_audit LV size.
24+
stackhpc_lvm_lv_audit_size: 120m
25+
26+
# StackHPC LVM lv_home LV size.
27+
stackhpc_lvm_lv_home_size: 1g
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
###############################################################################
3+
# Kolla configuration.
4+
5+
# Docker namespace to use for Kolla images. Default is 'kolla'.
6+
kolla_docker_namespace: stackhpc-dev
7+
8+
###############################################################################
9+
# StackHPC configuration.
10+
11+
# Use AIO credentials for access to Ark
12+
# TODO: generate AUFN-specific credentials
13+
stackhpc_release_pulp_username: "skc-ci-aio"
14+
stackhpc_release_pulp_password: !vault |
15+
$ANSIBLE_VAULT;1.1;AES256
16+
31386366383365666135336331663635396237623139306362633933636233613765663731666338
17+
3633633736333936383439623066653663333964343234350a393137383537316164323837386437
18+
36613139323161643766666565643739373037623363636234343965343436653261326238393566
19+
3837336661653962340a316631366463623138623530373133336665376433633437306631383666
20+
30333461333535363433363336663664316634343432633766346564323833346663

etc/kayobe/environments/aufn-ceph/stackhpc.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ kolla_docker_namespace: stackhpc-dev
88
###############################################################################
99
# StackHPC configuration.
1010

11-
# Base URL of the StackHPC Test Pulp service.
12-
stackhpc_release_pulp_url: "http://pulp-server.internal.sms-cloud:8080"
13-
1411
pulp_username: admin
1512
pulp_password: 9e4bfa04-9d9d-493d-9473-ba92e4361dae
13+
14+
# Whether or not to download overcloud host images from Ark
15+
stackhpc_download_overcloud_host_images: true
Lines changed: 9 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,15 @@
11
---
2+
###############################################################################
3+
# Storage node configuration.
4+
5+
# User with which to access the storage nodes via SSH during bootstrap, in
6+
# order to setup the Kayobe user account. Default is {{ os_distribution }}.
7+
storage_bootstrap_user: "{{ os_distribution if os_distribution == 'ubuntu' else 'cloud-user' }}"
8+
29
###############################################################################
310
# Storage node LVM configuration.
411

512
# List of storage volume groups. See mrlesmithjr.manage-lvm role for
613
# format.
7-
# storage_lvm_groups:
8-
9-
# Avoid undefined var which would result in 'LVM physical disks have not been configured' error
10-
storage_lvm_groups: []
14+
storage_lvm_groups:
15+
- "{{ stackhpc_lvm_group_rootvg }}"

etc/kayobe/environments/aufn-ceph/tenks.yml

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ node_types:
99
volumes:
1010
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
1111
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
12-
- capacity: 20GiB
12+
- capacity: 22GiB
1313
physical_networks:
1414
- provision-net
1515
- mgmt-net
@@ -21,9 +21,10 @@ node_types:
2121
volumes:
2222
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
2323
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
24-
- capacity: 15GiB
24+
- capacity: 22GiB
2525
# Ceph volume
26-
- capacity: 20GiB
26+
# Must be larger than main disk, since Ceph will take the largest volume it can find
27+
- capacity: 23GiB
2728
physical_networks:
2829
- provision-net
2930
- cloud-net
@@ -34,7 +35,7 @@ node_types:
3435
volumes:
3536
# There is a minimum disk space capacity requirement of 4GiB when using Ironic Python Agent:
3637
# https://github.com/openstack/ironic-python-agent/blob/master/ironic_python_agent/utils.py#L290
37-
- capacity: 15GiB
38+
- capacity: 22GiB
3839
physical_networks:
3940
- provision-net
4041
- cloud-net
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
---
2+
# Force system clock synchronisation
3+
ntp_force_sync: True

etc/kayobe/ipa.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -91,10 +91,10 @@ ipa_build_dib_elements_extra:
9191
ipa_kernel_upstream_url: "{{ (stackhpc_ipa_image_url + '/ipa.kernel') if stackhpc_ipa_image_overcloud_enabled | bool }}"
9292

9393
# URL of checksum of Ironic deployment kernel image.
94-
#ipa_kernel_checksum_url:
94+
ipa_kernel_checksum_url: "{{ ipa_kernel_upstream_url }}.sha256"
9595

9696
# Algorithm of checksum of Ironic deployment kernel image.
97-
#ipa_kernel_checksum_algorithm:
97+
ipa_kernel_checksum_algorithm: sha256
9898

9999
# Name of Ironic deployment ramdisk image to register in Glance.
100100
#ipa_images_ramdisk_name:
@@ -103,10 +103,10 @@ ipa_kernel_upstream_url: "{{ (stackhpc_ipa_image_url + '/ipa.kernel') if stackhp
103103
ipa_ramdisk_upstream_url: "{{ (stackhpc_ipa_image_url + '/ipa.initramfs') if stackhpc_ipa_image_overcloud_enabled | bool }}"
104104

105105
# URL of checksum of Ironic deployment ramdisk image.
106-
#ipa_ramdisk_checksum_url:
106+
ipa_ramdisk_checksum_url: "{{ ipa_ramdisk_upstream_url }}.sha256"
107107

108108
# Algorithm of checksum of Ironic deployment ramdisk image.
109-
#ipa_ramdisk_checksum_algorithm:
109+
ipa_ramdisk_checksum_algorithm: sha256
110110

111111
# IPA download parameters
112112
image_download_url_username: "{{ stackhpc_release_pulp_username }}"

etc/kayobe/kolla-image-tags.yml

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,9 @@ kolla_image_tags:
66
openstack:
77
rocky-9: 2025.1-rocky-9-20250616T133037
88
ubuntu-noble: 2025.1-ubuntu-noble-20250613T131221
9+
bifrost:
10+
rocky-9: 2025.1-rocky-9-20250626T152358
11+
ubuntu-noble: 2025.1-ubuntu-noble-20250626T152358
912
neutron_metadata_agent:
1013
rocky-9: 2025.1-rocky-9-20250626T074649
1114
ubuntu-noble: 2025.1-ubuntu-noble-20250626T074649

etc/kayobe/kolla.yml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -116,6 +116,10 @@ kolla_tag: "{{ openstack_release }}-{{ kolla_base_distro }}-{{ kolla_base_distro
116116
# branches are only required when we have custom backports. For a new release,
117117
# we may have caught up with upstream.
118118
kolla_sources:
119+
bifrost-base:
120+
type: git
121+
location: https://github.com/stackhpc/bifrost.git
122+
reference: stackhpc/{{ openstack_release }}
119123
bifrost-base-additions-stackhpc-inspector-plugins:
120124
# Install our custom inspector plugins.
121125
type: git

etc/kayobe/kolla/config/bifrost/bifrost.yml

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,10 @@
22
---
33
# Use prebuilt release train images from Ark.
44
{% if stackhpc_download_overcloud_host_images | bool %}
5-
use_cirros: true
6-
cirros_deploy_image_upstream_url: "{{ stackhpc_overcloud_host_image_url }}"
5+
download_custom_deploy_image: true
6+
custom_deploy_image_checksum_algorithm: "sha256"
7+
custom_deploy_image_upstream_url: "{{ stackhpc_overcloud_host_image_url }}"
8+
custom_deploy_image_checksum_url: "{{ stackhpc_overcloud_host_image_url }}.sha256"
79
{% endif %}
810

911
# Disable debug logging to avoid generating large log files
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
---
22
# Overcloud host image versioning tags
33
# These images must be in SMS, since they are used by our AIO CI runners
4-
#TODO: build epoxy images
5-
stackhpc_rocky_9_overcloud_host_image_version: "master-20250213T092714"
6-
stackhpc_ubuntu_noble_overcloud_host_image_version: "master-20250213T092714"
4+
# TODO: make public in both clouds
5+
stackhpc_rocky_9_overcloud_host_image_version: "2025.1-20250620T125648"
6+
stackhpc_ubuntu_noble_overcloud_host_image_version: "2025.1-20250620T125648"
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
---
22
# IPA image versioning tags
3-
# TODO: Build real images
4-
stackhpc_rocky_9_ipa_image_version: "2024.1-20241231T102920"
5-
stackhpc_ubuntu_noble_ipa_image_version: "2024.1-20241206T160829"
3+
stackhpc_rocky_9_ipa_image_version: "2025.1-20250618T103101"
4+
stackhpc_ubuntu_noble_ipa_image_version: "2025.1-20250618T103101"

etc/kayobe/pulp-repo-versions.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ stackhpc_pulp_repo_centos_stream_9_docker_version: 20250531T002004
55
stackhpc_pulp_repo_centos_stream_9_nfv_openvswitch_version: 20250528T022338
66
stackhpc_pulp_repo_centos_stream_9_opstools_version: 20231213T031318
77
stackhpc_pulp_repo_centos_stream_9_storage_ceph_squid_version: 20250412T024303
8-
stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20250604T001951
8+
stackhpc_pulp_repo_docker_ce_ubuntu_noble_version: 20250616T155742
99
stackhpc_pulp_repo_elrepo_9_version: 20250610T235426
1010
stackhpc_pulp_repo_epel_9_version: 20250615T000221
1111
stackhpc_pulp_repo_grafana_version: 20250615T005738
@@ -57,6 +57,6 @@ stackhpc_pulp_repo_rocky_9_6_crb_version: 20250614T015933
5757
stackhpc_pulp_repo_rocky_9_6_extras_version: 20250605T150141
5858
stackhpc_pulp_repo_rocky_9_6_highavailability_version: 20250605T150141
5959
stackhpc_pulp_repo_rocky_9_sig_security_common_version: 20250222T040303
60-
stackhpc_pulp_repo_ubuntu_cloud_archive_version: 20250609T053359
61-
stackhpc_pulp_repo_ubuntu_noble_security_version: 20250609T094526
62-
stackhpc_pulp_repo_ubuntu_noble_version: 20250609T094526
60+
stackhpc_pulp_repo_ubuntu_cloud_archive_version: 20250620T063939
61+
stackhpc_pulp_repo_ubuntu_noble_security_version: 20250620T113028
62+
stackhpc_pulp_repo_ubuntu_noble_version: 20250620T113028

requirements.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,4 @@
1-
kayobe@git+https://github.com/stackhpc/kayobe@stackhpc/18.0.0.0rc1.2
1+
kayobe@git+https://github.com/stackhpc/kayobe@stackhpc/18.0.0.11
22
ansible-modules-hashivault>=5.3.0
3+
pulp-glue<0.32,>=0.29.2
34
jmespath

0 commit comments

Comments
 (0)