swmclient


Nameswmclient JSON
Version 0.1.7 PyPI version JSON
download
home_pageNone
SummaryPython bindings for swm-core user REST API
upload_time2025-08-10 18:24:25
maintainerNone
docs_urlNone
authorNone
requires_python~=3.10
licenseBSD 3-Clause License
keywords hpc high performance computing cloud cloud computing open workload sky port
VCS
bugtrack_url
requirements anyio attrs autoflake bandit black bleach certifi cffi charset-normalizer click colorama cryptography docutils gitdb gitpython h11 httpcore httpx idna importlib-metadata isort jeepney jinja2 keyring markdown-it-py markupsafe mdurl mypy mypy-extensions openapi-python-client packaging pathspec pbr pkginfo platformdirs pycparser pydantic pyflakes pygments pyparsing python-dateutil pyyaml readme-renderer regex requests requests-toolbelt rfc3986 rich ruff secretstorage shellingham six smmap sniffio stevedore tomli tqdm twine typer typing-extensions urllib3 webencodings wheel zipp
Travis-CI No Travis.
coveralls test coverage No coveralls.
            <p align="center">
    <a href="https://pypi.python.org/pypi/swmclient" alt="Latest package version">
        <img src="https://img.shields.io/pypi/v/swmclient.svg" />
    </a>
    <a href="https://pypi.python.org/pypi/swmclient" alt="Python version">
        <img src="https://img.shields.io/pypi/pyversions/swmclient.svg" />
    </a>
    <a href="https://pypi.python.org/pypi/swmclient" alt="Package status">
        <img src="https://img.shields.io/pypi/status/swmclient.svg" />
    </a>
    <a href="https://github.com/openworkload/swm-python-client/blob/master/LICENSE" alt="License">
        <img src="https://img.shields.io/github/license/openworkload/swm-python-client" />
    </a>
</p>


Python bindings for swm-core REST API
======================================

# Description

Sky Port is an universal bus between user software and compute resources.
It can also be considered as a transportation layer between workload producers
and compute resource providers. Sky Port makes it easy to connect user software
to different cloud resources.

The current python package represents a wrapper around client REST API of the core
component of Sky Port -- [core daemon](https://github.com/openworkload/swm-core).
The package provides classes and data structures that can be used in python programs 
in order to communicate with swm-core. Such communication is useful when Sky Port
terminals are built (see [JupyterLab terminal](https://github.com/openworkload/swm-jupyter-term)
as an example).

# Build

## Requirements:

1) Use swm-core dev container or install manually:
```bash
sudo apt-get install python3-all-dev
sudo apt install python3-pip

pip3 install pip-tools setuptools virtualenv
```

Note: Python 3.10 is required.

2) Install the project dependencies with virtualenv
```bash
make prepare-venv
```

## Run code autoformatting and validation tools:
```bash
make format
make check
```

## Run unit tests:
```bash
make test
```

## Build pip package and upload to pypi.org:

```bash
. .venv/bin/activate
make clean
make package
make upload
```


# Setup

