I am setting up a Wix installer for web server application and for a Sitecore front end application. My question is not specific to web server or Sitecore. My issues are with Wix and how to use it with continuous delivery.
1) Wix requires GUIDs for each file and the product itself. Do I need to update each GUID in the Wix file with every build? In a Git repo, that can potentially be a lot of changes.
2) If I have to update the GUIDs when each branch (dev, staging, and master) on my CD server (Azure DevOps) makes a build, how do I update the Wix file with new GUIDs in Azure DevOps?
What we really want is to be able to buid, release, deploy, and potentially rollback to last good version on each of our 3 servers (dev, staging, and master). I originally thought we would just copy the files during the deploy step, but instead I was mandated to build an MSI installer because it is cleaner and can rollback bad installs consistently easier. If you think Wix is the wrong tool or there is a better process, please also speak up. Wix really seems overly verbose: a component for basically every file with generated GUIDs for each one.