I am deploying the Antidote software. It is provided using an MSI for the basic installation, then updates are provided as MSP files which must be passed with the /update argument of msiexec.
I thought about using the "properties" variable of the "install_msi_if_needed" function for this, but it doesn't work because it adds a ":" after /update (which is expected to define a property, so it's not a bug in itself).
I haven't found a way to specify an additional option for msiexec using the "install_msi_if_needed" function. I suggest adding an "options" variable to the "install_msi_if_needed" function so that additional options can be defined for msiexec.
To bypass the problem, I deployed my application using the "run" function.
Code: Select all
def install():
print('installing antidote9-fr')
path = os.path.dirname(os.path.realpath(__file__)) + '\\'
# ne fonctionne pas, ne supporte pas /update
#install_msi_if_needed(msi=base_msi, killbefore=antidote_apps, properties={'/update': path + update_msp, 'TRANSFORMS': 'Reseau.mst'})
#install_msi_if_needed(msi=base_msi_fr, killbefore=antidote_apps, properties={'/update': path + update_msp_fr})
killalltasks(exenames=antidote_apps)
run('msiexec /norestart /q /i ' + base_msi + ' /update ' + path + update_msp + ' TRANSFORMS=Reseau.mst')
run('msiexec /norestart /q /i ' + base_msi_fr + ' /update ' + path + update_msp_fr)