File tree Expand file tree Collapse file tree 10 files changed +89
-22
lines changed Expand file tree Collapse file tree 10 files changed +89
-22
lines changed Original file line number Diff line number Diff line change @@ -41,6 +41,24 @@ cleanup() {
41
41
}
42
42
trap cleanup EXIT
43
43
44
+ # Install Ansible from Trixie (Debian Testing) to allow us to talk to a host
45
+ # running Python 3.12 like Ubuntu 24.04
46
+ #
47
+ # https://woju.eu/blog/2025/03/ansible-bookworm/
48
+ cat << EOF > /etc/apt/sources.list.d/trixie.list
49
+ deb https://deb.debian.org/debian trixie main
50
+ EOF
51
+
52
+ cat << EOF > /etc/apt/preferences.d/ansible.pref
53
+ Package: *
54
+ Pin: release n=trixie
55
+ Pin-Priority: -10
56
+
57
+ Package: ansible* python3-netaddr
58
+ Pin: release n=trixie
59
+ Pin-Priority: 990
60
+ EOF
61
+
44
62
apt-get update
45
63
apt-get install -y python3-requests ansible
46
64
Original file line number Diff line number Diff line change @@ -41,6 +41,24 @@ cleanup() {
41
41
}
42
42
trap cleanup EXIT
43
43
44
+ # Install Ansible from Trixie (Debian Testing) to allow us to talk to a host
45
+ # running Python 3.12 like Ubuntu 24.04
46
+ #
47
+ # https://woju.eu/blog/2025/03/ansible-bookworm/
48
+ cat << EOF > /etc/apt/sources.list.d/trixie.list
49
+ deb https://deb.debian.org/debian trixie main
50
+ EOF
51
+
52
+ cat << EOF > /etc/apt/preferences.d/ansible.pref
53
+ Package: *
54
+ Pin: release n=trixie
55
+ Pin-Priority: -10
56
+
57
+ Package: ansible* python3-netaddr
58
+ Pin: release n=trixie
59
+ Pin-Priority: 990
60
+ EOF
61
+
44
62
apt-get update
45
63
apt-get install -y python3-requests ansible
46
64
Original file line number Diff line number Diff line change @@ -42,6 +42,24 @@ cleanup() {
42
42
}
43
43
trap cleanup EXIT
44
44
45
+ # Install Ansible from Trixie (Debian Testing) to allow us to talk to a host
46
+ # running Python 3.12 like Ubuntu 24.04
47
+ #
48
+ # https://woju.eu/blog/2025/03/ansible-bookworm/
49
+ cat << EOF > /etc/apt/sources.list.d/trixie.list
50
+ deb https://deb.debian.org/debian trixie main
51
+ EOF
52
+
53
+ cat << EOF > /etc/apt/preferences.d/ansible.pref
54
+ Package: *
55
+ Pin: release n=trixie
56
+ Pin-Priority: -10
57
+
58
+ Package: ansible* python3-netaddr
59
+ Pin: release n=trixie
60
+ Pin-Priority: 990
61
+ EOF
62
+
45
63
apt-get update
46
64
apt-get install -y python3-requests ansible
47
65
@@ -133,4 +151,4 @@ scp -i ~/.ssh/google_compute_engine \
133
151
# If Boskos is being used then release the resource back to Boskos.
134
152
[ -z " ${BOSKOS_HOST:- } " ] || python3 tests/scripts/boskos.py --release >> " $ARTIFACTS /logs/boskos.log" 2>&1
135
153
136
- exit ${exit_code}
154
+ exit ${exit_code}
Original file line number Diff line number Diff line change 128
128
msg : *failmsg
129
129
130
130
- name : Run functional tests for openstack-cloud-controller-manager
131
- when : run_e2e
131
+ when : run_e2e | bool
132
132
register : run_tests
133
133
shell :
134
134
executable : /bin/bash
145
145
146
146
- name : Print logs for debugging
147
147
when :
148
- - run_e2e
148
+ - run_e2e | bool
149
149
- run_tests.failed
150
150
block :
151
151
- name : Show openstack-cloud-controller-manager pod logs
Original file line number Diff line number Diff line change 187
187
-storage.testdriver=tests/e2e/csi/cinder/test-driver.yaml \
188
188
--ginkgo.focus='External.Storage' \
189
189
--ginkgo.skip='\[Disruptive\]|\[Testpattern:\s+Dynamic\s+PV\s+\(default\s+fs\)\]\s+provisioning\s+should\s+mount\s+multiple\s+PV\s+pointing\s+to\s+the\s+same\s+storage\s+on\s+the\s+same\s+node|\[Testpattern:\s+Dynamic\s+PV\s+\(default\s+fs\)\]\s+provisioning\s+should\s+provision\s+storage\s+with\s+any\s+volume\s+data\s+source\s+\[Serial\]|should\s+support\s+expansion\s+of\s+pvcs\s+created\s+for\s+ephemeral\s+pvcs' \
190
+ --ginkgo.v \
190
191
--ginkgo.noColor \
191
192
--ginkgo.progress \
192
- --ginkgo.v \
193
- --ginkgo.timeout=24h \
193
+ --ginkgo.timeout=1h30m \
194
194
-test.timeout=0 \
195
195
-report-dir="/var/log/csi-pod" | tee "/var/log/csi-pod/cinder-csi-e2e.log"
196
196
register : functional_test_result
197
197
ignore_errors : true
198
- async : 5400 # wait 1h30m then fail and fetch the logs
198
+ async : 5700 # wait 1h35m (i.e. 5 mins longer than the ginkgo timeout) then fail and fetch the logs
199
199
poll : 15
200
200
201
201
- name : Collect pod logs for debug purpose
Original file line number Diff line number Diff line change 227
227
set +x; source {{ devstack_workdir }}/openrc demo demo > /dev/null; set -x
228
228
229
229
cd {{ ansible_user_dir }}/src/k8s.io/cloud-provider-openstack
230
-
231
- # GATEWAY_IP is the default value in devstack
232
230
mkdir -p /var/log/csi-pod
231
+ # GATEWAY_IP is the default value in devstack
233
232
GATEWAY_IP=172.24.5.1 \
234
233
OS_RC={{ devstack_workdir }}/openrc \
235
234
go test -v ./cmd/tests/manila-csi-e2e-suite/manila_csi_e2e_suite_test.go \
235
+ --ginkgo.focus="\[manila-csi-e2e\]" \
236
+ --ginkgo.skip="\[Disruptive\]|\[sig-storage\]\s+\[manila-csi-e2e\]\s+CSI\s+Volumes\s+\[Driver:\s+nfs.manila.csi.openstack.org\]\s+\[Testpattern:\s+Dynamic\s+PV\s+\(default\s+fs\)\]\s+provisioning\s+should\s+provision\s+storage\s+with\s+any\s+volume\s+data\s+source\s+\[Serial\]|should\s+provision\s+storage\s+with\s+snapshot\s+data\s+source|restoring\s+snapshot\s+to\s+larger\s+size" \
236
237
--ginkgo.v \
237
238
--ginkgo.noColor \
238
239
--ginkgo.progress \
239
- --ginkgo.skip="\[Disruptive\]|\[sig-storage\]\s+\[manila-csi-e2e\]\s+CSI\s+Volumes\s+\[Driver:\s+nfs.manila.csi.openstack.org\]\s+\[Testpattern:\s+Dynamic\s+PV\s+\(default\s+fs\)\]\s+provisioning\s+should\s+provision\s+storage\s+with\s+any\s+volume\s+data\s+source\s+\[Serial\]|should\s+provision\s+storage\s+with\s+snapshot\s+data\s+source|restoring\s+snapshot\s+to\s+larger\s+size" \
240
- --ginkgo.focus="\[manila-csi-e2e\]" \
241
- -report-dir /var/log/csi-pod \
242
- -timeout=0 | tee "/var/log/csi-pod/manila-csi-e2e.log"
240
+ --ginkgo.timeout=1h30m \
241
+ -timeout=0 \
242
+ -report-dir /var/log/csi-pod | tee "/var/log/csi-pod/manila-csi-e2e.log"
243
243
register : functional_test_result
244
244
ignore_errors : true
245
+ async : 5700 # wait 1h35m (i.e. 5 mins longer than the ginkgo timeout) then fail and fetch the logs
246
+ poll : 15
245
247
246
248
- name : Collect pod logs for debug purpose
247
249
shell :
Original file line number Diff line number Diff line change 1
1
---
2
2
user : " stack"
3
3
workdir : " /home/{{ user }}/devstack"
4
- branch : " 2023.2-eol "
4
+ branch : " stable/2025.1 "
5
5
enable_services :
6
6
- nova
7
7
- glance
@@ -10,6 +10,6 @@ enable_services:
10
10
- octavia
11
11
- ovn-octavia
12
12
- barbican
13
- octavia_amphora_url : " https://tarballs.opendev.org/openstack/octavia/test-images/test-only-amphora-x64-haproxy-ubuntu-jammy .qcow2"
13
+ octavia_amphora_url : " https://tarballs.opendev.org/openstack/octavia/test-images/test-only-amphora-x64-haproxy-ubuntu-noble .qcow2"
14
14
octavia_amphora_dir : /opt/octavia-amphora
15
15
octavia_amphora_filename : amphora-x64-haproxy.qcow2
Original file line number Diff line number Diff line change @@ -3,7 +3,6 @@ RECLONE=False
3
3
HOST_IP={{ local_ip_address }}
4
4
DEST=/opt/stack
5
5
DATA_DIR=${DEST}/data
6
- USE_PYTHON3=True
7
6
LOGFILE=$DEST/logs/stack.sh.log
8
7
VERBOSE=True
9
8
LOG_COLOR=False
@@ -49,6 +48,7 @@ enable_service n-cond
49
48
enable_service n-sch
50
49
enable_service n-api-meta
51
50
51
+ # Placement
52
52
enable_service placement-api
53
53
enable_service placement-client
54
54
{% endif %}
@@ -148,6 +148,16 @@ if [ -f /opt/stack/data/venv/bin/activate ]; then
148
148
deactivate
149
149
fi
150
150
151
+ {% if "nova" in enable_services %}
152
+ [[post-config|$NOVA_CONF]]
153
+ [libvirt]
154
+ # Workaround for nova bug #2119114. Until that bug is resolved, Nova will
155
+ # always timeout when detaching volumes (which affects deletion of PVCs)
156
+ #
157
+ # https://bugs.launchpad.net/nova/+bug/2119114
158
+ device_detach_timeout = 1
159
+ {% endif %}
160
+
151
161
{% if "glance" in enable_services %}
152
162
[[post-config|$GLANCE_API_CONF]]
153
163
[glance_store]
Original file line number Diff line number Diff line change 25
25
- role : install-k3s
26
26
worker_node_count : 0
27
27
- role : install-cpo-occm
28
- run_e2e : " {{ run_e2e }}"
28
+ run_e2e : " {{ run_e2e | bool }}"
29
29
octavia_provider : " {{ octavia_provider }}"
Original file line number Diff line number Diff line change @@ -91,17 +91,18 @@ main() {
91
91
92
92
case " ${FLAVOR} " in
93
93
" default" )
94
- if ! gcloud compute disks describe devstack-${FLAVOR} --zone " ${GCP_ZONE} " > /dev/null 2>&1 ;
94
+ local disk_name=" devstack-${FLAVOR} -ubuntu2404"
95
+ if ! gcloud compute disks describe " ${disk_name} " --zone " ${GCP_ZONE} " > /dev/null 2>&1 ;
95
96
then
96
- gcloud compute disks create devstack- ${FLAVOR} \
97
+ gcloud compute disks create " ${disk_name} " \
97
98
--image-project ubuntu-os-cloud --image-family ubuntu-2404-lts-amd64 \
98
99
--zone " ${GCP_ZONE} "
99
100
fi
100
101
101
- if ! gcloud compute images describe devstack- ${FLAVOR} > /dev/null 2>&1 ;
102
+ if ! gcloud compute images describe " ${disk_name} " > /dev/null 2>&1 ;
102
103
then
103
- gcloud compute images create devstack- ${FLAVOR} \
104
- --source-disk devstack- ${FLAVOR} --source-disk-zone " ${GCP_ZONE} " \
104
+ gcloud compute images create " ${disk_name} " \
105
+ --source-disk " ${disk_name} " --source-disk-zone " ${GCP_ZONE} " \
105
106
--licenses " https://www.googleapis.com/compute/v1/projects/vm-options/global/licenses/enable-vmx"
106
107
fi
107
108
;;
@@ -115,7 +116,7 @@ main() {
115
116
then
116
117
gcloud compute instances create devstack \
117
118
--zone " ${GCP_ZONE} " \
118
- --image devstack- ${FLAVOR} \
119
+ --image " ${disk_name} " \
119
120
--boot-disk-size 30G \
120
121
--boot-disk-type pd-ssd \
121
122
--can-ip-forward \
You can’t perform that action at this time.
0 commit comments