Eureka CLI
This is the CLI interface for Eureka, written in Node.js.
Overview
Eureka?
Eureka is a platform for deploying CPU heavy tasks quickly and painlessly on the cloud. It is currently in early Beta stages. If you wish to try it out, don't hesitate to contact us.
Main idea
When joining Eureka, you are given control over a cloud virtual machine (through SSH). You can install your code on it, compile it, and test it.
Once you are happy with your environment, you may run the eureka-run command. This will create a beefier version of your machine, run your command, backup the results, and terminate the new machine when done.
Install
-
Install Node. Make sure it works by running
npm --version
in a terminal. -
Run
npm install -g eureka-cli
. Test the installation by runningeureka --version
. -
During on-boarding, you should receive a configuration file called
eureka.config.yaml
. Copy it to the following location:-
Windows:
C:\Users\YourUserName\.eureka\eureka.config.yaml
-
Linux/Mac:
~/eureka/eureka.config.yaml
-
Windows:
-
Run
eureka machines
. You should see your assigned machine(s) names and SSH address.
Commands
There are currently 3 supported commands:
-
eureka tasks
: List your tasks. -
eureka machines
: List your machines, along with their SSH information. -
eureka run [--tier <tier>] <machine> <command>
This command will duplicate the requested
<machine>
and run the given<command>
on it.You may also provide a
<tier>
arguments, to specify the size of the machine to clone. For available options see tiers.
Example usage
eureka run --tier n1-standard-4 my_python_machine "python /bin/run_sim.py > /keep/output1.txt"
This will clone my_python_machine
into a new machine of tier n1-standard-4
, run the command /bin/run_sim.py
, and terminate the new machine.
/keep
your results!
When you eureka run
, a whole new machine is started, and killed at the end of the task. All your output files should be stored in a special directory called /keep
, as this is the only directory that is not deleted when the task finishes.
The /keep
folder is shared among all machines you own. It will be visible in your SSH session, which is how you can access your output.
Pricing
Eureka charges by the minute for eureka run
usage. The machine your are given SSH access to is free to use, but is not very powerful, and is meant for development purposes.
See a list of supported tiers here.
Contribute
See the Contribute page for information on setting up development environment and code policy.