mirror of
https://github.com/galaxyproject/galaxy.git
synced 2026-09-24 16:30:27 +08:00
Prevent upload job creation from clobbering the input if linking data into Galaxy.
This commit is contained in:
@@ -752,7 +752,10 @@ class JobWrapper( object ):
|
||||
sizes = []
|
||||
output_paths = self.get_output_fnames()
|
||||
for outfile in [ str( o ) for o in output_paths ]:
|
||||
sizes.append( ( outfile, os.stat( outfile ).st_size ) )
|
||||
if os.path.exists( outfile ):
|
||||
sizes.append( ( outfile, os.stat( outfile ).st_size ) )
|
||||
else:
|
||||
sizes.append( ( outfile, 0 ) )
|
||||
return sizes
|
||||
|
||||
def setup_external_metadata( self, exec_dir = None, tmp_dir = None, dataset_files_path = None, config_root = None, datatypes_config = None, set_extension = True, **kwds ):
|
||||
@@ -999,7 +1002,10 @@ class TaskWrapper(JobWrapper):
|
||||
sizes = []
|
||||
output_paths = self.get_output_fnames()
|
||||
for outfile in [ str( o ) for o in output_paths ]:
|
||||
sizes.append( ( outfile, os.stat( outfile ).st_size ) )
|
||||
if os.path.exists( outfile ):
|
||||
sizes.append( ( outfile, os.stat( outfile ).st_size ) )
|
||||
else:
|
||||
sizes.append( ( outfile, 0 ) )
|
||||
return sizes
|
||||
|
||||
def setup_external_metadata( self, exec_dir = None, tmp_dir = None, dataset_files_path = None, config_root = None, datatypes_config = None, set_extension = True, **kwds ):
|
||||
|
||||
@@ -323,12 +323,14 @@ def create_job( trans, params, tool, json_file_path, data_list, folder=None, ret
|
||||
for i, dataset in enumerate( data_list ):
|
||||
job.add_output_library_dataset( 'output%i' % i, dataset )
|
||||
# Create an empty file immediately
|
||||
open( dataset.file_name, "w" ).close()
|
||||
if not dataset.dataset.external_filename:
|
||||
open( dataset.file_name, "w" ).close()
|
||||
else:
|
||||
for i, dataset in enumerate( data_list ):
|
||||
job.add_output_dataset( 'output%i' % i, dataset )
|
||||
# Create an empty file immediately
|
||||
open( dataset.file_name, "w" ).close()
|
||||
if not dataset.dataset.external_filename:
|
||||
open( dataset.file_name, "w" ).close()
|
||||
job.state = job.states.NEW
|
||||
trans.sa_session.add( job )
|
||||
trans.sa_session.flush()
|
||||
|
||||
Reference in New Issue
Block a user