compspec-flux


Namecompspec-flux JSON
Version 0.0.11 PyPI version JSON
download
home_pagehttps://github.com/compspec/compspec-flux
SummaryGenerate resource graphs using Flux
upload_time2024-02-29 02:33:27
maintainerVanessa Sochat
docs_urlNone
authorVanessa Sochat
requires_python
licenseLICENSE
keywords flux-framework jgf resource graph
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Compspec Flux

<p align="center">
  <img height="300" src="https://raw.githubusercontent.com/compspec/spec/main/img/compspec-circle.png">
</p>

[![PyPI version](https://badge.fury.io/py/compspec-flux.svg)](https://badge.fury.io/py/compspec-flux)

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](https://github.com/compspec/compspec): the Python library that discovers and loads this plugin.
 - [Compatibility](https://github.com/compspec/spec/tree/main/compatibility): of container images and applications to a host environment.
 - [Compspec Go](https://github.com/compspec/compspec-go): the Go library that retrieves artifacts and makes graphs for image selection and scheduling.

## Usage

Install compspec and the plugin here:

```bash
pip install compspec
pip install compspec-flux
```

Then (alongside a Flux instance) run the plugin. Note that the VSCode setup [provided here](.devcontainer) 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:

```bash
flux start --test-size=4
```

And here is how to print to the terminal:

```bash
compspec extract flux
```

<details>

<summary>Flux output</summary>

```console
{
    "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"
                    }
                }
            }
        ]
    }
}
```

</details>

And how to save to file

```bash
compspec extract --outfile cluster-resources.json flux
```

## License

HPCIC DevTools is distributed under the terms of the MIT license.
All new contributions must be made under this license.

See [LICENSE](https://github.com/converged-computing/cloud-select/blob/main/LICENSE),
[COPYRIGHT](https://github.com/converged-computing/cloud-select/blob/main/COPYRIGHT), and
[NOTICE](https://github.com/converged-computing/cloud-select/blob/main/NOTICE) for details.

SPDX-License-Identifier: (MIT)

LLNL-CODE- 842614

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/compspec/compspec-flux",
    "name": "compspec-flux",
    "maintainer": "Vanessa Sochat",
    "docs_url": null,
    "requires_python": "",
    "maintainer_email": "",
    "keywords": "flux-framework,JGF,resource graph",
    "author": "Vanessa Sochat",
    "author_email": "vsoch@users.noreply.github.com",
    "download_url": "https://files.pythonhosted.org/packages/ec/6c/bb128bb7fdeb6a065254cf198b0848a2e24ed06e7883cc6dd7cb846e71ef/compspec-flux-0.0.11.tar.gz",
    "platform": null,
    "description": "# Compspec Flux\n\n<p align=\"center\">\n  <img height=\"300\" src=\"https://raw.githubusercontent.com/compspec/spec/main/img/compspec-circle.png\">\n</p>\n\n[![PyPI version](https://badge.fury.io/py/compspec-flux.svg)](https://badge.fury.io/py/compspec-flux)\n\nA compspec (Composition spec) is a specification and model for comparing things. Compspec Flux\nprovides a simple means to extract metadata about a running flux instance, namely the graph of nodes.\nOther links of interest include:\n\n - [Compspec](https://github.com/compspec/compspec): the Python library that discovers and loads this plugin.\n - [Compatibility](https://github.com/compspec/spec/tree/main/compatibility): of container images and applications to a host environment.\n - [Compspec Go](https://github.com/compspec/compspec-go): the Go library that retrieves artifacts and makes graphs for image selection and scheduling.\n\n## Usage\n\nInstall compspec and the plugin here:\n\n```bash\npip install compspec\npip install compspec-flux\n```\n\nThen (alongside a Flux instance) run the plugin. Note that the VSCode setup [provided here](.devcontainer) will provide this for you.\nYou can use defaults, or add any parameters to the plugin after the plugin name \"flux\" Here is how to start a flux instance:\n\n```bash\nflux start --test-size=4\n```\n\nAnd here is how to print to the terminal:\n\n```bash\ncompspec extract flux\n```\n\n<details>\n\n<summary>Flux output</summary>\n\n```console\n{\n    \"graph\": {\n        \"nodes\": {\n            \"0\": {\n                \"id\": 0,\n                \"metadata\": {\n                    \"type\": \"cluster\",\n                    \"basename\": \"cluster\",\n                    \"name\": \"cluster0\",\n                    \"uniq_id\": 0,\n                    \"containment\": {\n                        \"paths\": \"/cluster0\"\n                    },\n                    \"size\": 1,\n                    \"unit\": \"\",\n                    \"rank\": 0,\n                    \"exclusive\": false\n                }\n            },\n            \"1\": {\n                \"id\": 1,\n                \"metadata\": {\n                    \"type\": \"node\",\n                    \"basename\": \"node\",\n                    \"name\": \"node1\",\n                    \"uniq_id\": 1,\n                    \"containment\": {\n                        \"paths\": \"/cluster0/node1\"\n                    },\n                    \"size\": 1,\n                    \"unit\": \"\",\n                    \"rank\": 0,\n                    \"exclusive\": false\n                }\n            }\n        },\n        \"edges\": [\n            {\n                \"source\": \"0\",\n                \"target\": \"1\",\n                \"metadata\": {\n                    \"name\": {\n                        \"containment\": \"contains\"\n                    }\n                }\n            },\n            {\n                \"source\": \"1\",\n                \"target\": \"0\",\n                \"metadata\": {\n                    \"name\": {\n                        \"containment\": \"in\"\n                    }\n                }\n            }\n        ]\n    }\n}\n```\n\n</details>\n\nAnd how to save to file\n\n```bash\ncompspec extract --outfile cluster-resources.json flux\n```\n\n## License\n\nHPCIC DevTools is distributed under the terms of the MIT license.\nAll new contributions must be made under this license.\n\nSee [LICENSE](https://github.com/converged-computing/cloud-select/blob/main/LICENSE),\n[COPYRIGHT](https://github.com/converged-computing/cloud-select/blob/main/COPYRIGHT), and\n[NOTICE](https://github.com/converged-computing/cloud-select/blob/main/NOTICE) for details.\n\nSPDX-License-Identifier: (MIT)\n\nLLNL-CODE- 842614\n",
    "bugtrack_url": null,
    "license": "LICENSE",
    "summary": "Generate resource graphs using Flux",
    "version": "0.0.11",
    "project_urls": {
        "Homepage": "https://github.com/compspec/compspec-flux"
    },
    "split_keywords": [
        "flux-framework",
        "jgf",
        "resource graph"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "bc0cdd6ec7785daba68edbb77a26cc025d774ac57850c814421d8756b25c7f15",
                "md5": "e75f820d987f4893ada500cae19063ff",
                "sha256": "95c273ea14ec7d9850d62a09dec8f4b79a6aaafc738196fb12133f2ef95f2932"
            },
            "downloads": -1,
            "filename": "compspec_flux-0.0.11-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "e75f820d987f4893ada500cae19063ff",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": null,
            "size": 8064,
            "upload_time": "2024-02-29T02:33:26",
            "upload_time_iso_8601": "2024-02-29T02:33:26.085022Z",
            "url": "https://files.pythonhosted.org/packages/bc/0c/dd6ec7785daba68edbb77a26cc025d774ac57850c814421d8756b25c7f15/compspec_flux-0.0.11-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "ec6cbb128bb7fdeb6a065254cf198b0848a2e24ed06e7883cc6dd7cb846e71ef",
                "md5": "be9107eef772ad5bd3b93ebcf9397cf3",
                "sha256": "5e66d1b698ed1b944f3fbc0af85b20869f6cdba0d9c6a00440c841f564e46b97"
            },
            "downloads": -1,
            "filename": "compspec-flux-0.0.11.tar.gz",
            "has_sig": false,
            "md5_digest": "be9107eef772ad5bd3b93ebcf9397cf3",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": null,
            "size": 7813,
            "upload_time": "2024-02-29T02:33:27",
            "upload_time_iso_8601": "2024-02-29T02:33:27.408399Z",
            "url": "https://files.pythonhosted.org/packages/ec/6c/bb128bb7fdeb6a065254cf198b0848a2e24ed06e7883cc6dd7cb846e71ef/compspec-flux-0.0.11.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-02-29 02:33:27",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "compspec",
    "github_project": "compspec-flux",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "compspec-flux"
}
        
Elapsed time: 0.31065s