aboutsummaryrefslogtreecommitdiff
path: root/uploader-deploy.sh
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2024-03-08 04:27:21 +0300
committerArun Isaac2024-03-25 23:47:57 +0000
commit081e2865c3354415fbcb186e562060d6ac2885f1 (patch)
treec8f22fb0ef90b9a8240e1593dca646d5ba6591f9 /uploader-deploy.sh
parentaf7480a6fe3469b29723d0013926f17dd426e012 (diff)
downloadgn-machines-081e2865c3354415fbcb186e562060d6ac2885f1.tar.gz
Add gn-uploader service.
* genenetwork/services/genenetwork.scm (<gn-uploader-configuration>): New type. (gn-uploader-activation, gn-uploader-gunicorn-app, gn-uploader-nginx-server-block): New functions. (gn-uploader-service-type): New variable. * uploader.scm, uploader-deploy.sh: New files. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
Diffstat (limited to 'uploader-deploy.sh')
-rwxr-xr-xuploader-deploy.sh60
1 files changed, 60 insertions, 0 deletions
diff --git a/uploader-deploy.sh b/uploader-deploy.sh
new file mode 100755
index 0000000..77a91e6
--- /dev/null
+++ b/uploader-deploy.sh
@@ -0,0 +1,60 @@
+#! /bin/bash -e
+
+# genenetwork-machines --- Guix configuration for genenetwork machines
+# Copyright © 2022, 2024 Arun Isaac <arunisaac@systemreboot.net>
+# Copyright © 2022, 2024 Frederick M. Muriithi <fredmanglis@gmail.com>
+#
+# This file is part of genenetwork-machines.
+#
+# genenetwork-machines is free software: you can redistribute it
+# and/or modify it under the terms of the GNU General Public License
+# as published by the Free Software Foundation, either version 3 of
+# the License, or (at your option) any later version.
+#
+# genenetwork-machines is distributed in the hope that it will be
+# useful, but WITHOUT ANY WARRANTY; without even the implied warranty
+# of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+# General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with genenetwork-machines. If not, see
+# <https://www.gnu.org/licenses/>.
+
+# Build and install genenetwork production container on tux02.
+
+SCRIPTARGS=("$@")
+
+MODULEARGS=()
+if [ "${#SCRIPTARGS[@]}" -gt 0 ]
+then
+ echo "===== Auxilliary module load paths ====="
+ for path in "${SCRIPTARGS[@]}"
+ do
+ echo "-L ${path}"
+ MODULEARGS+=("-L" "${path}")
+ done
+ echo "===== END: Auxilliary module load paths ====="
+fi
+
+container_script=$(guix system container \
+ "${MODULEARGS[@]}" \
+ --network \
+ --load-path=. \
+ --verbosity=3 \
+ --share=/export2/guix-containers/genenetwork/uploader/var/genenetwork=/var/genenetwork \
+ --share=/export2/guix-containers/genenetwork/uploader/var/lib/acme=/var/lib/acme \
+ --share=/export2/guix-containers/genenetwork/uploader/var/lib/mysql=/var/lib/mysql \
+ --share=/export2/guix-containers/genenetwork/uploader/var/lib/virtuoso=/var/lib/virtuoso \
+ --share=/export2/guix-containers/genenetwork/uploader/var/log=/var/log \
+ --share=/export2/guix-containers/genenetwork/uploader/etc/genenetwork=/etc/genenetwork \
+ --expose=/export/data/uploader/genenetwork-xapian=/export/data/genenetwork-xapian \
+ --share=/export/data/uploader/genenetwork-sqlite=/export/data/genenetwork-sqlite \
+ --expose=/export/data/genenetwork/genotype_files=/export/data/genenetwork/genotype_files \
+ --expose=/export/data/uploader/genenetwork3 \
+ --expose=/export/data/uploader/gn-uploader \
+ --share=/var/run/mysqld3307=/run/mysqld \
+ uploader.scm)
+
+echo "${container_script}"
+sudo ln --force --symbolic "${container_script}" /usr/local/bin/genenetwork-uploader-container
+sudo ln --force --symbolic /usr/local/bin/genenetwork-uploader-container /var/guix/gcroots