From edc853caf29f6c372e70f1f5dd14ca0b49f8a515 Mon Sep 17 00:00:00 2001 From: bio-la Date: Wed, 28 Feb 2024 10:50:47 +0100 Subject: [PATCH] multiVI, atac test --- .github/workflows/integration01-ci.yml | 98 ++++++++++++++++++++++++++ tests/integration_1/pipeline.yml | 9 ++- 2 files changed, 102 insertions(+), 5 deletions(-) create mode 100644 .github/workflows/integration01-ci.yml diff --git a/.github/workflows/integration01-ci.yml b/.github/workflows/integration01-ci.yml new file mode 100644 index 00000000..5f3f8c57 --- /dev/null +++ b/.github/workflows/integration01-ci.yml @@ -0,0 +1,98 @@ +name: Run tutorials (integration) + +on: + push: + branches: + - main + pull_request: + branches: + - main + +env: + debug: 'true' + +jobs: + integration: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + os: ["ubuntu-latest"] # , "macos-latest", "windows-latest" + python-version: ["3.10"] + + steps: + - uses: actions/checkout@v4 + + - name: File tree + if: env.debug == 'true' + run: tree + + - uses: conda-incubator/setup-miniconda@v3 + with: + miniforge-version: latest + auto-activate-base: true + auto-update-conda: true + channels: conda-forge + channel-priority: strict + activate-environment: pipeline_env + environment-file: pipeline_env.yaml + + - name: Install Panpipes + shell: bash -el {0} + run: | + pip install -e . + conda list + + - name: Conda info + if: env.debug == 'true' + shell: bash -el {0} + run: conda info + + - name: Conda list + if: env.debug == 'true' + shell: pwsh + run: conda list + + # Note: all three files are renamed during the download to trim the "subsample_" prefix + - name: Preparing the data + run: | + mkdir -p teaseq/integration && cd teaseq/integration + curl -L -o teaseq.h5mu https://figshare.com/ndownloader/files/44471927 + + # Note: we run the following to test that the commands works + # However, the following task will replacing the file anyway + - name: Preparing the configuration file + shell: bash -el {0} + run: | + cd teaseq/integration + panpipes integration config + + - name: Edit the submission file + run: | + cd teaseq/integration + curl -o pipeline.yml https://github.com/DendrouLab/panpipes/blob/fc_cipy/tests/integration_1/pipeline.yml + + - name: Replace template contents in configuration file + run: | + cd teaseq/integration + sed -i 's+/Users/fabiola.curion/Documents/devel/miniconda3/envs/pipeline_env+pipeline_env+g' pipeline.yml + + - name: File tree + if: env.debug == 'true' + run: tree teaseq + + - name: Review pipeline tasks + shell: bash -el {0} + run: | + cd teaseq/integration + panpipes integration show full --local + + - name: Run pipeline tasks + shell: bash -el {0} + run: | + cd teaseq/integration + panpipes integration make full --local + + - name: File tree + if: env.debug == 'true' + run: tree teaseq diff --git a/tests/integration_1/pipeline.yml b/tests/integration_1/pipeline.yml index 0f5c7407..e84655fb 100644 --- a/tests/integration_1/pipeline.yml +++ b/tests/integration_1/pipeline.yml @@ -40,7 +40,7 @@ preprocessed_obj: teaseq.h5mu # unimodal: correct each modality independently rna: # True or false depending on whether you want to run batch correction - run: True + run: False # what method(s) to use to run batch correction, you can specify multiple # choices: harmony,bbknn,scanorama,scvi (comma-seprated string, no spaces) tools: harmony,scvi,bbknn @@ -109,7 +109,7 @@ rna: #-------------------------- prot: # True or false depending on whether you want to run batch correction - run: True + run: False # what method(s) to use to run batch correction, you can specify multiple # choices: harmony,bbknn,combat tools: harmony @@ -177,7 +177,7 @@ atac: # BBKNN args # https://bbknn.readthedocs.io/en/latest/ #----------------------------- bbknn: - neighbors_within_batch: + neighbors_within_batch: 30 #---------------------------- # find neighbour parameters #----------------------------- @@ -204,8 +204,7 @@ multimodal: # choices: totalvi, mofa, MultiVI, WNN # list e.g. below tools: - - WNN - - totalvi + - MultiVI # this is the column you want to batch correct on. if you specify a comma separated list, # they will be all used simultaneosly. if you want to test correction for one at a time,