I've created an installer that upgrades our software, but for some reason the XML configuration files (those of our software) are removed when upgrading.
This appears to happen if all features of the software are upgraded. Our software is an archive type thing. If I install just that feature and upgrade it everything is fine.
However, if I install all services accompanying the archive and upgrade those then all configuration files (and each is in a different folder!) are gone.
As an example:
<ComponentGroup Id="AutoArchiveTool" Directory="AutoArchiverFolder">
<Component Id="C_AutoArchivingTool_Gateway_exe_config" NeverOverwrite="yes" Guid="{A62D5200-FDE0-4DA1-A04A-7FBDACEA83B2}">
<File Id="F_AutoArchivingTool_Gateway_exe_config" Source="$(var.Gateway.TargetDir)Gateway.exe.config" KeyPath="yes"/>
</Component>
... more script
</ComponentGroup>
If you log the installer you can even see that it's recognized as "never overwrite":
Disallowing installation of component: {A62D5200-FDE0-4DA1-A04A-7FBDACEA83B2} since the keyfile exists and the component is marked to never overwrite existing installations
Yet it's gone after the upgrade. What am I missing? I've see the "Permanent" property, but that's not what I want. I want the installer to leave the config files alone during an upgrade. Not leave them (config files) after removal.