Name | crashkit JSON |
Version |
0.0.1
JSON |
| download |
home_page | |
Summary | Instrumentation hardware orchestration platform. |
upload_time | 2024-01-27 15:35:52 |
maintainer | |
docs_url | None |
author | |
requires_python | >=3.11 |
license | BSD 3-Clause License Copyright (c) 2024, Michael Czigler Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
keywords |
instrumentation
scpi
|
VCS |
|
bugtrack_url |
|
requirements |
No requirements were recorded.
|
Travis-CI |
No Travis.
|
coveralls test coverage |
No coveralls.
|
# CrashKit
An instrumentation hardware orchestration platform.
## Background
Crashkit was founded on the idea of creating rapidly
deployable production troubleshooting and test equipment
carts, fondly referred to as "Crash Carts". In order to
simplify the equipment configuration and setup process, a
SCPI command orchestration backend was needed.
## Install
### PyPI
Install and update using pip:
```shell
pip install -U crashkit
```
### Repository
When using git, clone the repository and change your
present working directory.
```shell
git clone http://github.com/mcpcpc/crashkit
cd crashkit/
```
Create and activate a virtual environment.
```shell
python -m venv venv
source venv/bin/activate
```
Install CrashKit to the virtual environment.
```shell
pip install -e .
```
## Commands
### db-init
The backend database can be initialized or re-initialized
with the following command.
```shell
quart --app crashkit init-db
```
## Deployment
Before deployment, overriding the default `SECRET_KEY`
variable is *strongly* encourage. This can be done by
creating a `conf.py` file and placing it in the
same root as the instance (i.e. typically where the
backend database resides).
```python
SECRET_KEY = “192b9bdd22ab9ed4d12e236c78afcb9a393ec15f71bbf5dc987d54727823bcbf“
```
There are a number of ways to generate a secret key
value. The simplest would be to use the built-in secrets
Python library.
```shell
$ python -c ‘import secrets; print(secrets.token_hex())’
‘192b9bdd22ab9ed4d12e236c78afcb9a393ec15f71bbf5dc987d54727823bcbf’
```
### Quart
Non-production ASGI via quart for development and
debugging.
```shell
quart --app crashkit run --debug
```
### Uvicorn
Production ASGI via uvicorn.
```shell
pip install waitress
waitress-serve --factory crashkit:create_app
```
## Test
```shell
python3 -m unittest
```
Run with coverage report.
```shell
coverage run -m unittest
coverage report
coverage html # open htmlcov/index.html in a browser
```
Raw data
{
"_id": null,
"home_page": "",
"name": "crashkit",
"maintainer": "",
"docs_url": null,
"requires_python": ">=3.11",
"maintainer_email": "",
"keywords": "instrumentation,scpi",
"author": "",
"author_email": "",
"download_url": "https://files.pythonhosted.org/packages/9c/79/0c0572a7f238098389bbf1f3ff63ecf8c1059ad51517b78fba560e4d656e/crashkit-0.0.1.tar.gz",
"platform": null,
"description": "# CrashKit\n\nAn instrumentation hardware orchestration platform.\n\n## Background\n\nCrashkit was founded on the idea of creating rapidly\ndeployable production troubleshooting and test equipment\ncarts, fondly referred to as \"Crash Carts\". In order to\nsimplify the equipment configuration and setup process, a\nSCPI command orchestration backend was needed. \n\n## Install\n\n### PyPI\n\nInstall and update using pip:\n\n```shell\npip install -U crashkit\n```\n\n### Repository\n\nWhen using git, clone the repository and change your \npresent working directory.\n\n```shell\ngit clone http://github.com/mcpcpc/crashkit\ncd crashkit/\n```\n\nCreate and activate a virtual environment.\n\n```shell\npython -m venv venv\nsource venv/bin/activate\n```\n\nInstall CrashKit to the virtual environment.\n\n```shell\npip install -e .\n```\n\n## Commands\n\n### db-init\n\nThe backend database can be initialized or re-initialized \nwith the following command.\n\n```shell\nquart --app crashkit init-db\n```\n\n## Deployment\n\nBefore deployment, overriding the default `SECRET_KEY`\nvariable is *strongly* encourage. This can be done by\ncreating a `conf.py` file and placing it in the\nsame root as the instance (i.e. typically where the\nbackend database resides).\n\n```python\nSECRET_KEY = \u201c192b9bdd22ab9ed4d12e236c78afcb9a393ec15f71bbf5dc987d54727823bcbf\u201c\n```\n\nThere are a number of ways to generate a secret key\nvalue. The simplest would be to use the built-in secrets\nPython library.\n\n```shell\n$ python -c \u2018import secrets; print(secrets.token_hex())\u2019\n\u2018192b9bdd22ab9ed4d12e236c78afcb9a393ec15f71bbf5dc987d54727823bcbf\u2019\n```\n\n### Quart\n\nNon-production ASGI via quart for development and\ndebugging.\n\n```shell\nquart --app crashkit run --debug\n```\n\n### Uvicorn\n\nProduction ASGI via uvicorn.\n\n```shell\npip install waitress\nwaitress-serve --factory crashkit:create_app\n```\n\n## Test\n\n```shell\npython3 -m unittest\n```\n\nRun with coverage report.\n\n```shell\ncoverage run -m unittest\ncoverage report\ncoverage html # open htmlcov/index.html in a browser\n```\n",
"bugtrack_url": null,
"license": "BSD 3-Clause License Copyright (c) 2024, Michael Czigler Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. Neither the name of the copyright holder nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS \"AS IS\" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. ",
"summary": "Instrumentation hardware orchestration platform.",
"version": "0.0.1",
"project_urls": {
"homepage": "https://github.com/mcpcpc/crashkit",
"repository": "https://github.com/mcpcpc/crashkit"
},
"split_keywords": [
"instrumentation",
"scpi"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "8d715ac1563522f10bd358bf4418297231702cbcbcda55b1287aa903012cac66",
"md5": "b3a3392016199c080b4d4983481e8d3b",
"sha256": "dc21bb8310ef238b2423dfc1bfccf80b4de93dc647d7e52ffb9a6262027476dd"
},
"downloads": -1,
"filename": "crashkit-0.0.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "b3a3392016199c080b4d4983481e8d3b",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.11",
"size": 3101819,
"upload_time": "2024-01-27T15:35:49",
"upload_time_iso_8601": "2024-01-27T15:35:49.658626Z",
"url": "https://files.pythonhosted.org/packages/8d/71/5ac1563522f10bd358bf4418297231702cbcbcda55b1287aa903012cac66/crashkit-0.0.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "9c790c0572a7f238098389bbf1f3ff63ecf8c1059ad51517b78fba560e4d656e",
"md5": "8ada0e5a6b5b4950ecf3b522b40e9bd6",
"sha256": "1b357edec26c61a2fac26ae4eb8bd4d5bc315d071c18b238f9d037d986e8aa88"
},
"downloads": -1,
"filename": "crashkit-0.0.1.tar.gz",
"has_sig": false,
"md5_digest": "8ada0e5a6b5b4950ecf3b522b40e9bd6",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.11",
"size": 3097713,
"upload_time": "2024-01-27T15:35:52",
"upload_time_iso_8601": "2024-01-27T15:35:52.331331Z",
"url": "https://files.pythonhosted.org/packages/9c/79/0c0572a7f238098389bbf1f3ff63ecf8c1059ad51517b78fba560e4d656e/crashkit-0.0.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-01-27 15:35:52",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "mcpcpc",
"github_project": "crashkit",
"github_not_found": true,
"lcname": "crashkit"
}