qorus-remote


Nameqorus-remote JSON
Version 1.0.5 PyPI version JSON
download
home_pagehttps://qoretechnologies.com/
SummaryA package with scripts for use with remote Qorus instances
upload_time2023-09-01 10:34:26
maintainer
docs_urlNone
authorQore Technologies, s.r.o.
requires_python>=3.8,<4.0
licenseMIT
keywords qorus
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # Overview

This package contains two scripts:
- `qorus-remote-commands`: allows for command-line access to a remote Qorus server
- `make-release`: allows for releases to be created from local files

# Remote Qorus Commands
Requires Qorus 5.0.4+ and Python 3

The `qorus-remote-commands` script allows the user to run Qorus and Qore commands on a remote Qorus server using the
Qorus HTTP server and receive the output of the executed command in real time via the WebSocket protocol.

This allows the Qorus client to be used on any system with python 3 and to access Qorus running in a container or in
any other type of deployment as long as the HTTP server is accessible.

**NOTE**: the `oload` command is mean to be used with local files; local files are copied to the server to a temporary
location, and then `oload` is executed on the server with the deployed files.  At the end of the remote `oload`
execution, the temporary files are deleted,

## Installation

Install via pip:

`pip install qorus-remote`

## Usage
`qorus-remote-commands [-h|--help|--usage] <NETRC-FILE> <COMMAND> [<COMMAND-ARGS> ...]`

## Concrete Usage Examples

`qorus-remote-commands ~/.netrc-qorus-local qctl ps`

`qorus-remote-commands ~/.netrc-qorus-local qctl threads qorus-core`

`qorus-remote-commands ~/.netrc-qorus-local qrest system/starttime`

## .netrc file
| Variable | Description | Mandatory |
| --- | --- | --- |
| `machine` | ip address of the Qorus server machine | Yes |
| `port` | port of the Qorus server machine | Yes |
| `secure` | `yes` if the Qorus server is on `https`, no otherwise | Yes |
| `login` | Qorus username | Yes |
| `password` | Qorus password | Yes |
| `timeout` | Maximum time in seconds allowed for each of the curl operation | No |
| `verbose` | Makes the script verbose | No |
| `nodelete` | Does not delete the upload folder on the server | No |

### Example .netrc file
For a Qorus server located on https://localhost:8011 and using the Qorus user `adm` (`.netrc-qorus-local`):
```
machine localhost
port 8011
secure yes
login adm
password adm
timeout 120
verbose no
```

## Commands

### Qorus commands
`oload`\
`ocmd`\
`ojview`\
`oprop`\
`ostart`\
`ostatus`\
`ostop`\
`oview`\
`make-release`\
`qctl`\
`qrest`\
`schema-tool`\
`user-tool`

### Qore commands
`rest`\
`schema-reverse`\
`sfrest`\
`soaputil`\
`sqlutil`\
`qdp`\
`saprest`

### Aliases

It's recommended to create aliases for each of the above commands like:
- Unix/Linux: `alias oload='qorus-remote-commands ~/.netrc-qorus-local oload $*'`
- Windows: `DOSKEY oload=qorus-remote-commands %USERPROFILE%\Qorus\netrc-qorus-local oload $*`

etc

# make-release

The `make-release` script allows the user to make Qorus releases that can be manually or automatically deployed to
Qorus servers.

## Examples
`make-release -U. mylabel services/*.qsd`

Creates a user-code release with all service files in the default release-dir/mylabel directory.

`make-release -U. -lmylabel services/*.qsd`

Ceates only the load script manifest for service files in a release named mylabel.qrf

            

