4343import java .io .File ;
4444import java .io .IOException ;
4545import java .io .PrintWriter ;
46+ import java .nio .file .Files ;
4647import java .util .ArrayList ;
4748import java .util .Arrays ;
4849import java .util .HashMap ;
@@ -377,6 +378,22 @@ private void runUsingDocker(List<String> nimbleArgs, PipelineStepOutput output,
377378 File localBashScript = new File (getPipelineCtx ().getWorkingDirectory (), "docker.sh" );
378379 output .addIntermediateFile (localBashScript );
379380
381+ // Create temp folder:
382+ File tmpDir = new File (getPipelineCtx ().getWorkingDirectory (), "tmpDir" );
383+ if (tmpDir .exists ())
384+ {
385+ try
386+ {
387+ FileUtils .deleteDirectory (tmpDir );
388+ Files .createDirectory (tmpDir .toPath ());
389+ }
390+ catch (IOException e )
391+ {
392+ throw new PipelineJobException (e );
393+ }
394+ }
395+ output .addIntermediateFile (tmpDir );
396+
380397 try (PrintWriter writer = PrintWriters .getPrintWriter (localBashScript ))
381398 {
382399 writer .println ("#!/bin/bash" );
@@ -400,7 +417,7 @@ private void runUsingDocker(List<String> nimbleArgs, PipelineStepOutput output,
400417 writer .println ("\t -v \" ${HOME}:/homeDir\" \\ " );
401418 writer .println ("\t -u $UID \\ " );
402419 writer .println ("\t -e USERID=$UID \\ " );
403- writer .println ("\t -e TMPDIR=/work \\ " );
420+ writer .println ("\t -e TMPDIR=/work/tmpDir \\ " );
404421 writer .println ("\t -w /work \\ " );
405422 writer .println ("\t " + DOCKER_CONTAINER_NAME + " \\ " );
406423 writer .println ("\t " + StringUtils .join (nimbleArgs , " " ));
0 commit comments