Skip to content

Can I put module_path and netcdf deep in a case? #100

Open
@mathomp4

Description

@mathomp4

@theurich or other gurus,

I recently tried to add support for netcdf in my discover tests via an ugly modulefile which exposes a Baselibs build of netcdf. As in:

      13.2.0:
        compiler: comp/gcc/13.2.0
        netcdf: other/esmf-netcdf/gfortran_13.2.0-openmpi_4.1.6
        extra_module: cmake/3.30.3
        mpi:
          openmpi:
            module: mpi/openmpi/4.1.6/gcc-13.2.0

The thing is, I'd also like an mpiuni case but I can't expose a netcdf built with MPI to an mpiuni case. So, at the moment I've done the following where my mpiuni is now using a different compiler:

      13.2.0:
        compiler: comp/gcc/13.2.0
        netcdf: other/esmf-netcdf/gfortran_13.2.0-openmpi_4.1.6
        extra_module: cmake/3.30.3
        mpi:
          openmpi:
            module: mpi/openmpi/4.1.6/gcc-13.2.0
      14.2.0:
        compiler: comp/gcc/14.2.0
        netcdf: None
        extra_module: cmake/3.30.3
        mpi:
          mpiuni:
            module: none

But I'd like to move those ugly modulefiles to a less public directory just because I don't want people seeing them. But that means I need to add a new module_path and from my read of the python, module_path (at the top for a machine) does not expect a list.

So I wonder, could this work:

      13.2.0:
        compiler: comp/gcc/13.2.0
        extra_module: cmake/3.30.3
        mpi:
          openmpi:
            module_path: /path/to/ugly/modulefiles
            netcdf: other/esmf-netcdf/gfortran_13.2.0-openmpi_4.1.6
            module: mpi/openmpi/4.1.6/gcc-13.2.0
        mpi:
          mpiuni:
            module: none
            netcdf: none

That is, I don't know how deep you can put some of these keys.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions