Manage ClickOnce releases for different parties
- by Dirk Beckmann
I'm struggling with release management of a piece of software. First some general information:
It is a ClickOnce application
I follow the release often practice
There are about 30 parties served with this software
I need full control which update will be delivered to which party
Not each party is allowed to get the latest update/release
Each party has multiple clients that are all allowed to get the latest update, served for the specific party
So that's what my requirements are in a rough description. So let me explain what I was thinking about how to solve this.
I would like to create a "deployment" website (asp.net) that will handle all the requests
There are two endpoints one for download the client and one where the client checks for updates
So each party has a separate endpoint like DeploymentSite/party1 and another for DeploymentSite/party2
The Application Files should still be stored centralized
So I thought it would be manageable with mage.exe with the following steps
Build application and store new release into Application Files Repository/Folder
Get parties that should be updated (config file, database what ever)
Run mage.exe to create a new application and deployment manifest for each party in the update list with new Application File Location (1.0.2)
Actually I'm really struggling with this mage.exe staff. I can't create the appropriate files with the needed codebase.
How to handle thes requirements?