test/py: Provide the correct U_BOOT_SOURCE_DIR to getrole
The u-boot-test-getrole script runs before the normal environment
variables have been set up. This is unavoidable since the script is
providing necessary information to test.py
This means that U_BOOT_SOURCE_DIR is not set in the environment.
As a result, Labgrid uses its default source path, configured in its
environment variable. While this may happen to work, it is not correct.
Also, it causes problems when running from Gitlab, where the runner may
not have access to that source path.
Provide the required source path in U_BOOT_SOURCE_DIR so that Labgrid
does the right thing.
Signed-off-by: Simon Glass <sjg@chromium.org>
Fixes: bf89a8f1fc2 ("test: Introduce the concept of a role")
[1] https://patchwork.ozlabs.org/project/uboot/patch/20241211131858.520639-1-sjg@chromium.org/
diff --git a/test/py/conftest.py b/test/py/conftest.py
index 6b7ed05..44b2276 100644
--- a/test/py/conftest.py
+++ b/test/py/conftest.py
@@ -161,6 +161,10 @@
env['U_BOOT_BUILD_DIR'] = build_dir
if build_dir_extra:
env['U_BOOT_BUILD_DIR_EXTRA'] = build_dir_extra
+
+ # Make sure the script sees that it is being run from pytest
+ env['U_BOOT_SOURCE_DIR'] = source_dir
+
proc = subprocess.run(cmd, capture_output=True, encoding='utf-8',
env=env)
if proc.returncode: