diff options
| author | Yuriy Andamasov <yuriy@vyos.io> | 2026-07-03 17:16:44 +0300 |
|---|---|---|
| committer | Yuriy Andamasov <yuriy@vyos.io> | 2026-07-03 17:38:15 +0300 |
| commit | ad3518c119641d830a6ed96c9f35de0a078e70e6 (patch) | |
| tree | 02de39607875e10eb37b66622cbe64c762a75ed8 /interface-definitions/include/haproxy | |
| parent | 279f785efb15667c266da9ea73d016b5d5f0f403 (diff) | |
| download | vyos-1x-ad3518c119641d830a6ed96c9f35de0a078e70e6.tar.gz vyos-1x-ad3518c119641d830a6ed96c9f35de0a078e70e6.zip | |
smoketest: T9048: harden DHCP client process checks against CI timing races
Interface smoketests fail intermittently in CI on DHCP-related
assertions (test_interfaces_cli job pass rate 42-55% over the last 30
workflow runs). Three timing hazards in the interface test base class:
* process_named_running() was polled with a 10 second window at all
dhclient/dhcp6c call sites - too short on a loaded runner. Raise to a
shared PROCESS_WAIT_TIMEOUT of 60 seconds; the poll returns as soon
as the process appears, so this only delays the failure path.
* /proc/<pid>/cmdline was read unguarded after PID discovery. dhclient
re-executes itself while daemonizing, so the discovered PID can be
gone by the time /proc is read - read_file() then raises and the test
errors out instead of failing cleanly. New get_process_cmdline()
helper re-resolves the PID once when the read fails.
* tearDown() asserted daemon absence immediately after the config was
removed, reporting daemons still in their shutdown path as leaks.
Use the existing wait_for_result() shim helper with the same 60s
bound to grant a grace period before declaring a leak; the poll
returns on first observation of a clean state, so passing runs pay
no extra wall clock.
🤖 Generated by [robots](https://vyos.io)
Diffstat (limited to 'interface-definitions/include/haproxy')
0 files changed, 0 insertions, 0 deletions
