aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-10-20Use GitHub URI for dump-genenetwork-database repo.Arun Isaac
* genenetwork-development.scm (dump-genenetwork-database-project)[repository]: Use GitHub URI.
2022-10-18Trigger genenetwork2 using laminar, not shepherd.Arun Isaac
This was a typo. * genenetwork-development.scm (genenetwork3-project)[ci-jobs]: Trigger genenetwork2 using laminar, not shepherd.
2022-10-17Use <forge-ip-socket> object to specify webhook port.Arun Isaac
* genenetwork-development.scm: Import (forge socket). (operating-system)[services]: Use <forge-ip-socket> object to specify webhook port.
2022-10-17Use least-authority-wrapper.Arun Isaac
* 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.
2022-10-14Trigger genenetwork2 tests after genenetwork3 tests.Arun Isaac
Since genenetwork2 depends on genenetwork3, updates to genenetwork3 should trigger the genenetwork2 tests. * genenetwork-development.scm (genenetwork3-project): Trigger genenetwork2 tests after genenetwork3 tests.
2022-10-14Comment about triggering of Mechanical Rob.Arun Isaac
* genenetwork-development.scm (genenetwork2-project): Comment about triggering of Mechanical Rob after genenetwork2 tests.
2022-10-14Convert port number to string on host.Arun Isaac
* genenetwork-development.scm (genenetwork2-shepherd-service): Convert port number to string on the host, not on the build side.
2022-10-14Pull in latest genenetwork3 when running genenetwork2 tests.Arun Isaac
So far, whenever genenetwork2 code needed the latest updates from genenetwork3, the guix-bioinformatics channel had to be updated and the development container had to be rebuilt. No more. From now on, the latest genenetwork3 code will be pulled in at all times. The development container need only be rebuilt when the dependencies of genenetwork2 or genenetwork3 change. We may revisit this decision once genenetwork2 and genenetwork3 are better decoupled and we have semantically versioned releases. * genenetwork-development.scm (genenetwork2-tests): Pull in latest genenetwork3 when running genenetwork2 tests.
2022-10-12Add virtuoso container for tux01 production.Arun Isaac
* virtuoso.scm, virtuoso-deploy.sh: New files. * README.org (Virtuoso container for tux01 production): New section.
2022-10-06Enable rust backtrace in genenetwork2 CD.Frederick Muriuki Muriithi
* genenetwork/development-helper.scm (genenetwork2-runner-gexp): Set RUST_BACKTRACE environment variable. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2022-09-29Expose root of data directory instead of its sub-directories.Arun Isaac
* genenetwork-development-deploy.sh (container_script): Expose root of data directory instead of its sub-directories.
2022-09-29Run genenetwork2 CD on gunicorn.Arun Isaac
* genenetwork/development-helper.scm (genenetwork2-runner-gexp): Run genenetwork2 CD on gunicorn.
2022-09-26Set up xapian search index for genenetwork2 CD.Arun Isaac
* genenetwork-development.scm (%xapian-db-path): New variable. (genenetwork2-shepherd-service)[start]: Share %xapian-db-path with the container. (%default-genenetwork2-configuration)[runner]: Pass %xapian-db-path to CD runner. * genenetwork/development-helper.scm (genenetwork2-runner-gexp): Accept xapian-db-path argument and set XAPIAN_DB_PATH environment variable. * genenetwork-development-deploy.sh: Expose /export/data/genenetwork/xapian in the container.
2022-09-21Use pytest, rather than unittest, to run tests.Frederick Muriuki Muriithi
* genenetwork-development.scm (genenetwork2-project)[ci-jobs]: Use pytest instead of unittest. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2022-09-15Copy laminar HTML template from git source.Arun Isaac
The upstream laminar package now uses git-fetch instead of url-fetch. Hence, we must adapt our laminar template G-expression. * genenetwork-development.scm (laminar-template-gexp): Copy /src/resources/index.html from git source instead of extracting it from a tarball.
2022-09-15Link to CD from the navigation menu.Arun Isaac
* genenetwork-development.scm (laminar-template-gexp): Link to continuous deployment from the navigation menu.
2022-09-08Set genenetwork3 API endpoint used by genenetwork2 to /api3.Arun Isaac
* genenetwork/development-helper.scm (genenetwork2-runner-gexp): Set GN_SERVER_URL to /api3.
2022-09-08Expose continuously deployed genenetwork at cd.genenetwork.org.Arun Isaac
* genenetwork-development.scm (%genenetwork2-port): New variable. (genenetwork2-project): Use %genenetwork2-port. (development-server-reverse-proxy-server-block): New function. (operating-system)[services]: Use %genenetwork2-port. Add reverse proxy block for cd.genenetwork.org.
2022-09-08Use %genenetwork3-port in genenetwork2 tests.Arun Isaac
* genenetwork-development.scm (genenetwork2-tests): Use %genenetwork3-port.
2022-09-06Expose webhook at ci.genenetwork.org.Arun Isaac
* genenetwork-development.scm (%webhook-port): New variable. (laminar-server-reverse-proxy-server-block): Expose webhook under /hooks/. (operating-system)[services]: Use %webhook-port.
2022-09-05Set host name of the laminar nginx server.Arun Isaac
* genenetwork-development.scm (laminar-reverse-proxy-server-block): Set host name of the laminar nginx server.
2022-09-05Do not list guix channel in CI published channels.scm.Arun Isaac
The guix channel is a dependency of the gn-bioinformatics channel. Therefore, it is always implicitly present. * genenetwork-development.scm (operating-system)[services]: Do not list guix channel in CI published channels.scm.
2022-09-05Do not share /srv/http into container.Arun Isaac
/srv/http is no longer. It was used earlier for the gn-gemtext-threads website. * genenetwork-development-deploy.sh: Do not share /srv/http into container.
2022-09-05Remove website directory of gn-gemtext-threads forge project.Arun Isaac
The gn-gemtext-threads forge project does not need a website directory. Its website is completely managed by the tissue service. * genenetwork-development.scm (gn-gemtext-threads-project)[website-directory]: Remove.
2022-08-29Run mysql server in production.Arun Isaac
* production.scm: Import (gnu services databases). (operating-system)[services]: Add mysql-service-type. * production-deploy.sh: Share mysql directory with container.
2022-08-29Run production in separate network namespace.Arun Isaac
The production container need interact with the outside world only through a single Unix socket file on which the GeneNetwork web server listens. Hide all other interfaces to it. * production-deploy.sh (container_script): Remove --network flag.
2022-08-25Run genenetwork services as genenetwork user and group.Arun Isaac
* genenetwork-development.scm (%genenetwork-accounts): New variable. (genenetwork2-shepherd-service, genenetwork3-shepherd-service): Run as genenetwork user and group. (genenetwork2-service-type, genenetwork3-service-type): Create genenetwork user and group.
2022-08-25Add production container.Arun Isaac
* production-deploy.sh, production.scm: New files.
2022-08-25Document the required channels.Arun Isaac
* README.org (GeneNetwork development container): Document the required channels.
2022-08-25Credit Frederick for 5cd33ed762f6fe1301f6e5bb615eb9101012af23.Arun Isaac
* genenetwork-development.scm: Add copyright line for Frederick Muriuki Muriithi.
2022-08-23Expose CD logs to host.Arun Isaac
* genenetwork-development.scm (genenetwork2-shepherd-service, genenetwork3-shepherd-service): Move log files into /var/log/cd. * genenetwork-development-deploy.sh: Share /var/log/cd with host.
2022-08-16Add trailing slash to GN_PROXY_URL.Arun Isaac
The urljoin function reduces a URL without a trailing slash to just the base, e.g. "http://genenetwork.org/gn3-proxy" is reduced to "http://genenetwork.org", which is not what we want. * genenetwork-development.scm (genenetwork2-tests): Add trailing slash to GN_PROXY_URL.
2022-08-16Add trailing slash to GN_PROXY_URL.Frederick Muriuki Muriithi
The urljoin function reduces a URL without a trailing slash to just the base, e.g. "http://genenetwork.org/gn3-proxy" is reduced to "http://genenetwork.org", which is not what we want. * genenetwork/development-helper.scm (genenetwork2-runner-gexp): Add trailing slash to GN_PROXY_URL environment variable. Signed-off-by: Arun Isaac <arunisaac@systemreboot.net>
2022-07-08Map mysqld socket into the genenetwork3 container.Arun Isaac
* genenetwork-development.scm (genenetwork3-shepherd-service): Map mysqld socket into the container.
2022-07-08Set GN_SERVER_URL when running genenetwork2.Arun Isaac
* genenetwork/development-helper.scm (genenetwork2-runner-gexp): Set GN_SERVER_URL.
2022-07-08Support tissue URIs without the html extension.Arun Isaac
* genenetwork-development.scm (tissue-reverse-proxy-server-block): Support URIs without the html extension.
2022-07-06Switch to tissue service from guix-forge.Arun Isaac
* genenetwork-development-deploy.sh: Share tissue state directory with container. * genenetwork-development.scm: Do not import tissue from (gn packages gemini). Import (forge tissue). (<tissue-configuration>, <tissue-host>): Delete types. (%tissue-accounts, tissue-service-type): Delete variables. (gn-gemtext-threads-website, gn-gemtext-threads-index, tissue-conf-gexp, tissue-shepherd-service): Delete functions. (gn-gemtext-threads-project)[ci-jobs]: Use tissue pull in gn-gemtext-threads job. (tissue-reverse-proxy-server-block): Use default tissue state directory and unix socket paths. Do not accept them as arguments. (operating-system)[services]: Use new tissue-service-type parameters. Update invocation of tissue-reverse-proxy-server-block. * genenetwork/development-helper.scm (tissue-website-gexp, tissue-index-gexp): Delete functions.
2022-07-01Switch to new tissue configuration file.Arun Isaac
* genenetwork-development.scm (<tissue-configuration>)[address, port, indexed-repository]: Delete fields. [listen, hosts]: New fields. * genenetwork-development.scm (<tissue-host>): New type. (tissue-conf-gexp): New function. (tissue-shepherd-service): Remove --address and --port arguments. Compute and pass tissue.conf configuration file. Create file system mappings for all hosts. (operating-system)[services]: Use new tissue-configuration fields.
2022-06-29Build tissue static website in temporary writable directory.Arun Isaac
tissue now builds a xapian index and this requires a writable directory. * genenetwork/development-helper.scm (tissue-website-gexp): Build static website in temporary writable directory.
2022-06-29Add tissue search interface.Arun Isaac
* genenetwork-development.scm: Import shadow from (gnu packages admin). (gn-gemtext-threads-index): New function. (gn-gemtext-threads-project)[ci-jobs]: Add gn-gemtext-threads-index. (<tissue-configuration>): New type. (tissue-shepherd-service, tissue-reverse-proxy-server-block): New function. (%tissue-accounts, tissue-service-type): New variables. (operating-system)[services]: Add tissue tissue service and reverse proxy it. * genenetwork/development-helper.scm (tissue-index-gexp): New function.
2022-06-29Remove tissue's dependence on the git CLI tool.Arun Isaac
tissue now uses libgit2 through guile-git and does not use the git CLI tool. * genenetwork-development.scm (gn-gemtext-threads-website): Remove git-minimal from manifest. * genenetwork/development-helper.scm (tissue-website-gexp): Remove reassurance to git.
2022-06-24Persist virtuoso database.Arun Isaac
* genenetwork-development-deploy.sh: Persist virtuoso database at /var/guix-containers/genenetwork-development/var/lib/virtuoso.
2022-06-24Import missing SRFI-26 in dump-genenetwork-database G-exp.Arun Isaac
This was missed out in 96fb9608242254a1fc53bbd71168db4245458c8f. * genenetwork-development.scm (dump-genenetwork-database): Import (srfi srfi-26).
2022-06-24Send rapper output to /dev/null instead of using --ignore-errors.Arun Isaac
The --ignore-errors flag not only avoids printing triples, but also actually ignores errors. What a surprise! ;-) As a result, rapper does not stop invalid turtle files, and they end up erroring out when uploaded to virtuoso. * genenetwork-development.scm (dump-genenetwork-database): Send rapper output to /dev/null instead of using --ignore-errors.
2022-06-24Set ownership of database dump directories too, not just files.Arun Isaac
* genenetwork-development.scm (operating-system)[services]: In the set-dump-genenetwork-database-export-directory-permissions service, set ownership of directories in %dump-genenetwork-database-export-directory too, not just the files.
2022-06-14Disable laminar proxy buffering by passing X-Accel-Buffering.Arun Isaac
* genenetwork-development.scm (laminar-reverse-proxy-server-block): Disable laminar proxy buffering by passing the X-Accel-Buffering HTTP header through.
2022-06-14Reassure git that the gn-gemtext-threads source directory is safe.Arun Isaac
* genenetwork/development-helper.scm (tissue-website-gexp): Reassure git that the gn-gemtext-threads source directory is safe. * genenetwork-development.scm (gn-gemtext-threads-website): Add git-minimal to manifest.
2022-06-10Link to channels.scm from laminar page.Arun Isaac
* genenetwork-development.scm (laminar-template-gexp): Link to channels.scm.
2022-06-10Publish channels.scm for laminar.Arun Isaac
* genenetwork-development.scm: Import (gnu services web) and (guix channels). (channels-scm-gexp, laminar-reverse-proxy-server-block): New functions. (operating-system)[services]: Bind laminar service to 9089. Add nginx service on 9090 to reverse proxy laminar.
2022-06-10Relabel issue tracker link as "Issues".Arun Isaac
* genenetwork-development.scm (laminar-template-gexp): Relabel issue tracker link as "Issues".