Raw data

            {
    "_id": null,
    "home_page": "https://qoretechnologies.com/",
    "name": "qorus-remote",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.8,<4.0",
    "maintainer_email": "",
    "keywords": "qorus",
    "author": "Qore Technologies, s.r.o.",
    "author_email": "info@qoretechnologies.com",
    "download_url": "https://files.pythonhosted.org/packages/1d/50/dd3a9c7af45551661d6e44c6a55bf4260e4065191fbd271a3a0d52906bd2/qorus_remote-1.0.5.tar.gz",
    "platform": null,
    "description": "# Overview\n\nThis package contains two scripts:\n- `qorus-remote-commands`: allows for command-line access to a remote Qorus server\n- `make-release`: allows for releases to be created from local files\n\n# Remote Qorus Commands\nRequires Qorus 5.0.4+ and Python 3\n\nThe `qorus-remote-commands` script allows the user to run Qorus and Qore commands on a remote Qorus server using the\nQorus HTTP server and receive the output of the executed command in real time via the WebSocket protocol.\n\nThis allows the Qorus client to be used on any system with python 3 and to access Qorus running in a container or in\nany other type of deployment as long as the HTTP server is accessible.\n\n**NOTE**: the `oload` command is mean to be used with local files; local files are copied to the server to a temporary\nlocation, and then `oload` is executed on the server with the deployed files.  At the end of the remote `oload`\nexecution, the temporary files are deleted,\n\n## Installation\n\nInstall via pip:\n\n`pip install qorus-remote`\n\n## Usage\n`qorus-remote-commands [-h|--help|--usage] <NETRC-FILE> <COMMAND> [<COMMAND-ARGS> ...]`\n\n## Concrete Usage Examples\n\n`qorus-remote-commands ~/.netrc-qorus-local qctl ps`\n\n`qorus-remote-commands ~/.netrc-qorus-local qctl threads qorus-core`\n\n`qorus-remote-commands ~/.netrc-qorus-local qrest system/starttime`\n\n## .netrc file\n| Variable | Description | Mandatory |\n| --- | --- | --- |\n| `machine` | ip address of the Qorus server machine | Yes |\n| `port` | port of the Qorus server machine | Yes |\n| `secure` | `yes` if the Qorus server is on `https`, no otherwise | Yes |\n| `login` | Qorus username | Yes |\n| `password` | Qorus password | Yes |\n| `timeout` | Maximum time in seconds allowed for each of the curl operation | No |\n| `verbose` | Makes the script verbose | No |\n| `nodelete` | Does not delete the upload folder on the server | No |\n\n### Example .netrc file\nFor a Qorus server located on https://localhost:8011 and using the Qorus user `adm` (`.netrc-qorus-local`):\n```\nmachine localhost\nport 8011\nsecure yes\nlogin adm\npassword adm\ntimeout 120\nverbose no\n```\n\n## Commands\n\n### Qorus commands\n`oload`\\\n`ocmd`\\\n`ojview`\\\n`oprop`\\\n`ostart`\\\n`ostatus`\\\n`ostop`\\\n`oview`\\\n`make-release`\\\n`qctl`\\\n`qrest`\\\n`schema-tool`\\\n`user-tool`\n\n### Qore commands\n`rest`\\\n`schema-reverse`\\\n`sfrest`\\\n`soaputil`\\\n`sqlutil`\\\n`qdp`\\\n`saprest`\n\n### Aliases\n\nIt's recommended to create aliases for each of the above commands like:\n- Unix/Linux: `alias oload='qorus-remote-commands ~/.netrc-qorus-local oload $*'`\n- Windows: `DOSKEY oload=qorus-remote-commands %USERPROFILE%\\Qorus\\netrc-qorus-local oload $*`\n\netc\n\n# make-release\n\nThe `make-release` script allows the user to make Qorus releases that can be manually or automatically deployed to\nQorus servers.\n\n## Examples\n`make-release -U. mylabel services/*.qsd`\n\nCreates a user-code release with all service files in the default release-dir/mylabel directory.\n\n`make-release -U. -lmylabel services/*.qsd`\n\nCeates only the load script manifest for service files in a release named mylabel.qrf\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "A package with scripts for use with remote Qorus instances",
    "version": "1.0.5",
    "project_urls": {
        "Bug Tracker": "https://github.com/qoretechnologies/qorus-remote/issues",
        "Homepage": "https://qoretechnologies.com/",
        "Repository": "https://github.com/qoretechnologies/qorus-remote"
    },
    "split_keywords": [
        "qorus"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a43404dd6269c402b3fa5100afc4f4f40138e29a3577c173c26923f41bd4e7ed",
                "md5": "87557c3d6459eb99ff6d34f3320a6040",
                "sha256": "07199ffff233048eeed97896632ff4ac89d7f0487039ff87a5edf15f4711f014"
            },
            "downloads": -1,
            "filename": "qorus_remote-1.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "87557c3d6459eb99ff6d34f3320a6040",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8,<4.0",
            "size": 19144,
            "upload_time": "2023-09-01T10:34:24",
            "upload_time_iso_8601": "2023-09-01T10:34:24.247800Z",
            "url": "https://files.pythonhosted.org/packages/a4/34/04dd6269c402b3fa5100afc4f4f40138e29a3577c173c26923f41bd4e7ed/qorus_remote-1.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "1d50dd3a9c7af45551661d6e44c6a55bf4260e4065191fbd271a3a0d52906bd2",
                "md5": "f4dc9a2c52c1941b620bade7acc470c7",
                "sha256": "861028835015cab0817b51632b096c84610e952a3446d609af74ad35c03e4109"
            },
            "downloads": -1,
            "filename": "qorus_remote-1.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "f4dc9a2c52c1941b620bade7acc470c7",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8,<4.0",
            "size": 19327,
            "upload_time": "2023-09-01T10:34:26",
            "upload_time_iso_8601": "2023-09-01T10:34:26.141940Z",
            "url": "https://files.pythonhosted.org/packages/1d/50/dd3a9c7af45551661d6e44c6a55bf4260e4065191fbd271a3a0d52906bd2/qorus_remote-1.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-09-01 10:34:26",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "qoretechnologies",
    "github_project": "qorus-remote",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": false,
    "lcname": "qorus-remote"
}
        
Elapsed time: 0.62618s