From 90a6574ef4fd32230546dc32c155fdef7bcc9a9a Mon Sep 17 00:00:00 2001 From: Kurt Lust Date: Tue, 26 May 2026 10:33:52 +0200 Subject: [PATCH] Bugfix for lumio-conf. --- LMOD/admin.list | 4 + easybuild/easyconfigs/l/lumio/README.md | 5 + easybuild/easyconfigs/l/lumio/lumio-2.1.0.eb | 102 ++++++++++++++++++ .../production-system-SYSTEM-25.03.yaml | 2 +- .../production-system-SYSTEM-25.09.yaml | 2 +- 5 files changed, 113 insertions(+), 2 deletions(-) create mode 100644 easybuild/easyconfigs/l/lumio/lumio-2.1.0.eb diff --git a/LMOD/admin.list b/LMOD/admin.list index cb1899023..731b93684 100644 --- a/LMOD/admin.list +++ b/LMOD/admin.list @@ -149,3 +149,7 @@ The rclone command in this module has a security issue. The module will be remov If you access this module through the lumio module, you should get the correct replacement as soon as you Lmod cache is refreshed which should happen automatically within 24 hours. If you load this module manually, please switch to version 1.1.0. + +lumio/2.0.0: +A bug has been identified in some of the configuration files generated by `lumio-conf`. +Please switch to the newest version of this module (2.1.0). diff --git a/easybuild/easyconfigs/l/lumio/README.md b/easybuild/easyconfigs/l/lumio/README.md index 2e2381fbb..c0cbac63a 100644 --- a/easybuild/easyconfigs/l/lumio/README.md +++ b/easybuild/easyconfigs/l/lumio/README.md @@ -30,4 +30,9 @@ that don't need frequent updates. - Otherwise it is just a MakeCp EasyConfig file. During the unpacking, we ensure that the executable is actually in the directory that also contains the sources. + + +### Version 2.1.0 + +- Bugfix release of 2.1.0. \ No newline at end of file diff --git a/easybuild/easyconfigs/l/lumio/lumio-2.1.0.eb b/easybuild/easyconfigs/l/lumio/lumio-2.1.0.eb new file mode 100644 index 000000000..5c665ae8a --- /dev/null +++ b/easybuild/easyconfigs/l/lumio/lumio-2.1.0.eb @@ -0,0 +1,102 @@ +#DOC This version is the first version that creates the same endpoints for rclone +#DOC as the tools in Open OnDemand or the web-based credential management service, i.e., +#DOC lumi-46YXXXXXX-private and lumi-46YXXXXXX-public. +easyblock = 'MakeCp' + +local_lumi_conf_version = '1.1.0' + +name = 'lumio' +version = '2.1.0' + +homepage = 'https://github.com/Lumi-supercomputer/LUMI-O-tools' + +whatis = [ + 'Description: Basic tooling for LUMI-O. Provides the lumio-conf authentication script + rclone,s3cmd and restic' +] + +description = """ +This module provides the command "lumio-conf" to authenticate to LUMI-O. + +It also provides the tools rclone, s3cmd and restic for moving data to/from LUMI-O +by loading a suitable lumio-ext-tools module. +""" + +usage = """ +Authenticate to LUMI-O + lumio-conf + +The script will prompt you for project information and authentication keys which can be +found from https://auth.lumidata.eu. If the keys expire (max duration for keys is 168h), +rerun the command. + +By default it will create configuration files for rclone and s3cmd. However, with the +--configure-only argument you can give a comma-separated list of tools to configure for. +Choices are rclone, s3cmd, aws and boto3. Or you can use "all" to generate configs for +all these tools. + +For rclone, two remotes are configured and stored in the regular rclone configuration +file: lumi-46YXXXXXX-public and lumi-46YXXXXXX-private. Data pushed to +lumi-46YXXXXXX-private gets a private ACL, data pushed through lumi-46YXXXXXX-public +a public one and that data is accessible through the URL +https://.lumidata.eu//. + +For s3cmd, the configuration file is stored in the non-default file +~/.s3cfg-lumi-46YXXXXXX which you can select with the "-c" command line flag of +s3cmd, and the default configuration file ~/.s3cfg is also overwritten with the same +file. + +To use restic, set the repository to s3:https://lumidata.eu/ and assign then access and secret +key to the environment variables AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY respectively + + export AWS_ACCESS_KEY_ID= + export AWS_SECRET_ACCESS_KEY= + restic -r s3:https://lumidata.eu/ init + +https://lumidata.eu/ is also the s3 API endpoint for e.g raw API calls (not recommended) +""" + +toolchain = SYSTEM + +dependencies = [ + ('lumio-ext-tools','1.1.0') +] + +sources = [ + { # Sources for the LICENSE file + 'download_filename': f'v{local_lumi_conf_version}.tar.gz', + 'filename': f'lumio-conf-{local_lumi_conf_version}-sources.tar.gz', + 'source_urls': ['https://github.com/Lumi-supercomputer/LUMI-O-tools/archive/refs/tags/'], + }, + { # https://github.com/Lumi-supercomputer/LUMI-O-tools/releases/download/v1.0.0/lumio-conf + 'download_filename': 'lumio-conf', + 'filename': f'lumio-conf-{local_lumi_conf_version}', + 'source_urls': [f'https://github.com/Lumi-supercomputer/LUMI-O-tools/releases/download/v{local_lumi_conf_version}/'], + 'extract_cmd': f'cp %s LUMI-O-tools-{local_lumi_conf_version}/lumio-conf', + } +] +checksums = [ + {f'lumio-conf-{local_lumi_conf_version}-sources.tar.gz': 'd6e76c6da40b2479f8425451bb115d8b5cbc8742d227e89fab274ecdd2fa5753'}, + {f'lumio-conf-{local_lumi_conf_version}': 'f9203a3f0e50589b7f5d63fac476e0133ed13cee4afbcf5570ddcd79d4ee3225'}, +] + +skipsteps = ['build'] + +files_to_copy = [ + (['lumio-conf'], 'bin'), + (['LICENSE'], 'share/licenses/lumio'), +] + +postinstallcmds = [ + 'chmod ugo+x %(installdir)s/bin/lumio-conf', +] + +sanity_check_paths= { + 'files': ['bin/lumio-conf'], + 'dirs': [] +} + +sanity_check_commands = [ + 'lumio-conf --help', +] + +moduleclass='tools' diff --git a/easybuild/easystacks/LUMI-25.03/production-system-SYSTEM-25.03.yaml b/easybuild/easystacks/LUMI-25.03/production-system-SYSTEM-25.03.yaml index 753826ef3..fe415294b 100644 --- a/easybuild/easystacks/LUMI-25.03/production-system-SYSTEM-25.03.yaml +++ b/easybuild/easystacks/LUMI-25.03/production-system-SYSTEM-25.03.yaml @@ -3,7 +3,7 @@ easyconfigs: - lumi-vnc-20230110.eb - lumio-ext-tools-1.1.0.eb - lumio-1.0.0.eb - - lumio-2.0.0.eb + - lumio-2.1.0.eb - Vampir-10.0.0.eb - Vampir-10.2.1.eb - ARMForge-22.0.1.eb diff --git a/easybuild/easystacks/LUMI-25.09/production-system-SYSTEM-25.09.yaml b/easybuild/easystacks/LUMI-25.09/production-system-SYSTEM-25.09.yaml index 753826ef3..fe415294b 100644 --- a/easybuild/easystacks/LUMI-25.09/production-system-SYSTEM-25.09.yaml +++ b/easybuild/easystacks/LUMI-25.09/production-system-SYSTEM-25.09.yaml @@ -3,7 +3,7 @@ easyconfigs: - lumi-vnc-20230110.eb - lumio-ext-tools-1.1.0.eb - lumio-1.0.0.eb - - lumio-2.0.0.eb + - lumio-2.1.0.eb - Vampir-10.0.0.eb - Vampir-10.2.1.eb - ARMForge-22.0.1.eb