Add TLS Hot Reload. Fixes #94
This is a very simple implementation. It optionally checks the disk for changes to the key / cert files and attempts to reload them if it detects the modification time or the size has changed.
What does this PR change? What problem does it solve?
TLS hot reload
Describe the changes and their purpose here, as detailed as needed.
It is desirable to automatically start using a new certificate such as when letsencrypt renewals happen.
Was the change previously discussed in an issue or on the forum?
yes, #94
Checklist
- [x] I have added tests for all code changes.
- [x] I have added documentation for relevant changes (in the manual).
- [ ] There's a new file in
changelog/unreleased/that describes the changes for our users (see template). - [x] I'm done! This pull request is ready for review.
I know i keep squashing changes / force pushing, but from this point I'm pretty happy with it and am running it locally so I think I'm hands off. I know some other (old, old) pending PRs have meant to solve this same issue, but this PR does it without adding any external depencies. This isn't a hard problem to solve, and there is a lot of value in solving it (to me), so I'd love to see this reviewed at some point.