A tool to simplify remote execution
Project description
Welcome to rx!
rx is a command-line tool to make remote execution easy. It integrates with whatever tools you're currently using and gives you a long-running VM in the cloud that is kept in sync with your local machine.
Installation
Install via pip:
pip install run-rx
rx also requires rsync to run, make sure you have it installed:
which rsync
If not, check out its website or your favorite package manager to install.
Usage
In the directory containing your project (often your git root), run:
rx init
This will prompt you to log in (or create an account) and allocate a machine in the cloud for you to use. Then it will copy your project from your local machine to the cloud instance and install any packages that your project needs.
It may take several minutes to allocate a machine, copy your source code, and install packages (depending on your project).
Once rx finishes initializing, you can run any command on your remote worker by prefixing it with "rx":
rx python my-script.py
rx ps ax
rx 'echo $PATH > my-path.txt'
Check out the getting-started section for more examples.
What rx does
When you run rx it takes care of a bunch of cloud setup tasks on your behalf:
- It creates a private hosted environment for your project in the cloud.
- It copies your source code into that environment.
- It installs any dependencies your project needs.
Then, every time you run a command, it automatically syncs local changes to your cloud instance and syncs outputs back to your local machine. rx hosts your environment on our own cloud instances, so you never have to worry about setup or teardown.
Check out the getting started guide to start using rx in less than five minutes.
Note: the rx
binary is a thin client and does not run commands on your local
machine: it sends them to your cloud instance and runs them there.
Right now rx is free to use, so please give it a try and let us know what you think!
Feedback
Feel free to file an issue if you have any questions or problems!
Running tests
Run tests with:
pip install -r requirements_dev.txt
python run_tests.py
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.