Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alexrudy/tox-server
A simple RPC server for tox
https://github.com/alexrudy/tox-server
asyncio cli docker python rpc tox zmq
Last synced: 27 days ago
JSON representation
A simple RPC server for tox
- Host: GitHub
- URL: https://github.com/alexrudy/tox-server
- Owner: alexrudy
- License: bsd-3-clause
- Created: 2019-12-23T01:36:49.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2023-06-24T23:49:02.000Z (over 1 year ago)
- Last Synced: 2024-08-09T04:40:48.631Z (5 months ago)
- Topics: asyncio, cli, docker, python, rpc, tox, zmq
- Language: Python
- Homepage:
- Size: 106 KB
- Stars: 3
- Watchers: 3
- Forks: 2
- Open Issues: 5
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Tox Server
[![PyPI version](https://badge.fury.io/py/tox-server.svg)](https://badge.fury.io/py/tox-server)
![Tests](https://github.com/alexrudy/tox-server/workflows/Tox%20Server%20Tests/badge.svg)`tox-server` is a command line tool which runs [tox](https://tox.readthedocs.io/en/latest/) in a loop
and calls it with commands from a remote CLI. It responds to commands
via [ZeroMQ](https://zeromq.org). It isn't super useful on its own (as it doesn't eliminate the startup time for tox, just runs it repeatedly) but it is
helpful if your tests have to be run inside another environment with some setup cost, such as a docker container.## Installation
You can use `pip` to install `tox-server`:
```
$ pip install tox-server
```## Run the server
On the remote host:
```
$ tox-server serve
```The server binds to `127.0.0.1` (i.e. it will only accept connections from localhost) because it is
not secured. If you are running it on an isolated network (like via docker), you can bind it to another host
with `tox-server -b 0.0.0.0 serve`.## Run a tox command remotely
On your local host, you can run a tox command:
```
$ tox-server run -e py37
```This will run `tox -e py37` on the remote host.
## A note on security
Basically, security is hard. This program doesn't provide any authentication mechanism, and I'm not tempted
to add one. Before you expose ports from `tox-server` to the world wide web, I'd advise using something like
SSH tunneling to provide security and authentication.