We recently upgraded to 1.424.1 LTS, and switched to the EnvInject plugin instead of the deprecated "Hudson SetEnv" plugin to set environment variables for our jobs.
All our multi-configuration jobs are now failing:
[EnvInject] - [ERROR] - [EnvInject] - [ERROR] - Problems occurs on injecting env vars as a build step: hudson.matrix.MatrixConfiguration cannot be cast to hudson.model.TopLevelItem
This is easy to reproduce:
- Install EnvInject
- Create a new multiconfiguration job
- Add an axis named "axis" with the values "a b c"
- Add an execute shell build step consisting of "echo $axis"
- Save and run the job (it should execute successfully against three configurations)
- Now, edit the job and check "Inject environment variables to the build process" in the Build Environment section. You don't actually need to add any properties content to reproduce the problem--just check the checkbox.
- Run the job again. All three configurations fail.
This is a big problem for us as all our multi-configuration jobs also use environment variables.
EnvInject 1.1 fixes the bug.
Thanks