if the .exe doesn’t install I’m pretty much done
I would question if you should be managing server installs For most cases, swapping the jar is literally all you need to do. If the server doesn’t start, then examine the servlet’s out logs. There are a million ways to install a J2EE servlet, but if you’re on the default installer it should be catalina.out. From my experience, a stock Lucee install will always upgrade with no issues. It’s only custom things you’ve done to your install (extensions, jars, config, etc) that can cause problems.
That said, the days of servers as pets are coming to an end. This might be a good time for you to look into new technologies like Docker or even just straight CommandBox servers. The server install has become an automated and dispensable part of your stack. I can kill a docker container and not even blink because I can spin up 10 more with the click of a button. Yeah, it took some work to get there, but upgrade paralysis doesn’t exist when your entire server stack is automated.
W2K12 (Windows Server Standard 2012) was released on 10/30/2012. Mainstream support lasts until 10/9/2018… that’s just shy of 6 years!
And how much did you pay for those Windows server licenses? Lucee hasn’t ever really adopted an LTS support approach, but perhaps they could consider it. (Ortus is now doing this for ColdBox, etc) But even if they had a modest LTS cycle of 3 years (which is quite a long time for a FOSS project) Lucee 4.5.2 came out in November 2015 which is nearly 3 years ago.
Updating the OS is a couple of clicks every month and a reboot.
For minor patch upgrades yes, but not for a major WIndows upgrade to a new version.
but going from 4.5 to 5 isn’t so simple.
It didn’t start, but you didn’t actually put forth any effort to troubleshoot, and you’re saying it isn’t simple? Great work was put into making the Lucee 4 -> 5 upgrade as simple as possible but some amount of due diligence is expected. I saw a number of people post questions to the support channels back when upgrades were common and I never saw one go without being resolved. (Usually just some custom jars or config that needed tweaked)