At the moment, ToolEnv is not aware of the EnvInject plugin.
Technically ToolEnv doesn't export its new environment variables by an
EnvironmentContribution action.
Therefore, EnvInject cannot capture environment variables populated by the
ToolEnv plugin.

However, you can install the SharedObjects plugin (this plugin is a
complement to the EnvInject plugin by providing the ability to shared
objects as environment variables. These objects can be Tools and their
installation paths are exposed as environment variables.

On Thu, Apr 26, 2012 at 11:13 PM, John Vacz <
mailing.list.collect...@googlemail.com> wrote:

> **
>
> Jenkins 1.460, debian native package (winstone)
> EnvInject 1.46
> ToolEnv 1.0
>
>
>
> -------- Original Message --------  Subject: EnvInject does not pick up
> variables injected by ToolEnv plugin  Date: Thu, 26 Apr 2012 23:04:24
> +0200  From: John Vacz 
> <mailing.list.collect...@googlemail.com><mailing.list.collect...@googlemail.com>
>   To:
> Jenkins Users 
> <jenkinsci-users@googlegroups.com><jenkinsci-users@googlegroups.com>
>
> A trival job:
> 1. ToolEnv injected a enviroment variable "JDK_1_6_HOME",
> 2. build step 1: shell script:  echo " -- Before envinject:
> JDK1_6_HOME=$JDK1_6_HOME"
> 3. build step 2: EnvInject injected another variable SOME_ARG=$JDK1_6_HOME
> Console output:
>
> Started by user tester
> [EnvInject] - Loading node environment variables.
> Building remotely on slave4 <https://comitdev1/jenkins/computer/comitdev4> in 
> workspace 
> /home/jenkins-slave/jenkins-slave-fs-root/workspace/envinject-vs-toolenv
> Setting 
> JDK1_6_HOME=/home/jenkins-slave/jenkins-slave-fs-root/tools/jdk1.6/jdk1.6.0_26
> [envinject-vs-toolenv] $ /bin/sh -xe /tmp/hudson2392984131553273240.sh
> + echo  -- Before envinject: 
> JDK1_6_HOME=/home/jenkins-slave/jenkins-slave-fs-root/tools/jdk1.6/jdk1.6.0_26
>  -- Before envinject: 
> JDK1_6_HOME=/home/jenkins-slave/jenkins-slave-fs-root/tools/jdk1.6/jdk1.6.0_26
> [EnvInject] - Injecting environment variables from a build step.
> [EnvInject] - Injecting as environment variables the properties content
> SOME_ARG=$JDK1_6_HOME
>
> [EnvInject] - Variables injected successfully.
> [EnvInject] - Unset unresolved 'SOME_ARG' variable.
> Notifying upstream projects of job completion
> Finished: SUCCESS
>
>
>
> Build step 1 shows that $JDK1_6_HOME was correctly injected, but EnvInject
> in build step 2 did not pick up the  variable injected by ToolEnv plugin in
> pre-build stage. Variable SOME_ARG remains empty. Is this a bug of
> EnvInject or just my misunderstanding?
>
> -- jv
>
>
>

Reply via email to