A compspec (Composition spec) is a specification and model for comparing things. Compspec Flux provides a simple means to extract metadata about a running flux instance, namely the graph of nodes. Other links of interest include:
- Compspec: the Python library that discovers and loads this plugin.
- Compatibility: of container images and applications to a host environment.
- Compspec Go: the Go library that retrieves artifacts and makes graphs for image selection and scheduling.
Install compspec and the plugin here:
pip install compspec
pip install compspec-flux
Then (alongside a Flux instance) run the plugin. Note that the VSCode setup provided here will provide this for you. You can use defaults, or add any parameters to the plugin after the plugin name "flux" Here is how to start a flux instance:
flux start --test-size=4
And here is how to print to the terminal:
compspec extract flux
Flux output
{
"graph": {
"nodes": {
"0": {
"id": 0,
"metadata": {
"type": "cluster",
"basename": "cluster",
"name": "cluster0",
"uniq_id": 0,
"containment": {
"paths": "/cluster0"
},
"size": 1,
"unit": "",
"rank": 0,
"exclusive": false
}
},
"1": {
"id": 1,
"metadata": {
"type": "node",
"basename": "node",
"name": "node1",
"uniq_id": 1,
"containment": {
"paths": "/cluster0/node1"
},
"size": 1,
"unit": "",
"rank": 0,
"exclusive": false
}
}
},
"edges": [
{
"source": "0",
"target": "1",
"metadata": {
"name": {
"containment": "contains"
}
}
},
{
"source": "1",
"target": "0",
"metadata": {
"name": {
"containment": "in"
}
}
}
]
}
}
And how to save to file
compspec extract --outfile cluster-resources.json flux
HPCIC DevTools is distributed under the terms of the MIT license. All new contributions must be made under this license.
See LICENSE, COPYRIGHT, and NOTICE for details.
SPDX-License-Identifier: (MIT)
LLNL-CODE- 842614