A collection of libraries for authoring HPC charms πποΈ
The hpc-libs package is used within the Juju charms charms that compose Charmed HPC. The current libraries shipped in hpc-libs include:
is_container
- a library for detecting the virtualization environment the charm is running within.slurm_ops
- a library for managing Slurm cluster operations via snap or systemd.
Each module contains documentation and usage information in its module-level docstring.
If you want to learn more about all the things you can do with the hpc-libs package, or have any further questions on what you can do with the package, here are some further resources for you to explore:
The project uses just and uv for development, which provides some useful commands that will help you while hacking on hpc-libs:
just fmt # Apply formatting standards to code.
just lint # Check code against coding style standards.
just typecheck # Run static type checks.
just unit # Run unit tests.
To run the hpc-libs integration tests, you'll need to have both gambol and LXD installed on your machine:
just integration # Run integration tests.
If you're interested in contributing your work to hpc-libs, take a look at our contributing guidelines for further details.
hpc-libs is a project of the Ubuntu High-Performance Computing community. Interested in contributing bug fixes, new editors, documentation, or feedback? Want to join the Ubuntu HPC community? Youβve come to the right place π€©
Hereβs some links to help you get started with joining the community:
- Ubuntu Code of Conduct
- Contributing guidelines
- Join the conversation on Matrix
- Get the latest news on Discourse
- Ask and answer questions on GitHub
The hpc-libs charm libraries are free software, distributed under the Apache Software License, version 2.0. See the Apache-2.0 LICENSE file for further details.