API reference
This page provides an auto-generated summary of the mache API. For more details and examples, refer to the relevant sections in the main part of the documentation.
discover
|
Figure out the machine from the host name. |
permissions
|
Update the group that a directory belongs to along with the "group" and "other" permissions for the directory |
parallel
|
|
Resolved scheduler target and effective node count. |
|
Base class for parallel system resource management. |
|
Get the parallel execution command for the current system. |
|
Choose queue/partition/qos metadata target for a node count. |
|
Resolve a scheduler target and effective node count. |
|
Resource manager for login nodes (no parallel execution). |
|
Resource manager for single-node parallel execution. |
|
SLURM resource manager for parallel jobs. |
|
Get Slurm submission options for a requested node count. |
|
PBS resource manager for parallel jobs. |
|
Get PBS submission options for a requested node count. |
spack
|
Clone the |
|
Build a snippet of a load script for the given spack environment |
Get the non-spack modules, environment variables and compiler names for a given machine, compiler and MPI library. |
|
|
Extract the machine configuration from the XML file. |
|
Convert the machine configuration to a shell script. |
|
Extract machine configuration from XML and write it to a shell script. |
List tuples of machine, compiler, and MPI library parsed from the name of YAML files in the mache.spack.templates directory. |
sync
|
Synchronize diagnostics files between supported machines |
jigsaw
|
|
|
Build and install |
|
Build a local conda package for |
|
Install |
|
Resolve the jigsaw installation backend. |
|
Add the |
deploy
|
Wrapper for making a shell call with logging and error management. |
|
Build a shell prefix to activate a pixi env in the current shell. |
|
Ensure that the script is being run from the root of the target software repository. |
|
Install mache from a fork and branch for development and testing |
|
Entry point for the configure script |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Get the conda system name ('linux' or 'osx') and platform (e.g. 'linux-64'). |
|
A small bundle of state passed to hook functions. |
|
Resolved hooks for a single deploy run. |
|
Run a hook stage if it is defined. |
|
Load deployment hooks from a target-software repository. |
Convert a |
|
Init: Create/refresh the deploy starter kit in a target-software repo. |
Define a Jinja2 environment that uses square brackets for delimiters. |
|
Return the set of machine names known to mache. |
|
Return the set of machine names provided by the target software. |
|
Return the set of machines known to mache or the target software. |
|
Get the selected machine. |
|
Load merged machine config from mache + (optional) target software. |
|
Run the full deployment workflow for the current project. |
|
Result of deploying a Spack environment for one toolchain pair. |
|
Result of deploying a Spack "software" environment. |
|
Deploy one Spack environment per (compiler, mpi) toolchain pair. |
|
Deploy an optional Spack "software" environment. |
|
Load pre-existing Spack library environments for load scripts. |
|
Load a pre-existing Spack software environment for load scripts. |
MachineInfo
|
An object containing information about an E3SM supported machine |
Get default account, partition and quality of service (QOS) for this machine. |
|
Get queue policy metadata for the machine. |
|
Get partition policy metadata for the machine. |
|
Get quality-of-service (QOS) policy metadata for the machine. |