-
Improvement
-
Resolution: Fixed
-
Minor
-
None
-
-
Jenkins 2.214, workflow-durable-task-step 2.36
WorkspaceList.createTempDir (JENKINS-27152) is used by various plugins, and from Pipeline builds you can even use pwd tmp: true to use this location for custom purposes, but this is awkward. In practice many scripts wind up just binding this to a variable (example). We should define it out of the box.
$WORKSPACE is used for the main workspace (though not frequently needed as this is also the default working directory). $WORKSPACE_TMP seems like an intuitive name for the new property and matches the style of the @tmp suffix. Standard practice in Linux is to allow $TMPDIR to define a temporary directory, but using this variable name would result in a behavioral change for some existing scripts that may be unwanted, for example if /tmp is a RAM filesystem while the Jenkins workspace is persistent; we would like to offer a facility that users can opt in to where it makes sense (for example for project-specific caches) but not where it does not make sense (temporary files that are soon after deleted).
- causes
-
JENKINS-61197 Running a job with a custom workspace set to eg. 'F:\' causes NullPointerException
-
- Resolved
-
- relates to
-
JENKINS-27152 Store sh control files outside of workspace
-
- Resolved
-
- links to
[JENKINS-60634] Define WORKSPACE_TMP=.../workspace/jobname@tmp
Link |
New:
This issue relates to |
Status | Original: Open [ 1 ] | New: In Progress [ 3 ] |
Description |
Original:
{{WorkspaceList.createTempDir}} ( |
New:
{{WorkspaceList.createTempDir}} ( {{$WORKSPACE}} is used for the main workspace (though not frequently needed as this is also the default working directory). {{$WORKSPACE_TMP}} seems like an intuitive name for the new property and matches the style of the {{@tmp}} suffix. [Standard practice in Linux|https://en.wikipedia.org/wiki/TMPDIR] is to allow {{$TMPDIR}} to define a temporary directory, but using this variable name would result in a behavioral change for some existing scripts that may be unwanted, for example if {{/tmp}} is a RAM filesystem while the Jenkins workspace is persistent; we would like to offer a facility that users can opt in to where it makes sense (for example for project-specific caches) but not where it does not make sense (temporary files that are soon after deleted). |
Remote Link | New: This issue links to "jenkins #4414 (Web Link)" [ 24229 ] |
Remote Link | New: This issue links to "workflow-durable-task-step #128 (Web Link)" [ 24230 ] |
Status | Original: In Progress [ 3 ] | New: In Review [ 10005 ] |
Released As | New: Jenkins 2.214 | |
Resolution | New: Fixed [ 1 ] | |
Status | Original: In Review [ 10005 ] | New: Resolved [ 5 ] |
Resolution | Original: Fixed [ 1 ] | |
Status | Original: Resolved [ 5 ] | New: In Review [ 10005 ] |
Resolved in core for freestyle and similar builds; PR remains open for Pipeline.