How are folks doing "evergreen" TopShelf apps on customer pcs?

70 views
Skip to first unread message

Josh Buedel

unread,
Apr 27, 2017, 2:55:47 PM4/27/17
to topshelf-discuss
We have two TopShelf apps that we install on customer machines. Iow, on machines that we do not control. We want to get as close as we can to having them self updating. Much like VS Code, Notepad++, etc. Being services, it is trickier. In that regard it's more like TeamCity. I am wondering how other folks are handling this. 

Our current solution is we distribute the app via chocolatey. The app watches a certain nuget feed for updates. When it notices one it notifies the user via an "update available" message. The self upgrade is done like so: The service launches a powershell script. This script shuts down the TopShelf service, and then does a chocolatey upgrade of our app. That's about it. While it's been reliable so far it feels a little Rube Goldberg-ish. If something were to go wrong we'd have very little visibility into it. 

My question then is, how are you guys doing this? I wanted to avoid building an MSI, but perhaps that's really the best route? Then the "time to update" notification can offer a link to the msi (just like the TeamCity example).  Any insight would be appreciated.

Thanks!
Josh
Reply all
Reply to author
Forward
0 new messages