62 lines
2.1 KiB
Markdown
62 lines
2.1 KiB
Markdown
# 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:
|
|
|
|
```text
|
|
${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
|
|
└── ...
|
|
```
|
|
|