<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/c3/52/ae046f0e1d559241a62b450d86904b383ca673a267b4b4e3d5e40c586f00/swmclient-0.1.6.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.6",
"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": "643bbdcdb1e6f8f076ba78a7f5ef199e8b29fb5ac14a69a24293802bf305c37a",
"md5": "4ab8395dea18f5c15b1f71f9a372c433",
"sha256": "88b9e4b4ea3e5c1a7810f93e2e593fe5518589a6a4cc7c3e08373b388c306132"
},
"downloads": -1,
"filename": "swmclient-0.1.6-py3-none-any.whl",
"has_sig": false,
"md5_digest": "4ab8395dea18f5c15b1f71f9a372c433",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": "~=3.10",
"size": 38979,
"upload_time": "2024-08-31T16:17:20",
"upload_time_iso_8601": "2024-08-31T16:17:20.428920Z",
"url": "https://files.pythonhosted.org/packages/64/3b/bdcdb1e6f8f076ba78a7f5ef199e8b29fb5ac14a69a24293802bf305c37a/swmclient-0.1.6-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "c352ae046f0e1d559241a62b450d86904b383ca673a267b4b4e3d5e40c586f00",
"md5": "3e05c93a726dbaba8c5377a498aa9fa2",
"sha256": "166813b2504c408dfeddf43c327418511ceff8103f1d33300a24e7b4dbe772c3"
},
"downloads": -1,
"filename": "swmclient-0.1.6.tar.gz",
"has_sig": false,
"md5_digest": "3e05c93a726dbaba8c5377a498aa9fa2",
"packagetype": "sdist",
"python_version": "source",
"requires_python": "~=3.10",
"size": 26152,
"upload_time": "2024-08-31T16:17:22",
"upload_time_iso_8601": "2024-08-31T16:17:22.271832Z",
"url": "https://files.pythonhosted.org/packages/c3/52/ae046f0e1d559241a62b450d86904b383ca673a267b4b4e3d5e40c586f00/swmclient-0.1.6.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-08-31 16:17:22",
"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": [],
"lcname": "swmclient"
}