diff options
author | Sebastien Douheret <sebastien.douheret@iot.bzh> | 2017-05-12 18:33:05 +0200 |
---|---|---|
committer | Sebastien Douheret <sebastien.douheret@iot.bzh> | 2017-05-12 18:33:26 +0200 |
commit | 9c87f58ae1bc719f17fb690e7cb886c1a60d7d3b (patch) | |
tree | ada612aea627f5899ab627e5114b22d26fceabfd /scripts | |
parent | da0cbb7d379fd5440993223094976d76f7b06f58 (diff) |
Add target to get Syncthing and start server script.
Signed-off-by: Sebastien Douheret <sebastien.douheret@iot.bzh>
Diffstat (limited to 'scripts')
-rwxr-xr-x | scripts/get-syncthing.sh | 40 | ||||
-rwxr-xr-x | scripts/xds-start-server.sh | 50 |
2 files changed, 90 insertions, 0 deletions
diff --git a/scripts/get-syncthing.sh b/scripts/get-syncthing.sh new file mode 100755 index 0000000..284c58e --- /dev/null +++ b/scripts/get-syncthing.sh @@ -0,0 +1,40 @@ +#!/bin/bash + +# Configurable variables +[ -z "$SYNCTHING_VERSION" ] && SYNCTHING_VERSION=0.14.25 +[ -z "$SYNCTHING_INOTIFY_VERSION" ] && SYNCTHING_INOTIFY_VERSION=0.8.5 +[ -z "$DESTDIR" ] && DESTDIR=/usr/local/bin +[ -z "$TMPDIR" ] && TMPDIR=/tmp + + +TEMPDIR=$TMPDIR/.get-st.$$ +mkdir -p ${TEMPDIR} && cd ${TEMPDIR} || exit 1 +trap "cleanExit" 0 1 2 15 +cleanExit () +{ + rm -rf ${TEMPDIR} +} + +echo "Get Syncthing..." + +## Install Syncthing + Syncthing-inotify +## gpg: key 00654A3E: public key "Syncthing Release Management <release@syncthing.net>" imported +gpg -q --keyserver pool.sks-keyservers.net --recv-keys 37C84554E7E0A261E4F76E1ED26E6ED000654A3E || exit 1 + +tarball="syncthing-linux-amd64-v${SYNCTHING_VERSION}.tar.gz" \ + && curl -sfSL "https://github.com/syncthing/syncthing/releases/download/v${SYNCTHING_VERSION}/${tarball}" -O \ + && curl -sfSL "https://github.com/syncthing/syncthing/releases/download/v${SYNCTHING_VERSION}/sha1sum.txt.asc" -O \ + && gpg -q --verify sha1sum.txt.asc \ + && grep -E " ${tarball}\$" sha1sum.txt.asc | sha1sum -c - \ + && rm sha1sum.txt.asc \ + && tar -xvf "$tarball" --strip-components=1 "$(basename "$tarball" .tar.gz)"/syncthing \ + && mv syncthing ${DESTDIR}/syncthing + + +echo "Get Syncthing-inotify..." +tarball="syncthing-inotify-linux-amd64-v${SYNCTHING_INOTIFY_VERSION}.tar.gz" \ + && curl -sfSL "https://github.com/syncthing/syncthing-inotify/releases/download/v${SYNCTHING_INOTIFY_VERSION}/${tarball}" -O \ + && tar -xvf "${tarball}" syncthing-inotify \ + && mv syncthing-inotify ${DESTDIR}/syncthing-inotify + +echo "DONE: syncthing and syncthing-inotify successfuly installed in ${DESTDIR}"
\ No newline at end of file diff --git a/scripts/xds-start-server.sh b/scripts/xds-start-server.sh new file mode 100755 index 0000000..5a3cba7 --- /dev/null +++ b/scripts/xds-start-server.sh @@ -0,0 +1,50 @@ +#!/bin/bash + +# Configurable variables +[ -z "$BINDIR" ] && BINDIR=/usr/local/bin +[ -z "$ST_CONFDIR" ] && ST_CONFDIR=$HOME/.xds/syncthing-config +[ -z "$XDS_CONFFILE" ] && XDS_CONFFILE=$HOME/.xds/config.json +[ -z "$LOGLEVEL" ] && LOGLEVEL=warn +[ -z "$LOGDIR" ] && LOGDIR=/tmp/xds-logs +[ -z "$PORT_GUI" ] && PORT_GUI=8384 +[ -z "$API_KEY" ] && API_KEY="1234abcezam" + + +mkdir -p ${LOGDIR} +LOG_XDS=${LOGDIR}/xds-server.log +LOG_SYNC=${LOGDIR}/syncthing.log +LOG_SYNCI=${LOGDIR}/syncthing-inotify.log + +echo "### Info" +echo "XDS server config: $XDS_CONFFILE" +echo "Syncthing GUI on port: $PORT_GUI" +echo "Syncthing Config: $ST_CONFDIR" +echo "XDS server output redirected in: $LOG_XDS" +echo "Syncthing-inotify output redirected in: $LOG_SYNCI" +echo "Syncthing output redirected in: $LOG_SYNC" +echo "" + +pwd +[[ -f $BINDIR/xds-server ]] || { BINDIR=$(cd `dirname $0` && pwd); } +pwd +[[ -f $BINDIR/xds-server ]] || { echo "Cannot find xds-server in BINDIR !"; exit 1; } + +echo "### Start syncthing-inotify:" +$BINDIR/syncthing-inotify --home=$ST_CONFDIR -target=http://localhost:$PORT_GUI -verbosity=4 > $LOG_SYNCI 2>&1 & +pid_synci=$(jobs -p) +echo "pid=${pid_synci}" +echo "" + +echo "### Start Syncthing:" +STNODEFAULTFOLDER=1 $BINDIR/syncthing --home=$ST_CONFDIR -no-browser -verbose --gui-address=0.0.0.0:$PORT_GUI -gui-apikey=${API_KEY} > $LOG_SYNC 2>&1 & +pid_sync=$(jobs -p) +echo "pid=${pid_sync}" +echo "" + +sleep 1 + +echo "### Start XDS server" +$BINDIR/xds-server --config $XDS_CONFFILE -log $LOGLEVEL > $LOG_XDS 2>&1 & +pid_xds=$(jobs -p) +echo "pid=${pid_xds}" +echo "" |