From 65490d1e880eafd7bd9f07e00b41ac6edd5e4cab Mon Sep 17 00:00:00 2001 From: Jesse Glick Date: Tue, 1 Mar 2016 11:53:51 -0500 Subject: [PATCH] [JENKINS-27152] Option for pwd step to return temp directory. Originally-Committed-As: 8c74333321f007e829b2a9581af643b792ef47a6 --- .../plugins/workflow/steps/PwdStepTest.java | 17 +++++++++++++++-- 1 file changed, 15 insertions(+), 2 deletions(-) diff --git a/aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/PwdStepTest.java b/aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/PwdStepTest.java index bd1b8e40..e493a724 100644 --- a/aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/PwdStepTest.java +++ b/aggregator/src/test/java/org/jenkinsci/plugins/workflow/steps/PwdStepTest.java @@ -24,6 +24,8 @@ package org.jenkinsci.plugins.workflow.steps; +import hudson.FilePath; +import hudson.slaves.WorkspaceList; import org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition; import org.jenkinsci.plugins.workflow.job.WorkflowJob; import org.junit.Test; @@ -36,8 +38,19 @@ public class PwdStepTest { @Test public void basics() throws Exception { WorkflowJob p = r.jenkins.createProject(WorkflowJob.class, "p"); - p.setDefinition(new CpsFlowDefinition("node {echo \"cwd=${pwd()}\"}", true)); - r.assertLogContains("cwd=" + r.jenkins.getWorkspaceFor(p), r.assertBuildStatusSuccess(p.scheduleBuild2(0))); + p.setDefinition(new CpsFlowDefinition("node {echo \"cwd='${pwd()}'\"}", true)); + r.assertLogContains("cwd='" + r.jenkins.getWorkspaceFor(p) + "'", r.assertBuildStatusSuccess(p.scheduleBuild2(0))); + } + + // TODO use https://github.com/jenkinsci/jenkins/pull/2066 + private static FilePath tempDir(FilePath ws) { + return ws.sibling(ws.getName() + System.getProperty(WorkspaceList.class.getName(), "@") + "tmp"); + } + + @Test public void tmp() throws Exception { + WorkflowJob p = r.jenkins.createProject(WorkflowJob.class, "p"); + p.setDefinition(new CpsFlowDefinition("node {echo \"tmp='${pwd tmp: true}'\"}", true)); + r.assertLogContains("tmp='" + tempDir(r.jenkins.getWorkspaceFor(p)) + "'", r.assertBuildStatusSuccess(p.scheduleBuild2(0))); } }