From b3f17a47211f21ab290023086c4c852ab16f5cce Mon Sep 17 00:00:00 2001 From: Georg Pfuetzenreuter Date: Fri, 23 Jul 2021 17:34:09 +0200 Subject: [PATCH] Go and Ergo Deployment Scripts Signed-off-by: Georg Pfuetzenreuter --- scripts/sh/deploy_ergo.sh | 27 +++++++++++++++++++++++++++ scripts/sh/deploy_go.sh | 22 ++++++++++++++++++++++ 2 files changed, 49 insertions(+) create mode 100755 scripts/sh/deploy_ergo.sh create mode 100755 scripts/sh/deploy_go.sh diff --git a/scripts/sh/deploy_ergo.sh b/scripts/sh/deploy_ergo.sh new file mode 100755 index 0000000..83b6b03 --- /dev/null +++ b/scripts/sh/deploy_ergo.sh @@ -0,0 +1,27 @@ +#!/bin/sh +GOVER=`go version | { read _ _ v _; echo ${v#go}; }` +echo "Detected Go $GOVER" +GOVER_REQ="1.16.0" +if [ "$(printf '%s\n' "$GOVER_REQ" "$GOVER" | sort -V | head -n1)" = "$GOVER_REQ" ] +then +read -p "Deploy Ergo on this system? " -n 1 -r +echo +if [[ $REPLY =~ ^[Yy]$ ]] +then +zypper in --no-recommends -y git make +REPO="https://github.com/ergochat/ergo.git" +mkdir /opt/ergo +useradd -rUd /opt/ergo -s /bin/false ergo +chown ergo:ergo /opt/ergo +chmod 750 /opt/ergo +usermod -aG ergo pratyush +usermod -aG ergo georg +sudo -u ergo git clone $REPO /opt/ergo/ergo-git +cd /opt/ergo/ergo-git +sudo -u ergo make build +sudo -u ergo chmod +x ergo +ln -s /opt/ergo/ergo-git/ergo /opt/ergo/ergo +fi +else +echo "This is currently only compatible with Go 1.16.6 or higher. Consider deploy_go.sh." +fi diff --git a/scripts/sh/deploy_go.sh b/scripts/sh/deploy_go.sh new file mode 100755 index 0000000..00377dd --- /dev/null +++ b/scripts/sh/deploy_go.sh @@ -0,0 +1,22 @@ +#!/bin/sh +DISTRIB=$(awk -F= '/^NAME/{print $2}' /etc/os-release) +echo $DISTRIB +if [[ ${DISTRIB} = "openSUSE Leap" ]] +echo +then +read -p "Deploy Go on this system? " -n 1 -r +echo +if [[ $REPLY =~ ^[Yy]$ ]] +then +if [ ! -f /etc/zypp/repos.d/go.repo ] +then +REPO="https://download.opensuse.org/repositories/devel:/languages:/go/openSUSE_Leap_15.3/devel:languages:go.repo" +zypper ar --gpgcheck-allow-unsigned-repo $REPO +fi +zypper ref +zypper in -y go +echo OK +fi +else +echo "This is currently only compatible with SUSE Leap nodes." +fi