X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/064a8777267b6918ef040589c0b9d75f8df81cd1..37d9f94b06ff367a3514b58ec6f0e4d4d0116030:/lib/crunchrun/singularity.go diff --git a/lib/crunchrun/singularity.go b/lib/crunchrun/singularity.go index 9828d8734e..5af023a83d 100644 --- a/lib/crunchrun/singularity.go +++ b/lib/crunchrun/singularity.go @@ -160,12 +160,22 @@ func (e *singularityExecutor) LoadImage(dockerImageID string, imageTarballPath s return err } - os.Mkdir(e.tmpdir+"/cache", 0700) + // Set up a cache and tmp dir for singularity build + err = os.Mkdir(e.tmpdir+"/cache", 0700) + if err != nil { + return err + } defer os.RemoveAll(e.tmpdir + "/cache") + err = os.Mkdir(e.tmpdir+"/tmp", 0700) + if err != nil { + return err + } + defer os.RemoveAll(e.tmpdir + "/tmp") build := exec.Command("singularity", "build", imageFilename, "docker-archive://"+e.tmpdir+"/image.tar") build.Env = os.Environ() build.Env = append(build.Env, "SINGULARITY_CACHEDIR="+e.tmpdir+"/cache") + build.Env = append(build.Env, "SINGULARITY_TMPDIR="+e.tmpdir+"/tmp") e.logf("%v", build.Args) out, err := build.CombinedOutput() // INFO: Starting build...