diff --git a/.github/workflows/qiita-plugin-ci.yml b/.github/workflows/qiita-plugin-ci.yml index efdbfca..7d420e0 100644 --- a/.github/workflows/qiita-plugin-ci.yml +++ b/.github/workflows/qiita-plugin-ci.yml @@ -13,7 +13,7 @@ jobs: services: postgres: # Docker Hub image - image: postgres:9.5 + image: postgres:13.4 env: POSTGRES_DB: postgres POSTGRES_USER: postgres @@ -39,7 +39,7 @@ jobs: uses: conda-incubator/setup-miniconda@v2 with: auto-update-conda: true - python-version: 3.6 + python-version: 3.9 - name: Basic dependencies install env: @@ -62,7 +62,7 @@ jobs: # Setting up main qiita conda environment conda config --add channels conda-forge - conda create -q --yes -n qiita python=3.6 pip==9.0.3 libgfortran numpy nginx cython redis + conda create -q --yes -n qiita python=3.9 libgfortran numpy nginx cython redis conda activate qiita pip install -U pip pip install sphinx sphinx-bootstrap-theme nose-timer codecov Click @@ -111,7 +111,7 @@ jobs: unzip -j filtering/bloom-analyses.zip bloom-analyses-master/data/qiime2-artifacts-for-qiita/*.qza -d filtering/ export QP_QIIME2_FILTER_QZA=${PWD}/filtering/ - configure_diversity_types --env-script "source /home/runner/.profile; conda activate qiime2" --server-cert $QIITA_SERVER_CERT + configure_diversity_types --env-script "source /home/runner/.profile; conda activate qiime2" --ca-cert $QIITA_SERVER_CERT configure_visualization_types --env-script "source /home/runner/.profile; conda activate qiime2" --server-cert $QIITA_SERVER_CERT configure_qiime2 --env-script "source /home/runner/.profile; conda activate qiime2; export QP_QIIME2_DBS=${PWD}/databases; export QP_QIIME2_FILTER_QZA=${PWD}/filtering/" --server-cert $QIITA_SERVER_CERT diff --git a/qp_qiime2/tests/test_qiime2.py b/qp_qiime2/tests/test_qiime2.py index bf5bb80..cb3407c 100644 --- a/qp_qiime2/tests/test_qiime2.py +++ b/qp_qiime2/tests/test_qiime2.py @@ -7,7 +7,7 @@ # ----------------------------------------------------------------------------- from unittest import main -from os import remove, stat +from os import remove, stat, environ from shutil import rmtree, copyfile from tempfile import mkdtemp from json import dumps @@ -79,7 +79,7 @@ def test_not_analysis_artifact(self): self.assertEqual(msg, 'Artifact "5" is not an analysis artifact.') def test_feature_classifier(self): - dbpath = join(self.basedir, '..', '..', 'databases', + dbpath = join(environ.get('QP_QIIME2_DBS'), 'gg-13-8-99-515-806-nb-classifier.qza') original_params = { 'qp-hide-method': 'classify_sklearn', @@ -144,6 +144,7 @@ def test_feature_classifier(self): biom_fp_new = join(self.basedir, 'support_files', 'deblur.biom') copyfile(biom_fp_old, biom_fp_old_bk) copyfile(biom_fp_new, biom_fp_old) + self.qclient.push_file_to_central(biom_fp_old) self.data['command'] = dumps( ['qiime2', qiime2_version, 'Pre-fitted sklearn-based ' @@ -164,6 +165,7 @@ def test_feature_classifier(self): # returning original biom copyfile(biom_fp_old_bk, biom_fp_old) + self.qclient.push_file_to_central(biom_fp_old) obs_files = [ai.files for ai in ainfo] obs_artifact_types = [ai.artifact_type for ai in ainfo] obs_output_names = [ai.output_name for ai in ainfo] @@ -1307,7 +1309,7 @@ def test_filter_features(self): self.assertEqual(ainfo[0].output_name, 'filtered_table') # Filter using a qza file - qza_path = join(self.basedir, '..', '..', 'filtering', 'blooms-90.qza') + qza_path = join(environ.get('QP_QIIME2_FILTER_QZA'), 'blooms-90.qza') params.update({ 'Feature metadata used with `where` parameter when selecting ' 'features to retain, or with `exclude_ids` when selecting ' diff --git a/scripts/configure_qiime2 b/scripts/configure_qiime2 index 64454d2..1d5f399 100755 --- a/scripts/configure_qiime2 +++ b/scripts/configure_qiime2 @@ -17,12 +17,14 @@ from qp_qiime2 import plugin @click.option('--env-script', prompt='Environment script', default='source activate qp-qiime2') @click.option('--server-cert', prompt='Server certificate', default='None') -def config(env_script, server_cert): +@click.argument('plugincoupling', required=False, default='filesystem') +def config(env_script, server_cert, plugincoupling): """Generates the Qiita configuration files""" if server_cert == 'None': server_cert = None plugin.generate_config(env_script, 'start_qiime2', - server_cert=server_cert) + server_cert=server_cert, + plugin_coupling=plugincoupling) if __name__ == '__main__':