I have the following parameter defined in Team City:
I want to pass this parameter into a powershell script I have (that will update the xml file with the version number).
But this inserts the actual text %version%
into the script (No substitution is made for the actual value of the parameter.)
However, I know my script is working because if I hardcode the values like this then it works:
Is there a way to get %version% to convert to the actual value when when used as a PowerShell script argument?
How do I pass parameters to PowerShell scripts? Passing arguments in PowerShell is the same as in any other shell: you just type the command name, and then each argument, separated by spaces. If you need to specify the parameter name, you prefix it with a dash like -Name and then after a space (or a colon), the value.
To pass multiple parameters you must use the command line syntax that includes the names of the parameters. For example, here is a sample PowerShell script that runs the Get-Service function with two parameters. The parameters are the name of the service(s) and the name of the Computer.
If you put the parameter in quotes, "%version%", and change the script execution mode to Execute ps1 script with "-File" argument then this should resolve and inject correctly
e.g.
Hope this helps
You need Environment Variables (env.), it's work to me enter image description here
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With