Skip to content

Commit 51c979b

Browse files
openstack_test: serial-coda topology AZ and enable_topology=false
Pull the topology AZ check and the enable_topology=false mutator out of the randomized batch into the Option B serial coda. Order AZ check first so it still sees enable_topology=true, then the mutator. Avoids the race seen on warm serval71 TP (Expected false to equal true at topology.go:89). Related: #45 Co-authored-by: Cursor <cursoragent@cursor.com>
1 parent 456acdd commit 51c979b

3 files changed

Lines changed: 12 additions & 7 deletions

File tree

‎collection/stages/roles/openstack_test/defaults/main.yml‎

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -18,9 +18,11 @@ openstack_test_ote_run_serial: false
1818
# in fixed order. Starts with the bogus Machine leak cluster (bz_2073398
1919
# cleanup, then Machine trio), then known suite-load flakes that pass alone
2020
# but time out in the randomized batch (egressIP FIP failover AAP wait,
21-
# prometheus PVC resize pod-ready wait). Keeps the bulk suite in batch to
22-
# limit wall time. No-ops when the matchers are absent (e.g. lb_tests
23-
# allowlists). Requires OTE filtered run path.
21+
# prometheus PVC resize pod-ready wait), then topology pair ordered so the
22+
# AZ check runs while enable_topology is still true before the mutator
23+
# ([Serial] set enable_topology=false) can race it in batch. Keeps the bulk
24+
# suite in batch to limit wall time. No-ops when the matchers are absent
25+
# (e.g. lb_tests allowlists). Requires OTE filtered run path.
2426
openstack_test_machines_leak_cluster_serial: true
2527
# Ordered substrings matched against list_of_tests_to_run.txt (one phrase
2628
# each; written to a matchers file so shell never splits them). For the
@@ -32,3 +34,5 @@ openstack_test_machines_leak_cluster_matchers:
3234
- "Machine ProviderSpec is correctly applied to OpenStack instances"
3335
- "egressIP attached to a floating IP should be kept after EgressIP node failover"
3436
- "should follow PVC specs during resizing for prometheus"
37+
- "enables topology aware scheduling when compute and volume AZs are identical"
38+
- "should allow the manual setting of enable_topology to false"

‎collection/stages/roles/openstack_test/files/split_machines_leak_cluster.py‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
Reads the filtered list_of_tests_to_run.txt and an ordered matchers file
55
(one substring per line), writes:
66
- leak_cluster_serial.txt: ordered matches for Option B serial run
7-
(Machine leak cluster, plus optional suite-load flakes)
7+
(Machine leak cluster, suite-load flakes, topology pair)
88
- list_of_tests_to_run.txt: remaining tests for the batch suite
99
1010
Matchers are plain substrings (one full phrase per line). The MachineSet

‎collection/stages/roles/openstack_test/tasks/run_machines_leak_cluster_serial.yml‎

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
---
22
# Option B: serially run the ordered coda list after the main batch suite
3-
# (Machine leak cluster, then egressIP FIP failover / prometheus resize).
3+
# (Machine leak cluster, egressIP / prometheus, then topology AZ check
4+
# before enable_topology=false mutator).
45
# Expects openstack_test_leak_cluster_path to already list the ordered tests.
56
- name: Stat machines leak-cluster serial list
67
ansible.builtin.stat:
@@ -96,5 +97,5 @@
9697
tasks_from: mark_test_stage_unstable.yml
9798
vars:
9899
unstable_msg: >-
99-
openstack_test serial coda failed (Machine leak cluster and/or
100-
egressIP FIP failover / prometheus PVC resize).
100+
openstack_test serial coda failed (Machine leak cluster, egressIP /
101+
prometheus resize, and/or topology enable_topology pair).

0 commit comments

Comments
 (0)