diff --git a/qiita_db/processing_job.py b/qiita_db/processing_job.py index 511381f87..4e99d3b5b 100644 --- a/qiita_db/processing_job.py +++ b/qiita_db/processing_job.py @@ -600,7 +600,7 @@ def complete(self, success, artifacts_data=None, error=None): else: if self.command.software.type == 'artifact definition': job_params = self.parameters.values - if job_params['provenance'] is not None: + if job_params.get('provenance') is not None: # This artifact definition job is a result of a command # run, if it fails, set up the status of the "parent" # job also as failed, and assign the sem error message diff --git a/qiita_db/test/test_processing_job.py b/qiita_db/test/test_processing_job.py index 35c7a6579..6ad60ee04 100644 --- a/qiita_db/test/test_processing_job.py +++ b/qiita_db/test/test_processing_job.py @@ -404,6 +404,15 @@ def test_complete_no_artifact_data(self): job.complete(True) self.assertEqual(job.status, 'success') + job = qdb.processing_job.ProcessingJob.create( + qdb.user.User('test@foo.bar'), + qdb.software.Parameters.load( + qdb.software.Command(5), + values_dict={"input_data": 1})) + job._set_status('running') + job.complete(False, error='Some Error') + self.assertEqual(job.status, 'error') + def test_complete_type(self): fd, fp = mkstemp(suffix="_table.biom") self._clean_up_files.append(fp) diff --git a/scripts/qiita b/scripts/qiita index 23ef3fb95..a035dfbba 100755 --- a/scripts/qiita +++ b/scripts/qiita @@ -491,15 +491,5 @@ def update(): _activate_or_update_plugins(update=True) -# ############################################################################# -# PRIVATE COMMANDS -# ############################################################################# -@private.command() -@click.argument('job_id', required=True, type=click.STRING) -@click.argument('payload', required=True, type=click.STRING) -def complete_job(job_id, payload): - qdb.commands.complete_job_cmd(job_id, payload) - - if __name__ == '__main__': qiita() diff --git a/scripts/qiita-private b/scripts/qiita-private new file mode 100755 index 000000000..698caf845 --- /dev/null +++ b/scripts/qiita-private @@ -0,0 +1,27 @@ +#!/usr/bin/env python + +# ----------------------------------------------------------------------------- +# Copyright (c) 2014--, The Qiita Development Team. +# +# Distributed under the terms of the BSD 3-clause License. +# +# The full license is in the file LICENSE, distributed with this software. +# ----------------------------------------------------------------------------- + +import click +import qiita_db as qdb + + +@click.group() +def qiita_private(): + pass + + +@qiita_private.command() +@click.argument('job_id', required=True, type=click.STRING) +@click.argument('payload', required=True, type=click.STRING) +def complete_job(job_id, payload): + qdb.commands.complete_job_cmd(job_id, payload) + +if __name__ == '__main__': + qiita_private() diff --git a/scripts/qiita-private-launcher b/scripts/qiita-private-launcher index b77811930..0e4d3ffb0 100755 --- a/scripts/qiita-private-launcher +++ b/scripts/qiita-private-launcher @@ -31,14 +31,12 @@ source ~/.bash_profile @click.argument('arguments', required=True, nargs=-1) def start(qiita_env, command, arguments): """Starts the plugin environment""" - cmd = ['qiita private', command] + cmd = ['qiita-private', command] cmd.extend(["'%s'" % arg for arg in arguments]) fd, fp = mkstemp(suffix=".sh") close(fd) with open(fp, 'w') as f: f.write(SCRIPT % (qiita_env, ' '.join(cmd))) - with open("/home/travis/trying_to_debug.txt", "w") as f: - f.write(SCRIPT % (qiita_env, ' '.join(cmd))) cmd = "bash %s" % fp proc = Popen(cmd, shell=True, stdout=PIPE, stderr=PIPE) stdout, stderr = proc.communicate()