Hacking Keep » History » Version 5
Tom Clegg, 08/18/2014 03:57 PM
| 1 | 1 | Tom Clegg | h1. Hacking Keep |
|---|---|---|---|
| 2 | |||
| 3 | {{toc}} |
||
| 4 | |||
| 5 | h2. Source tree layout |
||
| 6 | |||
| 7 | 5 | Tom Clegg | The Keep storage server source code is in @/services/keepstore@. Proxy server is in @/services/keepproxy@. |
| 8 | 1 | Tom Clegg | |
| 9 | <pre> |
||
| 10 | cd |
||
| 11 | 5 | Tom Clegg | git clone git://git.curoverse.com/arvados.git |
| 12 | ls arvados/services/keep* |
||
| 13 | 1 | Tom Clegg | </pre> |
| 14 | 3 | Tom Clegg | |
| 15 | 5 | Tom Clegg | *Note:* Clone @git@git.curoverse.com:arvados.git@ instead if you plan to push directly to git.curoverse.com. |
| 16 | |||
| 17 | 1 | Tom Clegg | h2. Install build-prerequisites |
| 18 | |||
| 19 | Install Go. See http://golang.org/doc/install or try this short cut: |
||
| 20 | |||
| 21 | <pre> |
||
| 22 | 5 | Tom Clegg | wget https://storage.googleapis.com/golang/go1.3.1.linux-amd64.tar.gz |
| 23 | sudo tar -C /usr/local -xzf go1.3.1.linux-amd64.tar.gz |
||
| 24 | 1 | Tom Clegg | cd /usr/local/bin |
| 25 | sudo ln -s ../go/bin/* . |
||
| 26 | </pre> |
||
| 27 | |||
| 28 | (Check https://code.google.com/p/go/downloads/list for other platforms and newer versions.) |
||
| 29 | |||
| 30 | 5 | Tom Clegg | h2. Set up GOPATH |
| 31 | 1 | Tom Clegg | |
| 32 | <pre> |
||
| 33 | 5 | Tom Clegg | export GOPATH=~/gocode |
| 34 | mkdir -p $GOPATH |
||
| 35 | 1 | Tom Clegg | </pre> |
| 36 | |||
| 37 | 5 | Tom Clegg | h2. Tell Go to use your local copy |
| 38 | |||
| 39 | (Instead of automatically fetching master from the git repository) |
||
| 40 | |||
| 41 | <pre> |
||
| 42 | mkdir -p $GOPATH/src/git.curoverse.com |
||
| 43 | ln -s ~/arvados $GOPATH/src/git.curoverse.com/arvados.git |
||
| 44 | </pre> |
||
| 45 | |||
| 46 | 4 | Tom Clegg | h2. Run test suite |
| 47 | |||
| 48 | <pre> |
||
| 49 | 5 | Tom Clegg | go test git.curoverse.com/arvados.git/services/keepstore |
| 50 | 4 | Tom Clegg | </pre> |
| 51 | |||
| 52 | You should see something like this: |
||
| 53 | |||
| 54 | 1 | Tom Clegg | <pre> |
| 55 | 5 | Tom Clegg | ok git.curoverse.com/arvados.git/services/keepstore 0.015s |
| 56 | 1 | Tom Clegg | </pre> |