Loading lib/galaxy/tools/actions/model_operations.py +16 −2 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ class ModelOperationToolAction(DefaultToolAction): execution_cache=None, collection_info=None, job_callback=None, skip=False, **kwargs, ): incoming = incoming or {} Loading Loading @@ -93,11 +94,15 @@ class ModelOperationToolAction(DefaultToolAction): history=history, tags=preserved_tags, hdca_tags=preserved_hdca_tags, skip=skip, ) self._record_inputs(trans, tool, job, incoming, inp_data, inp_dataset_collections) self._record_outputs(job, out_data, output_collections) if job_callback: job_callback(job) if skip: job.state = job.states.SKIPPED else: job.state = job.states.OK trans.sa_session.add(job) Loading @@ -108,7 +113,7 @@ class ModelOperationToolAction(DefaultToolAction): return job, out_data, history def _produce_outputs( self, trans: "ProvidesUserContext", tool, out_data, output_collections, incoming, history, tags, hdca_tags self, trans: "ProvidesUserContext", tool, out_data, output_collections, incoming, history, tags, hdca_tags, skip ): tag_handler = trans.tag_handler tool.produce_outputs( Loading @@ -128,4 +133,13 @@ class ModelOperationToolAction(DefaultToolAction): value.visible = False mapped_over_elements[name].hda = value # We probably need to mark all outputs as skipped, not just the outputs of whatever the database op tools do ? # This is probably not exactly right, but it might also work in most cases if skip: for output_collection in output_collections.out_collections.values(): output_collection.mark_as_populated() for hdca in output_collections.out_collection_instances.values(): hdca.visible = False # Would we also need to replace the datasets with skipped datasets? trans.sa_session.add_all(out_data.values()) Loading
lib/galaxy/tools/actions/model_operations.py +16 −2 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ class ModelOperationToolAction(DefaultToolAction): execution_cache=None, collection_info=None, job_callback=None, skip=False, **kwargs, ): incoming = incoming or {} Loading Loading @@ -93,11 +94,15 @@ class ModelOperationToolAction(DefaultToolAction): history=history, tags=preserved_tags, hdca_tags=preserved_hdca_tags, skip=skip, ) self._record_inputs(trans, tool, job, incoming, inp_data, inp_dataset_collections) self._record_outputs(job, out_data, output_collections) if job_callback: job_callback(job) if skip: job.state = job.states.SKIPPED else: job.state = job.states.OK trans.sa_session.add(job) Loading @@ -108,7 +113,7 @@ class ModelOperationToolAction(DefaultToolAction): return job, out_data, history def _produce_outputs( self, trans: "ProvidesUserContext", tool, out_data, output_collections, incoming, history, tags, hdca_tags self, trans: "ProvidesUserContext", tool, out_data, output_collections, incoming, history, tags, hdca_tags, skip ): tag_handler = trans.tag_handler tool.produce_outputs( Loading @@ -128,4 +133,13 @@ class ModelOperationToolAction(DefaultToolAction): value.visible = False mapped_over_elements[name].hda = value # We probably need to mark all outputs as skipped, not just the outputs of whatever the database op tools do ? # This is probably not exactly right, but it might also work in most cases if skip: for output_collection in output_collections.out_collections.values(): output_collection.mark_as_populated() for hdca in output_collections.out_collection_instances.values(): hdca.visible = False # Would we also need to replace the datasets with skipped datasets? trans.sa_session.add_all(out_data.values())