diff options
Diffstat (limited to 'gn')
-rw-r--r-- | gn/packages/bioinformatics.scm | 73 | ||||
-rw-r--r-- | gn/services/bh20-seq-resource-container.scm | 110 |
2 files changed, 0 insertions, 183 deletions
diff --git a/gn/packages/bioinformatics.scm b/gn/packages/bioinformatics.scm index 9de6ad8..2832ea6 100644 --- a/gn/packages/bioinformatics.scm +++ b/gn/packages/bioinformatics.scm @@ -2096,79 +2096,6 @@ reads, also called read-based phasing or haplotype assembly. It is especially suitable for long reads, but works also well with short reads.") (license license:expat))) -(define-public bh20-seq-resource - (let ((commit "2ae71911cd87ce4f2eabdff21e538267b3270d45") - (revision "4")) - (package - (name "bh20-seq-resource") - (version (git-version "1.0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/pubseq/bh20-seq-resource") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1k6cc88hrcm77jwpdk2084q0zirv2vlbz3c07nmpbhk1lhqk5x0n")) - (modules '((guix build utils))) - (snippet - '(begin - (delete-file "gittaggers.py"))))) - (build-system python-build-system) - (arguments - (list - #:tests? #f ; Tests can't find pytest - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'patch-program-calls - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "bh20sequploader/qc_fasta.py" - (("\"minimap2\"") - (string-append "\"" (search-input-file - inputs "/bin/minimap2") - "\"")))))))) - (propagated-inputs - (list python-arvados-python-client - python-schema-salad - python-magic - python-pyshex - python-pyshexc-0.7 - python-py-dateutil - - ;; for the web - python-flask - python-pyyaml - python-redis - - ;; and for the service - python - gunicorn)) - (inputs - (list minimap2)) - (native-inputs - (list python-pytest-4 ; < 6 - python-pytest-runner-4)) ; < 5 - (home-page "https://github.com/pubseq/bh20-seq-resource") - (synopsis - "Tool to upload SARS-CoV-19 sequences and service to kick off analysis") - (description "This repository provides a sequence uploader for the -COVID-19 Virtual Biohackathon's Public Sequence Resource project. You can use -it to upload the genomes of SARS-CoV-2 samples to make them publicly and freely -available to other researchers.") - (license license:asl2.0)))) - -;; This version has no profile collisions. -(define-public bh20-seq-resource-for-service - (package - ;(inherit (fix-profile-collisions-for-bh20 bh20-seq-resource)) - (inherit - ((package-input-rewriting/spec - `(("python-google-api-core" . ,(const python-google-api-core-1)) - ("python-google-auth" . ,(const python-google-auth-1)) - ("python-pyparsing" . ,(const python-pyparsing-2.4.7)))) - bh20-seq-resource)) - (properties `((hidden? . #t))))) - (define-public python-scanpy-git (let ((commit "590d42309f9ed6550d7b887039990edfc1ac7648") ; April 22, 2020 (revision "1")) diff --git a/gn/services/bh20-seq-resource-container.scm b/gn/services/bh20-seq-resource-container.scm deleted file mode 100644 index e0eccf7..0000000 --- a/gn/services/bh20-seq-resource-container.scm +++ /dev/null @@ -1,110 +0,0 @@ -(define-module (gn services bh20-seq-resource-container)) - -(use-modules (gnu) - (gn packages bioinformatics) - (guix modules) - ((guix packages) #:select (package-source)) - (guix records) - (guix build-system python) ; for python-version from guix/build/python-build-system.scm - (ice-9 match)) -(use-service-modules shepherd) -(use-package-modules compression python python-web) - -(define-record-type* <covid19-pubseq-configuration> - covid19-pubseq-configuration - make-covid19-pubseq-configuration - covid19-pubseq-configuration? - (package covid19-pubseq-configuration-package ; package - (default bh20-seq-resource-for-service)) - (deploy-directory covid19-pubseq-deploy-directory ; string - (default "/srv/http")) - (port covid19-pubseq-configuration-port ; string - (default "5000"))) - -(define covid19-pubseq-activation-service - (match-lambda - (($ <covid19-pubseq-configuration> package deploy-directory port) - #~(begin - (let ((pkg-src #$(package-source package))) - (when (file-exists? #$deploy-directory) - (delete-file-recursively (mkdir-p #$deploy-directory))) - (mkdir-p #$deploy-directory) - (if (file-is-directory? pkg-src) - (copy-recursively pkg-src #$deploy-directory) - (begin - (copy-file pkg-src #$(string-append deploy-directory - "/src.tar.xz")) - (with-directory-excursion #$deploy-directory - (invoke #$(file-append xz "/bin/xz") "-d" "src.tar.xz") - (invoke #$(file-append tar "/bin/tar") "xvf" "src.tar" - "--strip-components=1"))))))))) - -(define covid19-pubseq-shepherd-service - (match-lambda - (($ <covid19-pubseq-configuration> package deploy-directory port) - (with-imported-modules (source-module-closure - '((gnu build shepherd) - (gnu system file-systems))) - (list (shepherd-service - (provision '(covid19-pubseq)) - (requirement '(networking)) - (modules '((gnu build shepherd) - (gnu system file-systems))) - ;(start #~(make-forkexec-constructor/container - (start #~(make-forkexec-constructor - (list - #$(file-append gunicorn "/bin/gunicorn") - (string-append "-blocalhost:" #$port) - "bh20simplewebuploader.main:app") - #:directory #$deploy-directory - #:log-file "/var/log/covid19-pubseq.log" - #:environment-variables - ;(let (pyversion (python-version (@ (gnu packages python) python))) - '("TMPDIR=/export/tmp" - "PYTHONPATH=/run/current-system/profile/lib/python3.9/site-packages") - ; (string-append "PYTHONPATH=/run/current-system/profile/lib/python" pyversion "/site-packages"))) - ;#:mappings - ;(list (file-system-mapping - ; (source "/export/tmp") - ; (target source) - ; (writable? #t)) - ; (file-system-mapping - ; ;; TODO: Don't hardcode python version! - ; (source "/run/current-system/profile/lib/python3.9/site-packages") - ; (target source))) - )) - (stop #~(make-kill-destructor)))))))) - -(define covid19-pubseq-service-type - (service-type - (name 'covid19-pubseq) - (extensions - (list - (service-extension shepherd-root-service-type - covid19-pubseq-shepherd-service) - (service-extension activation-service-type - covid19-pubseq-activation-service) - (service-extension profile-service-type - (compose list - covid19-pubseq-configuration-package)))) - (default-value (covid19-pubseq-configuration)) - (description - "Run a COVID-19 PubSeq: Public SARS-CoV-2 Sequence Resource Webserver."))) - -(operating-system - (host-name "covid19-pubseq") - (timezone "Etc/UTC") - (locale "en_US.utf8") - - (bootloader (bootloader-configuration - (bootloader grub-bootloader) - (targets '("does-not-matter")))) - (file-systems %base-file-systems) - ;; No firmware for VMs. - (firmware '()) - ;; We don't need any packages inside the container. - (packages '()) - - (services (list (service covid19-pubseq-service-type)))) - -;; guix system container /home/shepherd/guix-bioinformatics/gn/services/bh20-seq-resource-container.scm --share=/export/tmp=/export/tmp --network |