diff options
Diffstat (limited to 'README.md')
-rw-r--r-- | README.md | 37 |
1 files changed, 30 insertions, 7 deletions
@@ -1,4 +1,11 @@ # genenetwork3 + +[![GeneNetwork3 CI +badge](https://ci.genenetwork.org/badge/genenetwork3.svg)](https://ci.genenetwork.org/jobs/genenetwork3) +[![GeneNetwork3 pylint CI +badge](https://ci.genenetwork.org/badge/genenetwork3-pylint.svg)](https://ci.genenetwork.org/jobs/genenetwork3-pylint) +[![GeneNetwork3 mypy CI badge](https://ci.genenetwork.org/badge/genenetwork3-mypy.svg)](https://ci.genenetwork.org/jobs/genenetwork3-mypy) + GeneNetwork3 REST API for data science and machine learning ## Installation @@ -9,8 +16,8 @@ Install GNU Guix - this can be done on every running Linux system. There are at least three ways to start GeneNetwork3 with GNU Guix: -1. Create an environment with `guix environment` -2. Create a container with `guix environment -C` +1. Create an environment with `guix shell` +2. Create a container with `guix shell -C` 3. Use a profile and shell settings with `source ~/opt/genenetwork3/etc/profile` #### Create an environment: @@ -18,13 +25,13 @@ There are at least three ways to start GeneNetwork3 with GNU Guix: Simply load up the environment (for development purposes): ```bash -guix environment --load=guix.scm +guix shell -Df guix.scm ``` Also, make sure you have the [guix-bioinformatics](https://git.genenetwork.org/guix-bioinformatics/guix-bioinformatics) channel set up. ```bash -guix environment --expose=$HOME/genotype_files/ --load=guix.scm +guix shell --expose=$HOME/genotype_files/ -Df guix.scm python3 import redis ``` @@ -32,10 +39,9 @@ python3 #### Run a Guix container ``` -guix environment -C --network --expose=$HOME/genotype_files/ --load=guix.scm +guix shell -C --network --expose=$HOME/genotype_files/ -Df guix.scm ``` - #### Using a Guix profile (or rolling back) Create a new profile with @@ -81,7 +87,13 @@ See also instructions in [.guix.scm](.guix.scm). To run tests: ```bash -python -m unittest discover -v +pytest +``` + +To specify unit-tests: + +```bash +pytest -k unit_test ``` Running pylint: @@ -125,6 +137,8 @@ And for the scalable production version run gunicorn --bind 0.0.0.0:8080 --workers 8 --keep-alive 6000 --max-requests 10 --max-requests-jitter 5 --timeout 1200 wsgi:app ``` +(see also the [.guix_deploy](./.guix_deploy) script) + ## Using python-pip IMPORTANT NOTE: we do not recommend using pip tools, use Guix instead @@ -193,3 +207,12 @@ T2 6.4471 6.7191 5.98015 6.68051 ... ``` It is very important that the column header names for the strains correspond to the genotype file used. + +## Partial Correlations + +The partial correlations feature depends on the following external systems to run correctly: + +- Redis: Acts as a communications broker between the webserver and external processes +- `sheepdog/worker.py`: Actually runs the external processes that do the computations + +These two systems should be running in the background for the partial correlations feature to work correctly. |