@@ -557,20 +557,29 @@ def _init_job(self, joborder, **kwargs):
557
557
builder .debug = kwargs .get ("debug" )
558
558
builder .mutation_manager = kwargs .get ("mutation_manager" )
559
559
560
- dockerReq , is_req = self .get_requirement ("DockerRequirement" )
561
560
builder .make_fs_access = kwargs .get ("make_fs_access" ) or StdFsAccess
562
561
builder .fs_access = builder .make_fs_access (kwargs ["basedir" ])
563
562
564
563
loadListingReq , _ = self .get_requirement ("http://commonwl.org/cwltool#LoadListingRequirement" )
565
564
if loadListingReq :
566
565
builder .loadListing = loadListingReq .get ("loadListing" )
567
566
568
- if dockerReq and kwargs .get ("use_container" ):
569
- # Check if docker output directory is absolute
570
- if dockerReq .get ("dockerOutputDirectory" ) and dockerReq .get ("dockerOutputDirectory" ).startswith ('/' ):
571
- builder .outdir = dockerReq .get ("dockerOutputDirectory" )
572
- else :
573
- builder .outdir = builder .fs_access .docker_compatible_realpath (dockerReq .get ("dockerOutputDirectory" ) or kwargs .get ("docker_outdir" ) or "/var/spool/cwl" )
567
+ dockerReq , is_req = self .get_requirement ("DockerRequirement" )
568
+
569
+ if dockerReq is None and kwargs ["default_container" ]:
570
+ defaultDocker = kwargs ["default_container" ]
571
+
572
+ if dockerReq or defaultDocker and kwargs .get ("use_container" ):
573
+ if dockerReq :
574
+ # Check if docker output directory is absolute
575
+ if dockerReq .get ("dockerOutputDirectory" ) and dockerReq .get ("dockerOutputDirectory" ).startswith ('/' ):
576
+ builder .outdir = dockerReq .get ("dockerOutputDirectory" )
577
+ else :
578
+ builder .outdir = builder .fs_access .docker_compatible_realpath (
579
+ dockerReq .get ("dockerOutputDirectory" ) or kwargs .get ("docker_outdir" ) or "/var/spool/cwl" )
580
+ elif defaultDocker :
581
+ builder .outdir = builder .fs_access .docker_compatible_realpath (
582
+ kwargs .get ("docker_outdir" ) or "/var/spool/cwl" )
574
583
builder .tmpdir = builder .fs_access .docker_compatible_realpath (kwargs .get ("docker_tmpdir" ) or "/tmp" )
575
584
builder .stagedir = builder .fs_access .docker_compatible_realpath (kwargs .get ("docker_stagedir" ) or "/var/lib/cwl" )
576
585
else :
0 commit comments