From 0f30019c0fe04bde7f3839485d402333588d6bf9 Mon Sep 17 00:00:00 2001 From: Andrew Lukoshko Date: Sun, 7 Jun 2026 18:48:19 +0200 Subject: [PATCH 1/2] plans: set sbin-inclusive PATH for test execution tmt 1.75.0 stopped leaking the runner's process environment into test commands (teemtee/tmt#4900), so /usr/sbin and /sbin are no longer on PATH by default. The legacy t_functional scripts and several ng tests invoke privileged tools (useradd, ip, service, auditctl, setsebool, tcpdump, mdadm, cracklib-check, bpf-*, ...) by bare name and broke with 'command not found' on tmt >= 1.75.0, while passing on 1.74.0. Set an explicit sbin-inclusive PATH in the legacy and ng plan environments so the suite is independent of tmt's env-forwarding behavior. --- plans/legacy.fmf | 6 ++++++ plans/ng.fmf | 6 ++++++ 2 files changed, 12 insertions(+) diff --git a/plans/legacy.fmf b/plans/legacy.fmf index 4f6826a..5f8aada 100644 --- a/plans/legacy.fmf +++ b/plans/legacy.fmf @@ -1,6 +1,12 @@ summary: Imported t_functional tests environment: + # tmt >= 1.75.0 no longer leaks the runner's process environment into + # test commands (teemtee/tmt#4900), so /usr/sbin and /sbin are no longer + # on PATH by default. The legacy t_functional scripts call privileged + # tools (useradd, ip, service, auditctl, setsebool, tcpdump, ...) by bare + # name, so set an sbin-inclusive PATH explicitly. + PATH: "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" YUMDEBUG: 0 SKIP_QA_HARNESS: 1 vendor: "almalinux" diff --git a/plans/ng.fmf b/plans/ng.fmf index 1ab1a67..45d3c10 100644 --- a/plans/ng.fmf +++ b/plans/ng.fmf @@ -1,5 +1,11 @@ summary: New generation tests fully leveraging tmt +environment: + # tmt >= 1.75.0 no longer leaks the runner's process environment into + # test commands (teemtee/tmt#4900), so /usr/sbin and /sbin are no longer + # on PATH by default. Tests calling privileged tools (useradd, usermod, + # the bpf-* helpers, ...) by bare name need an sbin-inclusive PATH. + PATH: "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" discover: how: fmf exclude: /legacy From 28d6e9a089f306f8fb87b08fb8af1057e04905b7 Mon Sep 17 00:00:00 2001 From: Andrew Lukoshko Date: Sun, 7 Jun 2026 19:22:42 +0200 Subject: [PATCH 2/2] plans: set HOME for test execution Same tmt 1.75.0 regression (teemtee/tmt#4900): HOME is no longer forwarded to test commands. p_go's 'go build' then fails with 'build cache is required ... neither $XDG_CACHE_HOME nor $HOME are defined', leaving /var/tmp/go-test uncreated. Restore HOME=/root (the value tmt forwarded before 1.75.0) in both plan environments. --- plans/legacy.fmf | 9 +++++---- plans/ng.fmf | 7 ++++--- 2 files changed, 9 insertions(+), 7 deletions(-) diff --git a/plans/legacy.fmf b/plans/legacy.fmf index 5f8aada..6184d03 100644 --- a/plans/legacy.fmf +++ b/plans/legacy.fmf @@ -2,11 +2,12 @@ summary: Imported t_functional tests environment: # tmt >= 1.75.0 no longer leaks the runner's process environment into - # test commands (teemtee/tmt#4900), so /usr/sbin and /sbin are no longer - # on PATH by default. The legacy t_functional scripts call privileged - # tools (useradd, ip, service, auditctl, setsebool, tcpdump, ...) by bare - # name, so set an sbin-inclusive PATH explicitly. + # test commands (teemtee/tmt#4900). Restore the variables the suite + # relied on: an sbin-inclusive PATH (tests call useradd, ip, service, + # auditctl, setsebool, tcpdump, ... by bare name) and HOME (e.g. p_go's + # `go build` needs HOME/GOCACHE to locate its build cache). PATH: "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" + HOME: "/root" YUMDEBUG: 0 SKIP_QA_HARNESS: 1 vendor: "almalinux" diff --git a/plans/ng.fmf b/plans/ng.fmf index 45d3c10..a0afba4 100644 --- a/plans/ng.fmf +++ b/plans/ng.fmf @@ -2,10 +2,11 @@ summary: New generation tests fully leveraging tmt environment: # tmt >= 1.75.0 no longer leaks the runner's process environment into - # test commands (teemtee/tmt#4900), so /usr/sbin and /sbin are no longer - # on PATH by default. Tests calling privileged tools (useradd, usermod, - # the bpf-* helpers, ...) by bare name need an sbin-inclusive PATH. + # test commands (teemtee/tmt#4900). Restore the variables the suite + # relied on: an sbin-inclusive PATH (tests call useradd, usermod, the + # bpf-* helpers, ... by bare name) and HOME. PATH: "/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin" + HOME: "/root" discover: how: fmf exclude: /legacy