Skip to content

call _test_step instead of test_step in Bundle easyblock - #4112

Open
Thyre wants to merge 2 commits into
easybuilders:developfrom
Thyre:20260411223732_new_pr_bundle
Open

call _test_step instead of test_step in Bundle easyblock#4112
Thyre wants to merge 2 commits into
easybuilders:developfrom
Thyre:20260411223732_new_pr_bundle

Conversation

@Thyre

@Thyre Thyre commented Apr 11, 2026

Copy link
Copy Markdown
Collaborator

(created using eb --new-pr)

Partially addresses #4044.
The Bundle easyblock can now correctly handle --ignore-test-failure, but renaming the function on the framework level is still the better option in the long run...

@Thyre Thyre added the bug fix label Apr 11, 2026
@Thyre

Thyre commented Apr 11, 2026

Copy link
Copy Markdown
Collaborator Author

For testing, I've added this diff to X11:

diff --git a/easybuild/easyconfigs/x/X11/X11-20250608-GCCcore-14.3.0.eb b/easybuild/easyconfigs/x/X11/X11-20250608-GCCcore-14.3.0.eb
index 997dc16ba5..b45fc0f546 100644
--- a/easybuild/easyconfigs/x/X11/X11-20250608-GCCcore-14.3.0.eb
+++ b/easybuild/easyconfigs/x/X11/X11-20250608-GCCcore-14.3.0.eb
@@ -51,6 +51,7 @@ default_component_specs = {
 components = [
     ('libpthread-stubs', '0.5', {  # 2023-07-18
         'checksums': ['593196cc746173d1e25cb54a93a87fd749952df68699aab7e02c085530e87747'],
+        'runtest': 'Nonsense',
     }),
     ('xorgproto', '2024.1', {  # 2024-03-26
         'checksums': ['4f6b9b4faf91e5df8265b71843a91fc73dc895be6210c84117a996545df296ce'],

without this EasyBlock: https://gist.github.com/Thyre/0432c5e1dc3d89d2541a048394dcc9ee


It's worth noting that this naming change shows up in the logs:

== 2026-04-11 22:29:00,591 build_log.py:330 INFO    testing component libpthread-stubs...
== 2026-04-11 22:29:00,592 easyblock.py:4761 INFO Starting _test step
== 2026-04-11 22:29:00,592 easyconfig.py:1826 INFO Generating template values...
== 2026-04-11 22:29:00,592 easyconfig.py:1845 INFO Template values: amdgcn_capabilities='gfx1201,gfx1036', amdgcn_cc_semicolon_sep='gfx1201;gfx1036', amdgcn_cc_space_sep='gfx1201 gfx1036', arch='x86_64', bitbucket_account='libpthread-stubs', builddir='/da
ta/EasyBuild-develop/build/X11/20250608/GCCcore-14.3.0', github_account='libpthread-stubs', installdir='/tmp/software/X11/20250608-GCCcore-14.3.0', module_name='X11/20250608', name='libpthread-stubs', nameletter='l', nameletterlower='l', namelower='libpth
read-stubs', parallel='8', rpath_enabled='true', software_commit='', start_dir='/data/EasyBuild-develop/build/X11/20250608/GCCcore-14.3.0/libpthread-stubs-0.5', sysroot='', toolchain_name='GCCcore', toolchain_version='14.3.0', version='0.5', version_major
='0', version_major_minor='0.5', version_minor='5', versionprefix='', versionsuffix=''
== 2026-04-11 22:29:00,592 easyblock.py:4772 INFO Running method test_step part of step _test
== 2026-04-11 22:29:00,604 run.py:478 INFO run_shell_cmd: Script to start debug shell for 'make ...' shell command

But I think this fix is worth having this slight change in the logs. We could still improve this by doing some string manipulation to replace a leading _ in the step_name in the case of _test_step. Currently, we just pass the step_name again.

comp.run_step(step_name, [lambda x: getattr(x, '%s_step' % step_name)])

@Thyre

Thyre commented Apr 11, 2026

Copy link
Copy Markdown
Collaborator Author

Test report by @Thyre

Overview of tested easyconfigs (in order)

  • SUCCESS X11-20250608-GCCcore-14.3.0.eb

Build succeeded (with --ignore-test-failure) for 1 out of 1 (total: 8 mins 48 secs) (1 easyconfigs in total)
Linux - Linux Arch Linux UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor (zen4), 1 x AMD Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] (device id: 0x7550, gfx: gfx1201, driver: Linuxversion6.19.11-arch1-1(linux@archlinux)(gcc(GCC)15.2.120260209,GNUld(GNUBinutils)2.46)#1SMPPREEMPT_DYNAMICThu,02Apr202623:33:01+0000), 1 x AMD Raphael (device id: 0x164e, gfx: gfx1036, driver: Linuxversion6.19.11-arch1-1(linux@archlinux)(gcc(GCC)15.2.120260209,GNUld(GNUBinutils)2.46)#1SMPPREEMPT_DYNAMICThu,02Apr202623:33:01+0000), Python 3.14.3
See https://gist.github.com/Thyre/4a60386e3a972d4dab3efea98559c770 for a full test report.

@Thyre

Thyre commented Apr 11, 2026

Copy link
Copy Markdown
Collaborator Author

Test report by @Thyre

Overview of tested easyconfigs (in order)

  • SUCCESS X11-20250608-GCCcore-14.3.0.eb

Build succeeded (with --ignore-test-failure) for 1 out of 1 (total: 8 mins 49 secs) (1 easyconfigs in total)
Linux - Linux Arch Linux UNKNOWN, x86_64, AMD Ryzen 7 7800X3D 8-Core Processor (zen4), 1 x AMD Navi 48 [Radeon RX 9070/9070 XT/9070 GRE] (device id: 0x7550, gfx: gfx1201, driver: Linuxversion6.19.11-arch1-1(linux@archlinux)(gcc(GCC)15.2.120260209,GNUld(GNUBinutils)2.46)#1SMPPREEMPT_DYNAMICThu,02Apr202623:33:01+0000), 1 x AMD Raphael (device id: 0x164e, gfx: gfx1036, driver: Linuxversion6.19.11-arch1-1(linux@archlinux)(gcc(GCC)15.2.120260209,GNUld(GNUBinutils)2.46)#1SMPPREEMPT_DYNAMICThu,02Apr202623:33:01+0000), Python 3.14.3
See https://gist.github.com/Thyre/b00d052c40aaa6a4d879061f409cef95 for a full test report.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants