aboutsummaryrefslogtreecommitdiffstats
path: root/INSTALL/tasks.d/80_xds
diff options
context:
space:
mode:
Diffstat (limited to 'INSTALL/tasks.d/80_xds')
-rw-r--r--INSTALL/tasks.d/80_xds63
1 files changed, 41 insertions, 22 deletions
diff --git a/INSTALL/tasks.d/80_xds b/INSTALL/tasks.d/80_xds
index 1a62d8b..8534e70 100644
--- a/INSTALL/tasks.d/80_xds
+++ b/INSTALL/tasks.d/80_xds
@@ -1,23 +1,41 @@
#!/bin/bash
+# only for debug
+#DEBUG=1
+
+PREFIX=""
+[ "$DEBUG" = "1" ] && PREFIX=/tmp/debug-80_xds
+
# install required tools for XDS
-XDS_BINDIR=/usr/local/bin
-XDS_WWWDIR=/var/www/xds-server
-XDS_CONFDIR=${DEVUSER_HOME}/.xds
+XDS_BINDIR=${PREFIX}/usr/local/bin
+XDS_WWWDIR=${PREFIX}/var/www/xds-server
+XDS_CONFDIR=${PREFIX}/${DEVUSER_HOME}/.xds
+SDK_INSTALL_DIR=${PREFIX}/xdt/sdk
curdir=`pwd`
-## Install Go to build xds
-apt-get install -y golang-1.6
-export GOPATH=/tmp/go
-export PATH=${PATH}:/usr/lib/go-1.6/bin:${GOPATH}/bin
-mkdir -p ${GOPATH}/{src,bin,pkg}
+## Install Go 1.8 to build xds
+GOSRC=${PREFIX}/tmp/xds/src
+export GOINSTALLDIR=${PREFIX}/tmp/xds/go/install/go1.8.3
+if [ ! -x ${GOINSTALLDIR}/go/bin/go ]; then
+ mkdir -p ${GOINSTALLDIR}
+ mkdir -p ${PREFIX}/tmp
+ GO_TARBALL=${PREFIX}/tmp/go1.8.3.linux-amd64.tar.gz
+ wget -O ${GO_TARBALL} https://storage.googleapis.com/golang/go1.8.3.linux-amd64.tar.gz
+ (cd ${GOINSTALLDIR} && tar zxf ${GO_TARBALL})
+fi
+
+export GOROOT=${GOINSTALLDIR}/go
+export GOPATH=${PREFIX}/tmp/xds
+export PATH=${GOROOT}/bin:${GOPATH}/bin:${PATH}
+
+mkdir -p ${GOPATH}/{src,bin,pkg}
## Build and install XDS server and XDS tools (eg. Syncthing)
url="https://github.com/iotbzh/xds-server" \
- && mkdir -p /tmp/src/github.com/iotbzh && cd /tmp/src/github.com/iotbzh \
+ && mkdir -p ${GOSRC}/github.com/iotbzh && cd ${GOSRC}/github.com/iotbzh \
&& git clone "${url}" \
&& cd xds-server \
&& INSTALL_DIR="${XDS_BINDIR}" INSTALL_WEBAPP_DIR="${XDS_WWWDIR}" make all install \
@@ -39,9 +57,12 @@ chown -R ${DEVUSER}:${DEVUSER_UID} ${XDS_CONFDIR}
# Change owner of webapp assets files (allow dynamic download of xds-agent tarballs)
chown -R ${DEVUSER}:${DEVUSER_UID} ${XDS_WWWDIR}/assets
-# generate service file for startup
-SERVFILE=/lib/systemd/system/xds-server.service
-cat <<EOF >$SERVFILE
+
+if [ "$DEBUG" != "1" ]; then
+
+ # generate service file for startup
+ SERVFILE=/lib/systemd/system/xds-server.service
+ cat <<EOF >$SERVFILE
[Unit]
Description=XDS Server
@@ -55,20 +76,18 @@ ExecStart=/usr/local/bin/xds-server-start.sh
WantedBy=multi-user.target
EOF
-# config file
-cat <<EOF >/etc/default/xds-server
+ # config file
+ cat <<EOF >/etc/default/xds-server
# defaults file for XDS Server
# this file is used for service environment in $SERVFILE
# no variable defined yet
EOF
-# install service
-ln -s $SERVFILE /etc/systemd/system/multi-user.target.wants/
-
-# cleanup (remove build tools)
-cd $curdir
-rm -rf /tmp/*
+ # install service
+ ln -s $SERVFILE /etc/systemd/system/multi-user.target.wants/
-apt-get remove -y golang-1.6
-npm cache clean
+ # cleanup (remove build tools)
+ cd $curdir
+ rm -rf ${PREFIX}/tmp/xds ${PREFIX}/tmp/go*
+fi