mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Added tool version directories for validation and visualization tools directories.
This commit is contained in:
@@ -1,49 +0,0 @@
|
||||
# runs after the job (and after the default post-filter)
|
||||
|
||||
import pkg_resources
|
||||
pkg_resources.require( "bx-python" )
|
||||
|
||||
from galaxy import datatypes, jobs, util
|
||||
# needed to reference ParseError types, is this bad?
|
||||
from bx.tabular.io import *
|
||||
from bx.intervals.io import *
|
||||
import sys, tempfile, os
|
||||
|
||||
def validate(incoming):
|
||||
"""Validator"""
|
||||
#raise Exception, 'not quite right'
|
||||
pass
|
||||
|
||||
def exec_before_job( app, inp_data, out_data, param_dict, tool=None):
|
||||
"""Build a temp file with errors in it"""
|
||||
errors = []
|
||||
for name, data in inp_data.items():
|
||||
validation_errors = data.validation_errors
|
||||
for error in validation_errors:
|
||||
# build dummy class
|
||||
try:
|
||||
temp = eval(error.err_type)()
|
||||
except:
|
||||
temp = object()
|
||||
# stuff attributes
|
||||
temp.__dict__ = util.string_to_object( error.attributes )
|
||||
errors.append(temp)
|
||||
# There *should* only be 1 input, so we assume there is and continue
|
||||
# base64 pickel
|
||||
errors_str = util.object_to_string( errors )
|
||||
# write
|
||||
database_tmp = "./database/tmp" # globaly visible path
|
||||
error_file = tempfile.NamedTemporaryFile(mode="w", dir=database_tmp, suffix=".b64")
|
||||
error_file_name = error_file.name
|
||||
error_file.close()
|
||||
error_file = open(error_file_name, "w")
|
||||
error_file.write(errors_str)
|
||||
error_file.close()
|
||||
param_dict["errorsfile"] = error_file_name
|
||||
|
||||
|
||||
def exec_after_process( app, inp_data, out_data, param_dict, tool=None, stdout=None, stderr=None):
|
||||
# in a perfect world, changes to param_dict would persist
|
||||
# for now, unlink from tool
|
||||
# os.unlink(param_dict["errorsfile"])
|
||||
pass
|
||||
Reference in New Issue
Block a user