diff options
author | Peter Amstutz | 2020-07-05 21:33:26 +0000 |
---|---|---|
committer | Peter Amstutz | 2020-07-05 21:33:26 +0000 |
commit | 4f30e506055acb788a1ff1bbcb6359c4413a4eab (patch) | |
tree | 08d564d00b19a71fe670588880f30225d7cb442d /bh20sequploader/qc_metadata.py | |
parent | dd0ff95c6973953542cc3a275be2b057b30ff577 (diff) | |
download | bh20-seq-resource-4f30e506055acb788a1ff1bbcb6359c4413a4eab.tar.gz bh20-seq-resource-4f30e506055acb788a1ff1bbcb6359c4413a4eab.tar.lz bh20-seq-resource-4f30e506055acb788a1ff1bbcb6359c4413a4eab.zip |
Add bh20-seq-analyzer --print-status
Get status from new property "status: validated/rejected"
Also store QC fail error message.
Diffstat (limited to 'bh20sequploader/qc_metadata.py')
-rw-r--r-- | bh20sequploader/qc_metadata.py | 21 |
1 files changed, 7 insertions, 14 deletions
diff --git a/bh20sequploader/qc_metadata.py b/bh20sequploader/qc_metadata.py index 9122ace..2b57991 100644 --- a/bh20sequploader/qc_metadata.py +++ b/bh20sequploader/qc_metadata.py @@ -21,20 +21,13 @@ def qc_metadata(metadatafile): shex = pkg_resources.resource_stream(__name__, "bh20seq-shex.rdf").read().decode("utf-8") if not isinstance(avsc_names, schema_salad.avro.schema.Names): - print(avsc_names) - return False + raise Exception(avsc_names) - try: - doc, metadata = schema_salad.schema.load_and_validate(document_loader, avsc_names, metadatafile, True) - g = schema_salad.jsonld_context.makerdf("workflow", doc, document_loader.ctx) - rslt, reason = evaluate(g, shex, doc["id"], "https://raw.githubusercontent.com/arvados/bh20-seq-resource/master/bh20sequploader/bh20seq-shex.rdf#submissionShape") + doc, metadata = schema_salad.schema.load_and_validate(document_loader, avsc_names, metadatafile, True) + g = schema_salad.jsonld_context.makerdf("workflow", doc, document_loader.ctx) + rslt, reason = evaluate(g, shex, doc["id"], "https://raw.githubusercontent.com/arvados/bh20-seq-resource/master/bh20sequploader/bh20seq-shex.rdf#submissionShape") - if not rslt: - log.debug(reason) - print(reason) + if not rslt: + raise Exception(reason) - return rslt - except Exception as e: - traceback.print_exc() - log.warn(e) - return False + return True |