Collection of scripts, etc, to make HLRS software stack work.
Find a file
2024-11-13 11:32:20 +01:00
hlrs-plumbing Release environment script uses dependencies in local filesystem 2024-11-13 11:32:20 +01:00
LICENSE Initial commit 2024-05-31 12:02:49 +00:00
README.md Update README.md on directory layout 2024-05-31 14:17:41 +02:00

software-stack-plumbing

Collection of scripts, etc, to make HLRS software stack work.

Notes on software stack at HLRS

Environment variables:

  • HLRS_OPT_PREFIX: start of hpcoft managed subdirectory
    • Set by HPCN
    • Non-public
    • Example: HLRS_OPT_PREFIX=/opt/hlrs
  • HLRS_SOFTWARE_STACK_PREFIX: start of software stack as described in this document
    • Set by this hpcoft
    • Non-public
    • Example: HLRS_SOFTWARE_STACK_PREFIX=$HLRS_OPT_PREFIX/release
  • HLRS_SOFTWARE_STACK_RELEASE_VERSION: label of a currently active release
    • Set by hpcoft
    • Public
    • Example: HLRS_SOFTWARE_STACK_RELEASE_VERSION=24.1
  • HLRS_SOFTWARE_STACK_RELEASE_ROOT : start of subdirectory of currently active release
    • Set by hpcoft
    • Public
    • Should contain all software, modules, data, etc., to use a release
    • Defined by: HLRS_SOFTWARE_STACK_RELEASE_ROOT=${HLRS_SOFTWARE_STACK_PREFIX}/${HLRS_SOFTWARE_STACK_RELEASE_VERSION}
  • HLRS_SOFTWARE_STACK_HLRS_SPACK_ROOT : start of subdirectory for all-things-spack of currently active release
    • Set by hpcoft
    • Non-public
    • Install spack in SPACK_ROOT=${HLRS_SOFTWARE_STACK_HLRS_SPACK_ROOT}/spack
    • Example: HLRS_SOFTWARE_STACK_HLRS_SPACK_ROOT=${HLRS_SOFTWARE_STACK_RELEASE_ROOT}/hlrs-spack
  • HLRS_SOFTWARE_STACK_SPACK_INSTALL_TREE : spack install tree of of currently active release.
    • Set by hpcoft
    • Public
    • This can be used for hpcoft/users to chain/upstream to HLRS Spack installation.
    • Defined by: HLRS_SOFTWARE_STACK_SPACK_INSTALL_TREE=${HLRS_SOFTWARE_STACK_RELEASE_ROOT}/opt-spack

Directory layout:

${HLRS_SOFTWARE_STACK_RELEASE_ROOT}/
├── opt-non-spack/
│ ├── modulefiles
│ └── ...
├── opt-spack (${HLRS_SOFTWARE_STACK_SPACK_INSTALL_TREE})/
│ ├── modulefiles
│ └── ...
├── hlrs-spack (${HLRS_SOFTWARE_STACK_HLRS_SPACK_ROOT})/
│ ├── spack (${SPACK_ROOT})
│ ├── config-hlrs
│ ├── config-user
│ ├── repos
│ ├── environments
│ └── ...
└── hlrs-plumbing
  ├── scripts
  ├── envs
  ├── ci-cd  
  └── ...