# Build debs for everything
+# Build arvados src deb package
+
build_and_scp_deb () {
PACKAGE=$1
PACKAGE_NAME=$2
# Make sure our destination directory on $APTSERVER exists - prm can delete it when invoked improperly
ssh -p2222 $APTUSER@$APTSERVER mkdir tmp
+# Arvados-src
+# We use $WORKSPACE/src-build-dir as the clean directory from which to build the src package
+if [[ ! -d "$WORKSPACE/src-build-dir" ]]; then
+ mkdir "$WORKSPACE/src-build-dir"
+ cd "$WORKSPACE"
+ git clone https://github.com/curoverse/arvados.git src-build-dir
+fi
+
+cd "$WORKSPACE/src-build-dir"
+# just in case, check out master
+git checkout master
+git pull
+# go into detached-head state
+git checkout `git log --format=format:%h -n1 .`
+cd $WORKSPACE
+
+cd $WORKSPACE/debs
+build_and_scp_deb $WORKSPACE/src-build-dir/=/usr/local/arvados/src arvados-src 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH -x 'usr/local/arvados/src/.git*'"
+
+# clean up, check out master and step away from detached-head state
+cd "$WORKSPACE/src-build-dir"
+git checkout master
+
# Keep
-cd $WORKSPACE/services/keep
-./go.sh install keep
+export GOPATH=$(mktemp -d)
+mkdir -p "$GOPATH/src/git.curoverse.com"
+ln -sfn "$WORKSPACE" "$GOPATH/src/git.curoverse.com/arvados.git"
+
+# Keep -> keepstore
+go get "git.curoverse.com/arvados.git/services/keepstore"
cd $WORKSPACE/debs
-build_and_scp_deb $WORKSPACE/services/keep/bin/keep=/usr/bin/keep keep 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH"
+build_and_scp_deb $GOPATH/bin/keepstore=/usr/bin/keepstore keepstore 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH"
# Keep proxy
-# First build the keepclient library
-cd $WORKSPACE/sdk/go
-./go.sh install arvados.org/keepclient
-
-# Then keepproxy
-cd $WORKSPACE/services/keep
-./go.sh install arvados.org/keepproxy
+# Keep -> keepproxy
+go get "git.curoverse.com/arvados.git/services/keepproxy"
cd $WORKSPACE/debs
-build_and_scp_deb $WORKSPACE/services/keep/bin/keepproxy=/usr/bin/keepproxy keepproxy 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH"
+build_and_scp_deb $GOPATH/bin/keepproxy=/usr/bin/keepproxy keepproxy 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH"
-# The crunchstat wrapper
-cd $WORKSPACE/services/crunch/crunchstat
-./go.sh install arvados.org/crunchstat
+# crunchstat
+go get "git.curoverse.com/arvados.git/services/crunchstat"
cd $WORKSPACE/debs
-build_and_scp_deb $WORKSPACE/services/crunch/crunchstat/bin/crunchstat=/usr/bin/crunchstat crunchstat 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH"
+build_and_scp_deb $GOPATH/bin/crunchstat=/usr/bin/crunchstat crunchstat 'Curoverse, Inc.' 'dir' "-v 0.1.$GIT_HASH"
# The Python SDK
cd $WORKSPACE/sdk/python
cd $WORKSPACE/services/fuse
sed -i'' -e "s:version='0.1':version='0.1.$GIT_HASH':" setup.py
-
cd $WORKSPACE/debs
# Please seem comment about --no-python-fix-name above; we stay consistent and do
echo "No new packages generated. No PRM run necessary."
fi
+# clean up temporary GOPATH
+rm -rf "$GOPATH"