diff options
Diffstat (limited to 'gn3/api')
-rw-r--r-- | gn3/api/gemma.py | 4 | ||||
-rw-r--r-- | gn3/api/general.py | 16 |
2 files changed, 17 insertions, 3 deletions
diff --git a/gn3/api/gemma.py b/gn3/api/gemma.py index 81e185d..6b0b20e 100644 --- a/gn3/api/gemma.py +++ b/gn3/api/gemma.py @@ -9,8 +9,8 @@ from flask import request from gn3.commands import queue_cmd from gn3.commands import run_cmd -from gn3.file_utils import cache_ipfs_file -from gn3.file_utils import jsonfile_to_dict +from gn3.fs_helpers import cache_ipfs_file +from gn3.fs_helpers import jsonfile_to_dict from gn3.computations.gemma import generate_gemma_cmd from gn3.computations.gemma import do_paths_exist diff --git a/gn3/api/general.py b/gn3/api/general.py index 38e6154..cebb2e3 100644 --- a/gn3/api/general.py +++ b/gn3/api/general.py @@ -5,7 +5,8 @@ from flask import current_app from flask import jsonify from flask import request -from gn3.file_utils import extract_uploaded_file +from gn3.fs_helpers import extract_uploaded_file +from gn3.commands import run_cmd general = Blueprint("general", __name__) @@ -50,3 +51,16 @@ TTL is set in the metadata file. If none is provided, the default is 1 week. if results.get("status") > 0: status = 500 return jsonify(results), status + + +@general.route("/qtl/run/<geno_filestr>/<pheno_filestr>", + methods=["POST"], + strict_slashes=False) +def run_r_qtl(geno_filestr, pheno_filestr): + """Run r_qtl command using the written rqtl_wrapper program + + """ + rqtl_wrapper = current_app.config["RQTL_WRAPPER"] + cmd = (f"Rscript {rqtl_wrapper} " + f"{geno_filestr} {pheno_filestr}") + return jsonify(run_cmd(cmd)), 201 |