{"id":21713645,"url":"https://github.com/alexrudy/tox-server","last_synced_at":"2025-08-10T03:03:34.727Z","repository":{"id":40559709,"uuid":"229655730","full_name":"alexrudy/tox-server","owner":"alexrudy","description":"A simple RPC server for tox","archived":false,"fork":false,"pushed_at":"2023-06-24T23:49:02.000Z","size":109,"stargazers_count":3,"open_issues_count":5,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-07-23T10:38:19.058Z","etag":null,"topics":["asyncio","cli","docker","python","rpc","tox","zmq"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"bsd-3-clause","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/alexrudy.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-12-23T01:36:49.000Z","updated_at":"2024-01-14T00:00:45.000Z","dependencies_parsed_at":"2025-04-12T18:47:20.640Z","dependency_job_id":"b5a309aa-87d5-4681-8809-bd55139034ab","html_url":"https://github.com/alexrudy/tox-server","commit_stats":null,"previous_names":[],"tags_count":7,"template":false,"template_full_name":null,"purl":"pkg:github/alexrudy/tox-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexrudy%2Ftox-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexrudy%2Ftox-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexrudy%2Ftox-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexrudy%2Ftox-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/alexrudy","download_url":"https://codeload.github.com/alexrudy/tox-server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/alexrudy%2Ftox-server/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269668185,"owners_count":24456495,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-10T02:00:08.965Z","response_time":71,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["asyncio","cli","docker","python","rpc","tox","zmq"],"created_at":"2024-11-26T00:18:58.378Z","updated_at":"2025-08-10T03:03:34.417Z","avatar_url":"https://github.com/alexrudy.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tox Server\n\n[![PyPI version](https://badge.fury.io/py/tox-server.svg)](https://badge.fury.io/py/tox-server)\n![Tests](https://github.com/alexrudy/tox-server/workflows/Tox%20Server%20Tests/badge.svg)\n\n`tox-server` is a command line tool which runs [tox](https://tox.readthedocs.io/en/latest/) in a loop\nand calls it with commands from a remote CLI. It responds to commands\nvia [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\nhelpful if your tests have to be run inside another environment with some setup cost, such as a docker container.\n\n## Installation\n\nYou can use `pip` to install `tox-server`:\n\n```\n$ pip install tox-server\n```\n\n## Run the server\n\nOn the remote host:\n\n```\n$ tox-server serve\n```\n\nThe server binds to `127.0.0.1` (i.e. it will only accept connections from localhost) because it is\nnot secured. If you are running it on an isolated network (like via docker), you can bind it to another host\nwith `tox-server  -b 0.0.0.0 serve`.\n\n## Run a tox command remotely\n\nOn your local host, you can run a tox command:\n\n```\n$ tox-server run -e py37\n```\n\nThis will run `tox -e py37` on the remote host.\n\n## A note on security\n\nBasically, security is hard. This program doesn't provide any authentication mechanism, and I'm not tempted\nto add one. Before you expose ports from `tox-server` to the world wide web, I'd advise using something like\nSSH tunneling to provide security and authentication.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexrudy%2Ftox-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Falexrudy%2Ftox-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Falexrudy%2Ftox-server/lists"}