commit | 6ed034236ffa9d24bdbbebac2c2ce25c4b898e59 | [log] [tgz] |
---|---|---|
author | Nicolas LaCasse <nlacasse@google.com> | Wed Jan 28 17:45:11 2015 -0800 |
committer | Nicolas LaCasse <nlacasse@google.com> | Wed Jan 28 17:48:08 2015 -0800 |
tree | e5f1c59c0208768eb0fddde37b4d75077ef94620 | |
parent | 7d4aaff4eae2c12d110e994f82895e4b916b7cca [diff] |
If VANADIUM_ROOT is defined, then use the go and js code there, otherwise fetch it ourselves. For CI testing and debugging, we want the chat clients to build with the code inside VANADIUM_ROOT. That way we are always testing with up-to-date code, and it makes debugging easier. This CL causes Makefile to use the go and javascript code inside VANADIUM_ROOT if it exists. Otherwise it will download and install the vanadium dependencies from the usual sources. Also, I accidentally deleted a line from our .jshintignore during the migration. This CL puts it back. Change-Id: Ic9561ed3fa96510bd3064a60239b64b4023ccdb5
We provide a web client and a shell client. See their respective README.md files for usage and development instructions.
To glob the local mounttable:
$VEYRON_ROOT/veyron/go/bin/mounttable glob /:4001 '*' $VEYRON_ROOT/veyron/go/bin/mounttable glob /:4001/apps/chat/public '*'
To glob the proxy.envyor.com mounttable:
$VEYRON_ROOT/veyron/go/bin/mounttable glob /proxy.envyor.com:8101 '*'
You will need Go 1.4, Git, Mercurial, and make
to build the shell client and dependencies.
In addition, you will need Node.js and npm to build the web client, and Chrome to run the client and the tests.
TODO(nlacasse): Update this with the new deployment setup once we have one.
The chat application consists of a set of static files hosted on the “v-www” GCE instance. Deployment is as simple as pushing to a remote branch on the instance. A git post-receive hook on the instance then builds the assets and makes them available over http.
You must add your public key to the git user's “authorized_keys”. This will allow you to push to the git repo on that machine.
From the Developers Console on GCE, ssh into the v-www instance and run:
sudo su git cat >> ~/.ssh/authorized_keys
Paste your ssh public key (commonly in ~/.ssh/id_rsa.pub), and then hit Enter followed by Ctrl-D.
You may now log out from the instance.
Next, from your local git repository, add a new remote reference to the staging GCE instance.
git remote add staging git@staging.v.io:chat.git
Build and deploy the web assets to staging:
./tools/deploy.sh web
Build and deploy the shell client binaries to staging:
./tools/deploy.sh shell
Build and deploy everything to staging:
./tools/deploy.sh all
Cutting a release does a deploy, and if the deploy is successful, tags the current commit with the version and pushes it to the veyron remote.
Make sure you have added the veyron remote.
git remote add veyron git@github.com:veyron/chat.git
Run the release.sh script with the desired version. Version must be of the form “v1.2.3”.
./tools/release.sh <version>