Here is the output from a Jenkins job I am running. The ProductVersion is set to 5.10.00 in the installer itself as that is the main release we are currently working on. However, we also have another team starting on 5.20.00 as it will be an involved process with some major features added. While, I know when the time comes, I will need to change the ProductCode, for now, I just want it to use what we currently are using for 5.10 so they can alpha test as they go. Jenkins sends the commandline to update Property [|ProductVersion] to 5.20.00, yet the Media Directory using the property ignores this setting and uses the 5.10.00 default. See the Jenkins output below:
C:\Jenkins\workspace\Installer>pushd "C:\Program Files (x86)\Caphyon\Advanced Installer\bin\x86"
C:\Program Files (x86)\Caphyon\Advanced Installer\bin\x86>advancedinstaller.com /edit "I:\Monaco\Monaco.aip" /SetProperty TEAM="CurrentRelease_Building_DO_NOT_USE"
C:\Program Files (x86)\Caphyon\Advanced Installer\bin\x86>advancedinstaller.com /edit "I:\Monaco\Monaco.aip" /SetProperty RELEASEDIR="Z:\"
C:\Program Files (x86)\Caphyon\Advanced Installer\bin\x86>advancedinstaller.com /edit "I:\Monaco\Monaco.aip" /SetProperty ProductVersion="5.20.00"
C:\Program Files (x86)\Caphyon\Advanced Installer\bin\x86>advancedinstaller.com /edit "I:\Monaco\Monaco.aip" /SetProperty Build="327"
C:\Program Files (x86)\Caphyon\Advanced Installer\bin\x86>AdvancedInstaller.com /rebuild "I:\Monaco\Monaco.aip" -BuildsList Default
Checking builds status... done.
Build required.
[ Default ]
Building package (en):
Z:\Monaco\5.10.00\CurrentRelease_Building_DO_NOT_USE\Setup.exe
Copying file(s)... done.
Creating MSI database... done.
Writing Summary Information... done.
Creating EXE file... done.
Build time: 16 min 21 sec.
Total build time: 16 min 21 sec.
Build finished successfully.
--------------------------------------
The "Z:\Monaco\5.10.00\CurrentRelease_Building_DO_NOT_USE\Setup.exe " above is actually all parameters [|RELEASEDIR]\[|ProductName]\[|ProductVersion]\[|TEAM]
[|RELEASEDIR]=Z:
[|ProductName]=Monaco
[|ProductVersion] should = "5.20.00" as set
[|TEAM]=CurrentRelease_Building_DO_NOT_USE
I am fairly certain I could Replace [|ProductVersion] with [|PRODUCT_VERSION] as a global parameter, but that would be redundant if the ProductVersion were actually updated like I expected.
My guess as to why this is happening is that everything is read, then properties are assigned after and the Media Directory doesn't get updated as it is already defined.