Graceful binary upgrades via SIGUSR2 (?)

Quick and short: I stumbled about old issues/PRs like #1814 about a “zero-downtime” binary upgrade of caddy using SIGUSR2.

I wondered if this is still a thing in caddyV2 (and couldn’t find anything in the docs about it).
caddy upgrade docs explicitly says “Upgrades do not interrupt running servers; currently”.

So… this isn’t a thing anymore? Any plans/alternatives? Or any reason why it was dropped from caddy?

PS: I tried it and unsurprisingly got caddy[498]: {"level":"info","ts":1655337535.6122766,"msg":"not implemented","signal":"SIGUSR2"} — as I got into a case of needing such a feature. (I resolved my issue with a bit of manual work though)

:slight_smile:

1 Like

No, it was never implemented. It’s pretty complicated to do it just right and it hasn’t been much of a priority because we don’t really expect people to be switching binaries that often. Caddy starts up fast enough that restarting should be very very fast anyways.

That’s moreso saying that running caddy upgrade won’t restart Caddy, you need to do that yourself.

1 Like