The latest stable version of the package is uploaded to [PyPi](https://pypi.org/project/swmclient).

## Installation from PyPi:
```bash
python3 -m pip install --user swmclient
```

## Remove installed package:
```bash
python3 -m pip uninstall swmclient
```


# Contributing

We appreciate all contributions. If you are planning to contribute back bug-fixes, please do so
without any further discussion. If you plan to contribute new features, utility functions or extensions,
please first open an issue and discuss the feature with us.

# License

We use a shared copyright model that enables all contributors to maintain the copyright on their contributions.

This software is licensed under the BSD-3-Clause license.

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "swmclient",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "~=3.10",
    "maintainer_email": null,
    "keywords": "hpc, high performance computing, cloud, cloud computing, open workload, sky port",
    "author": null,
    "author_email": "Taras Shapovalov <taras@iclouds.net>",
    "download_url": "https://files.pythonhosted.org/packages/d5/6c/344778e9ea099330856a306fa67a9fc30baa169b3b3a6ebf198125ddb378/swmclient-0.1.7.tar.gz",
    "platform": null,
    "description": "<p align=\"center\">\n    <a href=\"https://pypi.python.org/pypi/swmclient\" alt=\"Latest package version\">\n        <img src=\"https://img.shields.io/pypi/v/swmclient.svg\" />\n    </a>\n    <a href=\"https://pypi.python.org/pypi/swmclient\" alt=\"Python version\">\n        <img src=\"https://img.shields.io/pypi/pyversions/swmclient.svg\" />\n    </a>\n    <a href=\"https://pypi.python.org/pypi/swmclient\" alt=\"Package status\">\n        <img src=\"https://img.shields.io/pypi/status/swmclient.svg\" />\n    </a>\n    <a href=\"https://github.com/openworkload/swm-python-client/blob/master/LICENSE\" alt=\"License\">\n        <img src=\"https://img.shields.io/github/license/openworkload/swm-python-client\" />\n    </a>\n</p>\n\n\nPython bindings for swm-core REST API\n======================================\n\n# Description\n\nSky Port is an universal bus between user software and compute resources.\nIt can also be considered as a transportation layer between workload producers\nand compute resource providers. Sky Port makes it easy to connect user software\nto different cloud resources.\n\nThe current python package represents a wrapper around client REST API of the core\ncomponent of Sky Port -- [core daemon](https://github.com/openworkload/swm-core).\nThe package provides classes and data structures that can be used in python programs \nin order to communicate with swm-core. Such communication is useful when Sky Port\nterminals are built (see [JupyterLab terminal](https://github.com/openworkload/swm-jupyter-term)\nas an example).\n\n# Build\n\n## Requirements:\n\n1) Use swm-core dev container or install manually:\n```bash\nsudo apt-get install python3-all-dev\nsudo apt install python3-pip\n\npip3 install pip-tools setuptools virtualenv\n```\n\nNote: Python 3.10 is required.\n\n2) Install the project dependencies with virtualenv\n```bash\nmake prepare-venv\n```\n\n## Run code autoformatting and validation tools:\n```bash\nmake format\nmake check\n```\n\n## Run unit tests:\n```bash\nmake test\n```\n\n## Build pip package and upload to pypi.org:\n\n```bash\n. .venv/bin/activate\nmake clean\nmake package\nmake upload\n```\n\n\n# Setup\n\nThe latest stable version of the package is uploaded to [PyPi](https://pypi.org/project/swmclient).\n\n## Installation from PyPi:\n```bash\npython3 -m pip install --user swmclient\n```\n\n## Remove installed package:\n```bash\npython3 -m pip uninstall swmclient\n```\n\n\n# Contributing\n\nWe appreciate all contributions. If you are planning to contribute back bug-fixes, please do so\nwithout any further discussion. If you plan to contribute new features, utility functions or extensions,\nplease first open an issue and discuss the feature with us.\n\n# License\n\nWe use a shared copyright model that enables all contributors to maintain the copyright on their contributions.\n\nThis software is licensed under the BSD-3-Clause license.\n",
    "bugtrack_url": null,
    "license": "BSD 3-Clause License",
    "summary": "Python bindings for swm-core user REST API",
    "version": "0.1.7",
    "project_urls": {
        "Distribution": "https://pypi.org/project/swmclient",
        "Documentation": "https://openworkload.org",
        "Homepage": "https://openworkload.org",
        "Issues": "https://github.com/openworkload/swm-python-client/issues",
        "Repository": "https://github.com/openworkload/swm-python-client",
        "Tests": "https://github.com/openworkload/swm-python-client/tree/master/test"
    },
    "split_keywords": [
        "hpc",
        " high performance computing",
        " cloud",
        " cloud computing",
        " open workload",
        " sky port"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "076206e2831bfd4d0823d7e14cf45441a1e67befcc4288bd72cc30ef89ff669e",
                "md5": "47d4e47535c0db5a9a9b9838c269d083",
                "sha256": "bd59f4a9699bb436cfd4f2abcbf6d9c0dc6fe41bce517ccf75186320886c92c0"
            },
            "downloads": -1,
            "filename": "swmclient-0.1.7-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "47d4e47535c0db5a9a9b9838c269d083",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "~=3.10",
            "size": 40985,
            "upload_time": "2025-08-10T18:24:24",
            "upload_time_iso_8601": "2025-08-10T18:24:24.253255Z",
            "url": "https://files.pythonhosted.org/packages/07/62/06e2831bfd4d0823d7e14cf45441a1e67befcc4288bd72cc30ef89ff669e/swmclient-0.1.7-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "d56c344778e9ea099330856a306fa67a9fc30baa169b3b3a6ebf198125ddb378",
                "md5": "1870bc2226167cfcdd0e4dba6fe3b0fb",
                "sha256": "76da518962435590eb15d7ddd38ff3f99909632a3a1ef00a26e99e61d6bdca4f"
            },
            "downloads": -1,
            "filename": "swmclient-0.1.7.tar.gz",
            "has_sig": false,
            "md5_digest": "1870bc2226167cfcdd0e4dba6fe3b0fb",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "~=3.10",
            "size": 26554,
            "upload_time": "2025-08-10T18:24:25",
            "upload_time_iso_8601": "2025-08-10T18:24:25.489097Z",
            "url": "https://files.pythonhosted.org/packages/d5/6c/344778e9ea099330856a306fa67a9fc30baa169b3b3a6ebf198125ddb378/swmclient-0.1.7.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2025-08-10 18:24:25",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "openworkload",
    "github_project": "swm-python-client",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "requirements": [
        {
            "name": "anyio",
            "specs": [
                [
                    "==",
                    "3.6.2"
                ]
            ]
        },
        {
            "name": "attrs",
            "specs": [
                [
                    "==",
                    "23.1.0"
                ]
            ]
        },
        {
            "name": "autoflake",
            "specs": [
                [
                    "==",
                    "1.4"
                ]
            ]
        },
        {
            "name": "bandit",
            "specs": [
                [
                    "==",
                    "1.7.5"
                ]
            ]
        },
        {
            "name": "black",
            "specs": [
                [
                    "==",
                    "21.11b1"
                ]
            ]
        },
        {
            "name": "bleach",
            "specs": [
                [
                    "==",
                    "4.1.0"
                ]
            ]
        },
        {
            "name": "certifi",
            "specs": [
                [
                    "==",
                    "2021.10.8"
                ]
            ]
        },
        {
            "name": "cffi",
            "specs": [
                [
                    "==",
                    "1.15.0"
                ]
            ]
        },
        {
            "name": "charset-normalizer",
            "specs": [
                [
                    "==",
                    "2.0.7"
                ]
            ]
        },
        {
            "name": "click",
            "specs": [
                [
                    "==",
                    "8.0.3"
                ]
            ]
        },
        {
            "name": "colorama",
            "specs": [
                [
                    "==",
                    "0.4.4"
                ]
            ]
        },
        {
            "name": "cryptography",
            "specs": [
                [
                    "==",
                    "35.0.0"
                ]
            ]
        },
        {
            "name": "docutils",
            "specs": [
                [
                    "==",
                    "0.18"
                ]
            ]
        },
        {
            "name": "gitdb",
            "specs": [
                [
                    "==",
                    "4.0.10"
                ]
            ]
        },
        {
            "name": "gitpython",
            "specs": [
                [
                    "==",
                    "3.1.32"
                ]
            ]
        },
        {
            "name": "h11",
            "specs": [
                [
                    "==",
                    "0.14.0"
                ]
            ]
        },
        {
            "name": "httpcore",
            "specs": [
                [
                    "==",
                    "0.16.2"
                ]
            ]
        },
        {
            "name": "httpx",
            "specs": [
                [
                    "==",
                    "0.23.1"
                ]
            ]
        },
        {
            "name": "idna",
            "specs": [
                [
                    "==",
                    "3.3"
                ]
            ]
        },
        {
            "name": "importlib-metadata",
            "specs": [
                [
                    "==",
                    "4.8.2"
                ]
            ]
        },
        {
            "name": "isort",
            "specs": [
                [
                    "==",
                    "5.10.1"
                ]
            ]
        },
        {
            "name": "jeepney",
            "specs": [
                [
                    "==",
                    "0.7.1"
                ]
            ]
        },
        {
            "name": "jinja2",
            "specs": [
                [
                    "==",
                    "3.1.2"
                ]
            ]
        },
        {
            "name": "keyring",
            "specs": [
                [
                    "==",
                    "23.2.1"
                ]
            ]
        },
        {
            "name": "markdown-it-py",
            "specs": [
                [
                    "==",
                    "3.0.0"
                ]
            ]
        },
        {
            "name": "markupsafe",
            "specs": [
                [
                    "==",
                    "2.1.3"
                ]
            ]
        },
        {
            "name": "mdurl",
            "specs": [
                [
                    "==",
                    "0.1.2"
                ]
            ]
        },
        {
            "name": "mypy",
            "specs": [
                [
                    "==",
                    "1.0.1"
                ]
            ]
        },
        {
            "name": "mypy-extensions",
            "specs": [
                [
                    "==",
                    "0.4.3"
                ]
            ]
        },
        {
            "name": "openapi-python-client",
            "specs": [
                [
                    "==",
                    "0.13.4"
                ]
            ]
        },
        {
            "name": "packaging",
            "specs": [
                [
                    "==",
                    "21.3"
                ]
            ]
        },
        {
            "name": "pathspec",
            "specs": [
                [
                    "==",
                    "0.9.0"
                ]
            ]
        },
        {
            "name": "pbr",
            "specs": [
                [
                    "==",
                    "5.11.1"
                ]
            ]
        },
        {
            "name": "pkginfo",
            "specs": [
                [
                    "==",
                    "1.8.1"
                ]
            ]
        },
        {
            "name": "platformdirs",
            "specs": [
                [
                    "==",
                    "2.4.0"
                ]
            ]
        },
        {
            "name": "pycparser",
            "specs": [
                [
                    "==",
                    "2.21"
                ]
            ]
        },
        {
            "name": "pydantic",
            "specs": [
                [
                    "==",
                    "1.9.2"
                ]
            ]
        },
        {
            "name": "pyflakes",
            "specs": [
                [
                    "==",
                    "2.4.0"
                ]
            ]
        },
        {
            "name": "pygments",
            "specs": [
                [
                    "==",
                    "2.16.1"
                ]
            ]
        },
        {
            "name": "pyparsing",
            "specs": [
                [
                    "==",
                    "3.0.6"
                ]
            ]
        },
        {
            "name": "python-dateutil",
            "specs": [
                [
                    "==",
                    "2.8.2"
                ]
            ]
        },
        {
            "name": "pyyaml",
            "specs": [
                [
                    "==",
                    "6.0.1"
                ]
            ]
        },
        {
            "name": "readme-renderer",
            "specs": [
                [
                    "==",
                    "30.0"
                ]
            ]
        },
        {
            "name": "regex",
            "specs": [
                [
                    "==",
                    "2021.11.10"
                ]
            ]
        },
        {
            "name": "requests",
            "specs": [
                [
                    "==",
                    "2.26.0"
                ]
            ]
        },
        {
            "name": "requests-toolbelt",
            "specs": [
                [
                    "==",
                    "0.9.1"
                ]
            ]
        },
        {
            "name": "rfc3986",
            "specs": [
                [
                    "==",
                    "1.5.0"
                ]
            ]
        },
        {
            "name": "rich",
            "specs": [
                [
                    "==",
                    "13.5.2"
                ]
            ]
        },
        {
            "name": "ruff",
            "specs": [
                [
                    "==",
                    "0.0.264"
                ]
            ]
        },
        {
            "name": "secretstorage",
            "specs": [
                [
                    "==",
                    "3.3.1"
                ]
            ]
        },
        {
            "name": "shellingham",
            "specs": [
                [
                    "==",
                    "1.5.3"
                ]
            ]
        },
        {
            "name": "six",
            "specs": [
                [
                    "==",
                    "1.16.0"
                ]
            ]
        },
        {
            "name": "smmap",
            "specs": [
                [
                    "==",
                    "5.0.0"
                ]
            ]
        },
        {
            "name": "sniffio",
            "specs": [
                [
                    "==",
                    "1.3.0"
                ]
            ]
        },
        {
            "name": "stevedore",
            "specs": [
                [
                    "==",
                    "5.1.0"
                ]
            ]
        },
        {
            "name": "tomli",
            "specs": [
                [
                    "==",
                    "1.2.2"
                ]
            ]
        },
        {
            "name": "tqdm",
            "specs": [
                [
                    "==",
                    "4.62.3"
                ]
            ]
        },
        {
            "name": "twine",
            "specs": [
                [
                    "==",
                    "3.6.0"
                ]
            ]
        },
        {
            "name": "typer",
            "specs": [
                [
                    "==",
                    "0.7.0"
                ]
            ]
        },
        {
            "name": "typing-extensions",
            "specs": [
                [
                    "==",
                    "4.0.0"
                ]
            ]
        },
        {
            "name": "urllib3",
            "specs": [
                [
                    "==",
                    "1.26.7"
                ]
            ]
        },
        {
            "name": "webencodings",
            "specs": [
                [
                    "==",
                    "0.5.1"
                ]
            ]
        },
        {
            "name": "wheel",
            "specs": [
                [
                    "==",
                    "0.37.0"
                ]
            ]
        },
        {
            "name": "zipp",
            "specs": [
                [
                    "==",
                    "3.6.0"
                ]
            ]
        }
    ],
    "lcname": "swmclient"
}
        
Elapsed time: 1.16378s