Skip to content

be more careful when getting value of particular easyconfig parameter in PythonBundle and PythonPackage easyblock, to avoid trouble with unresolved template values#3537

Merged
lexming merged 5 commits intoeasybuilders:5.0.xfrom
boegel:unresolved_templates_fixes
Dec 19, 2024
Merged

be more careful when getting value of particular easyconfig parameter in PythonBundle and PythonPackage easyblock, to avoid trouble with unresolved template values#3537
lexming merged 5 commits intoeasybuilders:5.0.xfrom
boegel:unresolved_templates_fixes

Conversation

@boegel
Copy link
Member

@boegel boegel commented Dec 19, 2024

fixes the following failures in easyconfigs test suite:

  • for PySide2-5.14.2.3-GCCcore-10.2.0.eb:
Failed to resolve all templates in "install --parallel=%(parallel)s" using template dictionary: ...
  • for jax-0.4.25-gfbf-2023a.eb and jax-0.4.25-gfbf-2023a-CUDA-12.1.1.eb:
Failed to resolve all templates in "mkdir -p %(builddir)s/archives && cp %%s %(builddir)s/archives" using template dictionary: ...

edit: requires:

…asyblock, to avoid trouble with unresolved template values like '%(parallel)s'
… in constructor of Bundle easyblock, to avoid trouble with unresolved template values like '%(builddir)s'
@boegel boegel added bug fix EasyBuild-5.0 EasyBuild 5.0 labels Dec 19, 2024
lexming
lexming previously approved these changes Dec 19, 2024
Copy link
Contributor

@lexming lexming left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@boegel
Copy link
Member Author

boegel commented Dec 19, 2024

Hmm, still seeing trouble with jax-0.4.25-gfbf-2023a.eb, looking into it...

…Bundle constructor, to avoid trouble with unresolved templates
…arameter in PythonPackage easyblock, to avoid error due to '%(python)s' template not being resolvable
@boegel boegel added this to the 5.0 milestone Dec 19, 2024
Copy link
Contributor

@lexming lexming left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@lexming lexming merged commit 47fe3fa into easybuilders:5.0.x Dec 19, 2024
18 checks passed
@boegel boegel deleted the unresolved_templates_fixes branch December 19, 2024 12:48
@boegel
Copy link
Member Author

boegel commented Dec 19, 2024

Test report by @boegel

Overview of tested easyconfigs (in order)

  • **FAIL (unhandled exception: 'parallel')Traceback (most recent call last):
    File "/user/gent/400/vsc40023/easybuild/eb5/easybuild-framework/easybuild/main.py", line 136, in build_and_install_software
    (ec_res['success'], app_log, err_msg, err_code) = build_and_install_one(ec, init_env)
    File "/user/gent/400/vsc40023/easybuild/eb5/easybuild-framework/easybuild/framework/easyblock.py", line 4461, in build_and_install_one
    result = app.run_all_steps(run_test_cases=run_test_cases)
    File "/user/gent/400/vsc40023/easybuild/eb5/easybuild-framework/easybuild/framework/easyblock.py", line 4329, in run_all_steps
    self.run_step(step_name, step_methods)
    File "/user/gent/400/vsc40023/easybuild/eb5/easybuild-framework/easybuild/framework/easyblock.py", line 4172, in run_step
    step_method(self)()
    File "/tmp/eb-z_4cu8a4/included-easyblocks-7zcba7r1/easybuild/easyblocks/generic/pythonpackage.py", line 835, in build_step
    build_cmd = build_cmd % {'python': self.python_cmd}
    KeyError: 'parallel'
    ** PySide2-5.14.2.3-GCCcore-10.2.0.eb
  • SUCCESS jax-0.4.25-gfbf-2023a.eb

Build succeeded for 1 out of 2 (2 easyconfigs in total)
node3509.doduo.os - Linux RHEL 8.8, x86_64, AMD EPYC 7552 48-Core Processor, Python 3.6.8
See https://gist.github.com/boegel/09fa6bf1772030cc45961deba66881d6 for a full test report.

@boegel
Copy link
Member Author

boegel commented Dec 19, 2024

@Flamefire
Copy link
Contributor

I would prefer if we'd use .get(...resolve=False) instead of getref(...) as the former is more clear in the intention. The latter was intended for getting the original list to be able to modify it.

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.

3 participants