Hi Chris,

I've tried out the EnvInject plugin but it doesn't seem to be able to 
overwrite existing variables.

if I put:

return [ SOME_NEW_VAR: "blah" ]


then I can put the following the in the build step

 echo ${SOME_NEW_VAR}


and get the correct value.

However if I put:

return [ version_number: "blah" ]


where version_number is one of the build parameters the echo command 
returns the original passed in parameter.
 

On Friday, 3 August 2012 17:38:32 UTC+1, cjo wrote:
>
> Have a look at the EnvInject Plugin[1], to see if you are able plug your 
> script into it and get the correct results.
> look at "Prepare an environment for the run" section in the job config.
>
> The "Evaluated Groovy script" item might override them correctly.
>
> https://wiki.jenkins-ci.org/display/JENKINS/EnvInject+Plugin 
>
> Chris
>
> On Friday, August 3, 2012 4:52:17 PM UTC+1, Reuben Gow wrote:
>>
>> Hi,
>>
>> I have a job that takes a number of parameters (version_number, 
>> release_number, branch etc). This build can be built in a number of ways, 
>> some need to get the values of these parameters from other locations. the 
>> different modes are:
>>
>> 1) Manually - Take the passed in parameters
>> 2) SCM Change - take the parameter values from the last successful build 
>> of another job
>> 3) Timer - take the parameter values from the last successful build of 
>> another job
>> 4) Upstream Job - take the parameters passed to it from the upstream job.
>>
>> 1 is obviously no problem, as is 4 with the use of the Parameterized 
>> build plugin.
>>
>> I have written a Groovy script to retrieve the parameter values for cases 
>> 2 and 3 but can't find a way to apply these values to the variables used in 
>> the build step (execute shell ). I can create new parameters and access 
>> these as variables but I don't really like this method as it makes my shell 
>> script a bit ugly. 
>>
>> Does anyone know how to overwrite parameter values from within the Groovy 
>> script.
>>
>> Thanks
>>
>

Reply via email to