99import sys
1010
1111from outsource .Shell import Shell
12- from outsource .Config import Config
12+ from outsource .Config import config , pegasus_path , base_dir , work_dir , runs_dir
1313
14- config = Config ()
1514logger = logging .getLogger ("outsource" )
1615
1716# Pegasus environment
18- sys .path .insert (0 , os .path .join (config . pegasus_path () , 'lib64/python2.6/site-packages' ))
19- os .environ ['PATH' ] = os .path .join (config . pegasus_path () , 'bin' ) + ':' + os .environ ['PATH' ]
17+ sys .path .insert (0 , os .path .join (pegasus_path , 'lib64/python2.6/site-packages' ))
18+ os .environ ['PATH' ] = os .path .join (pegasus_path , 'bin' ) + ':' + os .environ ['PATH' ]
2019from Pegasus .DAX3 import *
2120
2221
@@ -88,7 +87,7 @@ def submit_workflow(self):
8887 except OSError :
8988 pass
9089 try :
91- os .makedirs (config . runs_dir () , 0o755 )
90+ os .makedirs (runs_dir , 0o755 )
9291 except OSError :
9392 pass
9493
@@ -109,31 +108,31 @@ def _generate_dax(self):
109108 dax = ADAG ('xenonnt' )
110109
111110 # event callouts
112- dax .invoke ('start' , config . base_dir () + '/workflow/events/wf-start' )
113- dax .invoke ('at_end' , config . base_dir () + '/workflow/events/wf-end' )
111+ dax .invoke ('start' , base_dir + '/workflow/events/wf-start' )
112+ dax .invoke ('at_end' , base_dir + '/workflow/events/wf-end' )
114113
115114 # Add executables to the DAX-level replica catalog
116115 wrapper = Executable (name = 'run-pax.sh' , arch = 'x86_64' , installed = False )
117- wrapper .addPFN (PFN ('file://' + config . base_dir () + '/workflow/run-pax.sh' , 'local' ))
116+ wrapper .addPFN (PFN ('file://' + base_dir + '/workflow/run-pax.sh' , 'local' ))
118117 wrapper .addProfile (Profile (Namespace .PEGASUS , 'clusters.size' , 2 ))
119118 dax .addExecutable (wrapper )
120119
121120 merge = Executable (name = 'merge.sh' , arch = 'x86_64' , installed = False )
122- merge .addPFN (PFN ('file://' + config . base_dir () + '/workflow/merge.sh' , 'local' ))
121+ merge .addPFN (PFN ('file://' + base_dir + '/workflow/merge.sh' , 'local' ))
123122 dax .addExecutable (merge )
124123
125124 upload = Executable (name = 'upload.sh' , arch = 'x86_64' , installed = False )
126- upload .addPFN (PFN ('file://' + config . base_dir () + '/workflow/upload.sh' , 'local' ))
125+ upload .addPFN (PFN ('file://' + base_dir + '/workflow/upload.sh' , 'local' ))
127126 dax .addExecutable (upload )
128127
129128 # determine_rse - a helper for the job to determine where to pull data from
130129 determine_rse = File ('determine_rse.py' )
131- determine_rse .addPFN (PFN ('file://' + os .path .join (config . base_dir () , 'workflow/determine_rse.py' ), 'local' ))
130+ determine_rse .addPFN (PFN ('file://' + os .path .join (base_dir , 'workflow/determine_rse.py' ), 'local' ))
132131 dax .addFile (determine_rse )
133132
134133 # paxify is what processes the data. Gets called by the executable run-pax.sh
135134 paxify = File ('paxify.py' )
136- paxify .addPFN (PFN ('file://' + os .path .join (config . base_dir () , 'workflow/paxify.py' ), 'local' ))
135+ paxify .addPFN (PFN ('file://' + os .path .join (base_dir , 'workflow/paxify.py' ), 'local' ))
137136 dax .addFile (paxify )
138137
139138 for dbcfg in self ._dbcfgs :
@@ -225,9 +224,9 @@ def _generate_dax(self):
225224 upload_job = Job ("upload.sh" )
226225 upload_job .addProfile (Profile (Namespace .HINTS , 'execution.site' , 'local' ))
227226 upload_job .uses (merged_root , link = Link .INPUT )
228- upload_job .addArguments (dbcfg .name ,
227+ upload_job .addArguments (dbcfg .name ,
229228 merged_root ,
230- config . base_dir () )
229+ base_dir )
231230 dax .addJob (upload_job )
232231 dax .depends (parent = merge_job , child = upload_job )
233232
@@ -242,23 +241,23 @@ def _plan_and_submit(self):
242241 Call out to plan-env-helper.sh to start the workflow
243242 '''
244243
245- cmd = ' ' .join ([os .path .join (config . base_dir () , 'workflow/plan-env-helper.sh' ),
246- config . pegasus_path () ,
247- config . base_dir () ,
248- config . work_dir () ,
244+ cmd = ' ' .join ([os .path .join (base_dir , 'workflow/plan-env-helper.sh' ),
245+ pegasus_path ,
246+ base_dir ,
247+ work_dir ,
249248 self ._generated_dir (),
250- config . runs_dir () ,
249+ runs_dir ,
251250 self ._wf_id ])
252251 shell = Shell (cmd , log_cmd = False , log_outerr = True )
253252 shell .run ()
254253
255254
256255 def _generated_dir (self ):
257- return os .path .join (config . work_dir () , 'generated' , self ._wf_id )
256+ return os .path .join (work_dir , 'generated' , self ._wf_id )
258257
259258
260259 def _workflow_dir (self ):
261- return os .path .join (config . runs_dir () , self ._wf_id )
260+ return os .path .join (runs_dir , self ._wf_id )
262261
263262
264263 def _validate_x509_proxy (self ):
0 commit comments