>From EnvInject 1.75, you are able to use currentJob and currentBuild
variables in order to access respectively to Job and Run instances.

On Wed, Dec 19, 2012 at 3:58 PM, Matt Felzani <[email protected]> wrote:
> Hi,
>
> I'm trying to use the EnvInject plugin. Specifically in the "Prepare an
> environment for the run" > "Evaluated Groovy script" I want to be able to
> get access to the job's BUILD_NUMBER so that I can inject a variable that is
> partly composed of that value.
>
> I've tried code like:
> def manager = binding.getVariable("manager")
> def buildNumber =
> manager.build.getEnvironment(manager.listener)['BUILD_NUMBER']
>
> But I get an error of:
> [EnvInject] - [ERROR] - SEVERE ERROR occurs: No such property: manager for
> class: groovy.lang.Binding
>
> I've tried code like:
> def buildNumber =
> manager.build.getEnvironment(manager.listener)['BUILD_NUMBER']
>
> But I get an error of:
>
> [EnvInject] - [ERROR] - SEVERE ERROR occurs: No such property: manager for
> class: Script1
>
>
> Is the manager - via any API call - available at the time that script runs?
>
> The following code works (and it returns the correct value), but i'm just
> trying to avoid having the Job's name (i.e. - "BnL Build") be hard-coded in
> the script:
> def env = Jenkins.instance.getItem("BnL
> Build").getLastBuild().getEnvironment()
> def buildNumber = env['BUILD_NUMBER']
>
> Thanks in advance,
> Matt

Reply via email to