• Icon: Bug Bug
    • Resolution: Fixed
    • Icon: Major Major
    • envinject-plugin
    • 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

          Josh Davidson created issue -
          Gregory Boissinot made changes -
          Status Original: Open [ 1 ] New: In Progress [ 3 ]
          Gregory Boissinot made changes -
          Resolution New: Fixed [ 1 ]
          Status Original: In Progress [ 3 ] New: Resolved [ 5 ]
          R. Tyler Croy made changes -
          Workflow Original: JNJira [ 145631 ] New: JNJira + In-Review [ 191569 ]

            gbois Gregory Boissinot
            mears Josh Davidson
            Votes:
            0 Vote for this issue
            Watchers:
            3 Start watching this issue

              Created:
              Updated:
              Resolved: