#! /bin/bash -e # genenetwork-machines --- Guix configuration for genenetwork machines # Copyright © 2022, 2024 Arun Isaac # Copyright © 2022, 2024 Frederick M. Muriithi # # 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 # . # 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 \ --share=/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