Issue
I have a Jenkins build with one parameter called VERSION.
Based on the length of the variable i am modifying its value in Windows Powershell and then in the next build step, i want to use it.
But the modified value is not being reflected in the next build step execution, it still refer to the intial value entered as a parameter. I tried ENV,script,global none of them seems to work.
Windows powershell build step
input VERSION=1810(via jenkins build)
if ("$ENV:VERSION".length -eq 4)
{
$ENV:VERSION = "$ENV:VERSION",3 -join "" (here it will be 18103)
}
Write-Output "$ENV:VERSION" (18103 here aswell)
later in the Nexus artifact uploader i refer to this variable as ${VERSION} and the above updated value is not being reflected
(here it is 1810 and not 18103)
Please help
Solution
You can try to use EnvInject Plugin and set additional PROJ_VERSION=$ENV:VERSION
variable in your job. In this case it should be working correctly. If it isn't working within Properties Content
directly, try to use injection via file as in this example.
Answered By - biruk1230
Answer Checked By - Willingham (JavaFixing Volunteer)