-
Notifications
You must be signed in to change notification settings - Fork 9
/
Copy pathREADME
38 lines (27 loc) · 1.17 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
core libs for s3, ec2, ssh.
build upon the core is remote repl and cluster capabilities.
in a couple cases, we use an erlang convention of the ! syntax representing "reomote" (on another process) execution.
the first argument to ! in erlang is the pid, wheras in our api, it is an open ssh session or socket.
there is no ! operator or fn, we just use the ! suffix convention to communicate remote execution.
remote shell execution.
(sh! session "tar -xzf repl.tar.gz")
remote repl evaluation.
eval!
(eval! socket (execute (workflow some-cascading-workflow)))
TODO: add examples for usages.
TODO:
the persistent shell session using jsch ChannelShell is shaky at best, although exec works fine.
eval! may be simpler if we could use LineNumberingPushbackReader see comment in remote_repl.clj
stuff to poll and pull info from hadoop tracker url into repl
== Usage: crane.ec2
(ns crane.demo
(:use crane.ec2))
(def my-ec2
(ec2 {:key "somekey" :secretkey "somesecret/key"}))
(def basic-fedora "ami-3c47a355")
(run-instances my-ec2
{:instance-type (instance-types :m1.small)
:image basic-fedora
:instances 1
:key-name "gsg-keypair"
:group "default"})