-
Bug
-
Resolution: Fixed
-
Major
-
None
-
Jenkins 1.473
envinject 1.67 & 1.62
I am attempting to prepend to the PYTHONPATH variable on slave nodes using the plugin. If I simply try to set the variable (Build Environment->Inject environment variables to the build process->Properties Content) like so:
PYTHONPATH=${WORKSPACE}/ref/dist/python
it does work. However, if I try to prepend to the variable like:
PYTHONPATH=${WORKSPACE}/ref/dist/python:$PYTHONPATH
or
PYTHONPATH=${WORKSPACE}/ref/dist/python:${PYTHONPATH}
I am met with the following error if the slave node hasn't already defined PYTHONPATH:
[EnvInject] - Executing scripts and injecting environment variables after the SCM step.
[EnvInject] - Injecting as environment variables the properties content
PYTHONPATH=${WORKSPACE}/ref/dist/python:${PYTHONPATH}
[EnvInject] - Variables injected successfully.
[EnvInject] - Unset unresolved 'PYTHONPATH' variable.
Then on my first build step, if I echo PYTHONPATH it's empty. It seems like merely referencing the variable in the value breaks down if it's not already defined. However, I can't assume that a slave node doesn't already have it set so I don't want to completely overwrite it.
[JENKINS-14930] Can't overload/update PYTHONPATH
Status | Original: Open [ 1 ] | New: In Progress [ 3 ] |
Resolution | New: Fixed [ 1 ] | |
Status | Original: In Progress [ 3 ] | New: Resolved [ 5 ] |
Workflow | Original: JNJira [ 145631 ] | New: JNJira + In-Review [ 191569 ] |
Code changed in jenkins
User: Gregory Boissinot
Path:
src/main/java/org/jenkinsci/plugins/envinject/service/EnvInjectEnvVars.java
http://jenkins-ci.org/commit/envinject-plugin/9abab6b3d9a7c6c8850dc1ac33d7976aab5ac718
Log:
Fix
JENKINS-14930