jenkinsci / jenkinsci/workflow-basic-steps-plugin
[JENKINS-58367] cwd set by exws set is replaced by withEnv and withCredentials steps
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 73
- Forks
- 129
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
Hi,
I am experiencing an unexpected change of the current working directory when withEnv or withCredentials steps are used.
dir step is a viable workaround, but I am wondering if there is a more straightforward explanation and solution.
Thank you!
—
def extWorkspace = exwsAllocate diskPoolId: 'workspace-pool', strategy: fastestWriteSpeed()
stage('init') {
node('brenode') {
println pwd() //prints local workspace (${JENKINS_HOME}/workspace/${JOB_NAME})
exws (extWorkspace) {
println pwd() //prints external workspace ${physical_path}/${JOB_NAME}/${BUILD_NUMBER}
withEnv(["1=1"])
{ println pwd() //prints again local workspace! }
}
}
}
Originally reported by claudiuavat1, imported from: cwd set by exws set is replaced by withEnv and withCredentials steps
- assignee:
alexsomai
- status: Open
- priority: Major
- component(s): external-workspace-manager-plugin, workflow-basic-steps-plugin
- resolution: Unresolved
- votes: 0
- watchers: 2
- imported: 20251215-220547
Raw content of original issue
Hi,
I am experiencing an unexpected change of the current working directory when withEnv or withCredentials steps are used.
dir step is a viable workaround, but I am wondering if there is a more straightforward explanation and solution.
Thank you!
—
def extWorkspace = exwsAllocate diskPoolId: 'workspace-pool', strategy: fastestWriteSpeed()
stage('init') { node('brenode') { println pwd() //prints local workspace (${JENKINS_HOME}/workspace/${JOB_NAME}) exws (extWorkspace) { println pwd() //prints external workspace ${physical_path}/${JOB_NAME}/${BUILD_NUMBER} withEnv(["1=1"])
{ println pwd() //prints again local workspace! }} } }
environment
JENKINS_VERSION 2.176.1<br/>
external-workspace-manager 1.1.2<br/>
workflow-basic-steps 2.18
Beitragsleitfaden
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, die Pipeline mit exws, withEnv und withCredentials zu reproduzieren, und vergleiche pwd() vor und innerhalb jedes Schritts. Verfolge die beteiligten Einstiegspunkte von external-workspace-manager-plugin und workflow-basic-steps-plugin bei der Verarbeitung des Workspace-Kontexts. Als abgeschlossen gilt die Aufgabe, wenn der externe Workspace das aktuelle Verzeichnis bleibt, während Umgebungsvariablen- oder Credential-Schritte ausgeführt werden.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100