about summary refs log tree commit diff
path: root/gn2-fred-deploy.sh
diff options
context:
space:
mode:
authorFrederick Muriuki Muriithi2025-01-03 11:26:48 -0600
committerFrederick Muriuki Muriithi2025-10-08 09:07:37 -0500
commit58d2620e70ec43b4fb6cac87fedd928fec3f51b1 (patch)
tree99cd1d6feb7b26e9fc0bccb099613123c0df2250 /gn2-fred-deploy.sh
parent637a3efcb6122ebf7826415b4ee3507b038ce2e3 (diff)
downloadgn-machines-58d2620e70ec43b4fb6cac87fedd928fec3f51b1.tar.gz
Container for gn2-fred.genenetwork.org
The gn2-fred.genenetwork.org container is mostly like the production
container, other than the domain name used. It is intended to test any
changes to the deployment (e.g. guix commit changes, new definitions,
etc) to catch as many breakages as possible before they hit
production.
Diffstat (limited to 'gn2-fred-deploy.sh')
-rwxr-xr-xgn2-fred-deploy.sh48
1 files changed, 48 insertions, 0 deletions
diff --git a/gn2-fred-deploy.sh b/gn2-fred-deploy.sh
new file mode 100755
index 0000000..742207a
--- /dev/null
+++ b/gn2-fred-deploy.sh
@@ -0,0 +1,48 @@
+#! /bin/sh -e
+
+# genenetwork-machines --- Guix configuration for genenetwork machines
+# Copyright © 2022, 2024 Arun Isaac <arunisaac@systemreboot.net>
+# Copyright © 2024 Frederick Muriuki Muriithi <fredmanglis@protonmail.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.
+
+container_script=$(guix system container \
+                        --network \
+                        --load-path=. \
+                        --verbosity=3 \
+                        --share=/export/guix-containers/gn2-fred/var/genenetwork=/var/genenetwork \
+                        --share=/export/guix-containers/gn2-fred/var/lib/acme=/var/lib/acme \
+                        --share=/export/guix-containers/gn2-fred/var/lib/redis=/var/lib/redis \
+                        --share=/export/guix-containers/gn2-fred/var/lib/virtuoso=/var/lib/virtuoso \
+                        --share=/export/guix-containers/gn2-fred/var/log=/var/log \
+                        --share=/export/guix-containers/gn2-fred/etc/genenetwork=/etc/genenetwork \
+                        --share=/export/guix-containers/gn2-fred/var/lib/xapian=/var/lib/xapian \
+                        --share=/export/guix-containers/gn2-fred/var/lib/genenetwork/sqlite/gn-auth=/var/lib/genenetwork/sqlite/gn-auth \
+                        --share=/export/guix-containers/gn2-fred/var/lib/genenetwork/sqlite/genenetwork3=/var/lib/genenetwork/sqlite/genenetwork3 \
+                        --share=/var/run/mysqld=/run/mysqld \
+                        --share=/export/guix-containers/gn2-fred/tmp=/opt/gn/tmp \
+                        --share=/export/guix-containers/gn2-fred/var/genenetwork/sessions=/var/genenetwork/sessions \
+                        --share=/export/guix-containers/gn2-fred/var/lib/genenetwork/uploader=/var/lib/genenetwork/uploader \
+                        --share=/export/guix-containers/gn2-fred/var/lib/genenetwork/sqlite/gn-uploader=/var/lib/genenetwork/sqlite/gn-uploader \
+                        --share=/export/guix-containers/gn2-fred/var/lib/genenetwork/gn-guile=/var/lib/genenetwork/gn-guile \
+                        gn2-fred.scm)
+
+echo $container_script
+sudo ln --force --symbolic $container_script /usr/local/bin/gn2-fred-container
+sudo ln --force --symbolic /usr/local/bin/gn2-fred-container /var/guix/gcroots