Modify WinNUT Update Routines (ClickOnce deployments) #97
Labels
🤖CI/CD
Issues and PRs that concern continuous integration and deployment.
enhancement
New feature or request
Milestone
The old MSI Installer/Setup system is not CI/CD friendly, so the need has arisen to find a new packaging and deployment system. Per #85, ClickOnce is a native
msbuild
packaging system that looks like a good solution. Prior to completing that, the WinNUT client needs to gracefully transition from the old system to the new one.Strategies
Gradual procedure
Stage 1 - New Update Code
The first stage involves revamping the updater code in WinNUT. The current system relies on parsing HTTP queries sent directly to the GitHub web API, and presents a Form control prompting the user to update.
Changes
Todo
Swift migration
An alternative to the gradual procedure, especially since we're already seeing issues with our current hybrid method of using Application Settings with the old MSI deployment scheme. The idea is to switch to a dual ClickOnce and MSI deployment system with the next pre-release, and maintain that through to the next full release. This will maintain a level of compatibility to catch users using the old update system that expects After that, we will switch to a true Semver versioning scheme (resetting the
patch
value to zero), and the MSI will no longer be built & deployed.Dealing with old MSI installation
If we provide the ClickOnce installer to a user who is currently on the MSI installation, I don't think there's an automatic facility to remove the MSI installation and replace it with the ClickOnce installation.
References
Release Building #81
EV Certificate signing #84
New Setup/Installer Build System #85
System.Deployment.Application Namespace
Upgrade an existing application to include ClickOnce
The text was updated successfully, but these errors were encountered: