Age | Commit message (Collapse) | Author |
|
* genenetwork-development.scm (genenetwork-projects): Use
guix-channel-job-gexp for genenetwork3 tests.
|
|
* genenetwork-development.scm (guix-channel-job-gexp): New function.
(guix-bioinformatics-project): New variable.
(operating-system)[services]: Add guix-bioinformatics-project to
forge-service-type.
|
|
|
|
This reverts commit 37fa3c11908d7aada419be296ebef67415de3bc9.
|
|
|
|
This reverts commit ecd97bc513323459898b34db45fda6c9edd7ca22.
|
|
|
|
Rob is giving a demo, so disable tests and fix them later.
Signed-off-by: Munyoki Kilyungi <me@bonfacemunyoki.com>
|
|
|
|
|
|
* genenetwork-development.scm,
public-sparql.scm (operating-system)[services]<virtuoso-service>: Set
number-of-buffers and maximum-dirty-buffers.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
* README.org (GeneNetwork development container): Link to
guix-bioinformatics and guix-forge channels.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
* genenetwork-development.scm (genenetwork-shepherd-services): Share
auth-db-path with genenetwork3-pola-wrapper.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
genenetwork3 expects AUTH_DB, not AUTH_DB_PATH.
* genenetwork-development.scm (genenetwork3-cd-gexp): Set AUTH_DB, not
AUTH_DB_PATH.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
* genenetwork-development.scm (build-xapian-index-gexp): Do not create
xapian build directory.
|
|
A relative GN_SERVER_URL sometimes leads to issues when code (in
libraries e.g. requests and the like) cannot expand the URI since it
does not have context about the running server.
* genenetwork-development.scm (genenetwork2-cd-gexp): Use an absolute
GN_SERVER_URL.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
Without the trailing slash, the urllib.parse.urljoin function produces
the wrong endpoint.
* genenetwork-development.scm (genenetwork2-cd-gexp): Add trailing
slash to GN_SERVER_URL.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
For some tasks (e.g. debugging the xapian index build), we need to
manually queue the job, which means we need a shell into the
container.
Getting a shell using the default command displayed actually fails
with:
nsenter: failed to execute /bin/bash: No such file or directory
so we need to provide the correct path to bash, and optionally,
initialise the shell to setup the correct paths.
|
|
Add a CI job that applies the auth database migrations. This job is
run after the genenetwork3 tests have passed but before genenetwork3
is restarted.
* genenetwork-development-deploy.sh: Share
/export/data/genenetwork-sqlite.
* genenetwork-development.scm: Import yoyo-migrations from (gnu
packages databases).
(<genenetwork-configuration>)[auth-db-path]: New field.
(genenetwork3-auth-migrations-genenetwork,
genenetwork3-auth-migrations-laminar, genenetwork-activation): New
functions.
(genenetwork-projects): Add genenetwork3-auth-migrations CI
job. Trigger this job after genenetwork3 tests.
(genenetwork3-cd-gexp): Configure AUTH_DB_PATH in gn3.conf.
(genenetwork-service-type): Extend activation-service-type with
genenetwork-activation.
(operating-system)[sudoers-file]: Permit the laminar user to run auth
database migrations as the genenetwork user.
Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
|
|
tissue fails to clean up its Unix socket when deployed with
shepherd. So, when tissue crashes, it fails to restart. Until this
issue is resolved, run tissue on an IP socket.
* genenetwork-development.scm (%tissue-port): New variable.
(tissue-reverse-proxy-server-block): Forward tissue requests to IP
socket.
(operating-system)[services]: Run tissue on an IP socket.
|
|
* genenetwork-development.scm: Import guile-git from (gnu packages
guile), libgit2-1.3 from (gnu packages version-control), and (guix
utils). Prefix tissue import from (gnu packages web) with guix:.
(libgit2-1.3, guile-git-for-tissue, tissue): New variables.
(operating-system)[services]: Use local variant of tissue package.
|
|
The tissue package is now in Guix upstream and longer in the
guix-forge channel.
* genenetwork-development.scm: Import tissue from (gnu packages web).
|
|
* genenetwork-development.scm (build-xapian-index-gexp): Provide MySQL
URI to the xapian indexing script.
|
|
We ought to share the mysqld socket directory into the container, not
the socket itself. If we only shared the socket, when the mysql server
is restarted and a new socket is created, the bind mounting into the
container would break and the container would need to be restarted.
* genenetwork-development-deploy.sh: Share /var/run/mysqld, not
/var/run/mysqld/mysqld.sock.
* genenetwork-development.scm (genenetwork-shepherd-services): Share
/run/mysqld, not /run/mysqld/mysqld.sock.
|
|
|
|
*
genenetwork-development.scm (<genenetwork-configuration>)[data-directory]:
New field.
(genenetwork3-cd-gexp): Set DATA_DIR in settings file.
(genenetwork-shepherd-services): Map data directory into container.
(operating-system)[services]: Set data-directory of genenetwork
service to /export/data/genenetwork.
* genenetwork-development-deploy.sh: Expose entire data directory
/export/data/genenetwork instead of the contained genotype files
directory.
|
|
* genenetwork-development.scm (%xapian-directory): Move from
/export/data/genenetwork/xapian to /export/data/genenetwork-xapian.
* genenetwork-development-deploy.sh (container_script): Share
/export/data/genenetwork-xapian instead of
/export/data/genenetwork/xapian.
|
|
* genenetwork-development.scm (build-xapian-index-gexp): Clean up
xapian build directory if previous build failed to.
|
|
This 502 error page is more informative than a generic "Bad Gateway"
error message. It tells the user that the CD is down but not the
entire container itself.
* genenetwork-development.scm: Import guile-lib from (gnu packages
guile-xyz).
(%ci-domain): New variable.
(cd-error-pages-gexp): New function.
(development-server-reverse-proxy-server-block):
Use (cd-error-pages-gexp) to construct error pages.
(laminar-reverse-proxy-server-block): Use %ci-domain.
|
|
We don't want the Guix garbage collector accidentally clearing away
store items required by the container. So, register them as garbage
collector roots.
* genenetwork-development-deploy.sh, production-deploy.sh,
public-sparql-deploy.sh, virtuoso-deploy.sh: Register containers as
garbage collector roots.
|
|
* genenetwork-development.scm: Import (gnu services mcron).
(%xapian-directory): New variable.
(build-xapian-index-gexp): New function.
(genenetwork-projects): Add genenetwork3-build-xapian-index CI job to
genenetwork3 project.
(operating-system)[sudoers-file]: Allow laminar user to start and stop
genenetwork3.
[services]: Add mcron service to trigger nightly xapian build. Use
%xapian-directory instead of its literal value. chown
%xapian-directory to the laminar user.
|
|
* genenetwork-development.scm (genenetwork-projects): Separate out
"/run/setuid-programs/sudo" into ...
(sudo): ... new variable.
|
|
* genenetwork-development.scm: use pytest rather than unittest to run
the tests.
|
|
We prefer /export2 to house really large data.
* genenetwork-development-deploy.sh, production-deploy.sh,
public-sparql-deploy.sh, virtuoso-deploy.sh: Move guix container state
to /export2.
|
|
*
genenetwork-development.scm (<genenetwork-configuration>)[sparql-endpoint]:
New field.
(genenetwork3-cd-gexp): Set SPARQL_ENDPOINT in gn3.conf.
(%virtuoso-sparql-port): New variable.
(operating-system)[services]: Configure sparql-endpoint of genenetwork
service.
|
|
* public-sparql-deploy.sh, public-sparql.scm: New files.
|
|
In the interest of good organization, we keep all CD ports at
90*. Production and other services can use ports outside this range.
* genenetwork-development.scm (operating-system)[services]: Move
virtuoso ports from 8891, 8892 to 9081, 9082.
|
|
* genenetwork-development.scm (dump-genenetwork-database): Import
GeneRIF by calling the unified dump script.
|
|
* genenetwork-development.scm (dump-genenetwork-database): Find
GeneRIF data in root of export directory.
|
|
* genenetwork-development.scm (dump-genenetwork-database): Use
guile-zlib.
|
|
* genenetwork-development.scm (genenetwork2-tests): Ungexp
gn2-repository and gn3-repository correctly.
|
|
* genenetwork-development.scm (genenetwork-projects): Import (guix
build utils) in after scripts of CI jobs.
|
|
* genenetwork-development.scm (dump-genenetwork-database): Import
GeneRIF into RDF.
|
|
We unite the genenetwork2 and genenetwork3 development servers into
a single Guix service. This unifies many of the configuration
settings and simplifies the configuration. Changes to the genenetwork3
repository also immediately reflect in the genenetwork2 continuous
deployment without guix-bioinformatics having to be updated.
* genenetwork-development.scm (<development-server-configuration>):
Delete type.
(<genenetwork-configuration>): New type.
(development-server-redeploy, development-server-activation,
genenetwork2-project, genenetwork2-shepherd-service,
genenetwork3-project, genenetwork3-shepherd-service): Delete
functions.
(genenetwork2-tests): Accept <genenetwork-configuration> object
instead of <forge-project> object.
(%genotype-files, %xapian-db-path,
%default-genenetwork2-configuration, genenetwork2-service-type,
%default-genenetwork3-configuration, genenetwork3-service-type):
Delete variables.
(genenetwork-projects, genenetwork2-cd-gexp, genenetwork3-cd-gexp,
genenetwork-shepherd-services): New functions.
(operating-system)[services]: Replace genenetwork2 and genenetwork3
services with the unified genenetwork service.
* genenetwork/development-helper.scm (genenetwork2-runner-gexp,
genenetwork3-runner-gexp): Delete functions.
|
|
* genenetwork-development.scm (genenetwork2-shepherd-service): Do not
expose xapian index.
(genenetwork3-shepherd-service): Expose xapian index.
* genenetwork/development-helper.scm (genenetwork2-runner-gexp): Do
not accept xapian index argument.
(genenetwork3-runner-gexp): Accept config file argument.
|
|
* README.org (Virtuoso container for tux01 production): Remove
user management commands.
(Secure virtuoso authentication): New section.
|
|
*
genenetwork-development.scm (dump-genenetwork-database-project)[repository]:
Use GitHub URI.
|
|
This was a typo.
* genenetwork-development.scm (genenetwork3-project)[ci-jobs]: Trigger
genenetwork2 using laminar, not shepherd.
|
|
* genenetwork-development.scm: Import (forge socket).
(operating-system)[services]: Use <forge-ip-socket> object to specify
webhook port.
|
|
* genenetwork-development.scm: Import (gnu build
linux-container), (gnu system file-systems) and (guix
least-authority).
(genenetwork2-shepherd-service, genenetwork3-shepherd-service):
Deprecate make-forkexec-constructor/container in favor of
least-authority-wrapper.
|