-
Bug
-
Resolution: Unresolved
-
Minor
-
Jenkins 2.276 (Windows)
P4 Plugin 1.11.2
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root.
agent{ node{ label "node1" customWorkspace "C:\\Custom\\BuildWorkspacePath" } } stages{ stage('Test'){ steps{ // Perforce client myP4Client has p4 root set to C:\\myP4Client checkout perforce(credential: 'myP4Creds', populate: previewOnly(quiet: true), workspace: staticSpec(charset: 'none', name: 'myP4Client', pinHost: false)) // P4_ROOT will be set to "C:\\Custom\\BuildWorkspacePath" instead of "C:\\myP4Client" echo "${currentBuild.rawBuild.getEnvironment()}" } } }
- is caused by
-
JENKINS-47005 Let user specify p4 workspace root in manual config
-
- Open
-
[JENKINS-64707] [P4 Plugin] P4_ROOT is not set properly - pointing to build workspace instead of p4 client root
Labels | New: P4_ROOT |
Labels | Original: P4_ROOT | New: EnvironmentalVariable P4_ROOT |
Labels | Original: EnvironmentalVariable P4_ROOT | New: EnvironmentalVariable P4_ROOT environment-variables |
Description |
Original:
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root. |
New:
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root. {code:java} agent{ node{ label "master" } } parameters{ string (name: 'change', defaultValue: '', trim: true, description: '') string (name: 'shelve', defaultValue: '', trim: true, description: '') } options{ buildDiscarder logRotator(numToKeepStr: '5') timestamps() } stages{ stage('first'){ steps{ checkout perforce(credential: 'robot.obibok_1777', populate: previewOnly(quiet: true), workspace: staticSpec(charset: 'none', name: 'robot.obibok_IDK300_TESTSTREAM_development', pinHost: false)) echo "${currentBuild.rawBuild.getEnvironment()}" setupPipeline(displayName: "test", description: "PS4") } } } } {code} |
Description |
Original:
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root. {code:java} agent{ node{ label "master" } } parameters{ string (name: 'change', defaultValue: '', trim: true, description: '') string (name: 'shelve', defaultValue: '', trim: true, description: '') } options{ buildDiscarder logRotator(numToKeepStr: '5') timestamps() } stages{ stage('first'){ steps{ checkout perforce(credential: 'robot.obibok_1777', populate: previewOnly(quiet: true), workspace: staticSpec(charset: 'none', name: 'robot.obibok_IDK300_TESTSTREAM_development', pinHost: false)) echo "${currentBuild.rawBuild.getEnvironment()}" setupPipeline(displayName: "test", description: "PS4") } } } } {code} |
New:
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root. {code:java} agent{ node{ label "node1" customWorkspace "C:\\Custom\\BuildWorkspacePath" } } stages{ stage('Test'){ steps{ // Perforce client myP4Client has p4 root set to C:\\myP4Client checkout perforce(credential: 'myP4Creds', populate: previewOnly(quiet: true), workspace: staticSpec(charset: 'none', name: 'myP4Client', pinHost: false)) // P4_ROOT will be set to "C:\\Custom\\BuildWorkspacePath" instead of "C:\\myP4Client" echo "${currentBuild.rawBuild.getEnvironment()}" } } } {code} |
Description |
Original:
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root. {code:java} agent{ node{ label "node1" customWorkspace "C:\\Custom\\BuildWorkspacePath" } } stages{ stage('Test'){ steps{ // Perforce client myP4Client has p4 root set to C:\\myP4Client checkout perforce(credential: 'myP4Creds', populate: previewOnly(quiet: true), workspace: staticSpec(charset: 'none', name: 'myP4Client', pinHost: false)) // P4_ROOT will be set to "C:\\Custom\\BuildWorkspacePath" instead of "C:\\myP4Client" echo "${currentBuild.rawBuild.getEnvironment()}" } } } {code} |
New:
The following problem was observed in a pipeline type job:
After the perforce scm step is executed the P4_ROOT environment variable is not set properly. It is pointing to the build workspace instead of the p4 client root of the client used during the scm step. I have tested it using static workspace behavior and the p4 preview option. Basically the P4_ROOT is the same as WORKSPACE environment variable, but it should be set to p4 clients root. {code:java} agent{ node{ label "node1" customWorkspace "C:\\Custom\\BuildWorkspacePath" } } stages{ stage('Test'){ steps{ // Perforce client myP4Client has p4 root set to C:\\myP4Client checkout perforce(credential: 'myP4Creds', populate: previewOnly(quiet: true), workspace: staticSpec(charset: 'none', name: 'myP4Client', pinHost: false)) // P4_ROOT will be set to "C:\\Custom\\BuildWorkspacePath" instead of "C:\\myP4Client" echo "${currentBuild.rawBuild.getEnvironment()}" } } } {code} |
Link | New: This issue is caused by JENKINS-47005 [ JENKINS-47005 ] |
Resolution | New: Fixed [ 1 ] | |
Status | Original: Open [ 1 ] | New: Closed [ 6 ] |
Resolution | Original: Fixed [ 1 ] | |
Status | Original: Closed [ 6 ] | New: Reopened [ 4 ] |
Labels | Original: EnvironmentalVariable P4_ROOT environment-variables | New: EnvironmentalVariable P4_A P4_ROOT P4_VERIFY environment-variables |