I've been using Topshelf for 3 years now, but only in simple use cases. I've started a new job and suggested using Topshelf but they override the Rollback method of the Installer class. For example they use it to call "http delete urlacl ...".
Topshelf doesn't expose BeforeRollback or AfterRollback. I'm not against submitting a pull request, but I want to know beforehand if I even need rollback functionality or not? Also possibly is there already a way of handling this using Topshelf?
So what I ended up doing was surfacing the BeforeRollback and AfterRollback events to Topshelf's public interface along side the other installer events that are exposed. I've submitted a pull request to the developers, but until they accept it you may find the source with my updates here: https://github.com/developmentalmadness/Topshelf