Features and Improvements
- Add force-reboot after drain-timeout duration has been exceeded #341
- Add prefer no schedule taint to avoid double draining of pods #250, #19
- Implement universal notification mechanism #315
- Add parameter for delaying release of lock #352
- Always drain before reboot #294, #18
- Add node annotations to identify kured reboot operations #296
- Parametrize reboot commands #297
Bugfixes
- Retry daemonset get operations #342
Build and Testing
- extend close-duration for stale issues and prs #325
- Update helm chart README using Make #293
- Change default branch to 'main' #337
- Update to alpine 3.13 #320
- Increase and update Test-Coverage with Github-Action #339, #355, #354, #365, #349, #328, #326, #344
Helm chart
- Expose the service name and maxUnavailable for rolling updates in the helm chart #280
- Use chart appVersion as default image-tag #335
- Add podLabels parameter #300
- Update chart definition to include --annotate-nodes #318
Docs
Notable dependency updates
- Support für Kubernetes 1.21.x #350, #290
- github.com/spf13/cobra 1.1.1 => 1.1.3
- github.com/sirupsen/logrus 1.7.0 => 1.8.1
- github.com/prometheus/common 0.18.0 => 0.25.0
- github.com/containrrr/shoutrrr 0.4.1 => 0.4.4
- github.com/prometheus/client_golang 1.8.0 => 1.10.0
Kubernetes Version Compatibility
The daemon image contains a 1.20.x k8s.io/{client-go,kubectl} for the purposes of maintaining the lock and draining worker nodes. Kubernetes aims to provide forwards & backwards compatibility of one minor version between client and server, so this should work on 1.19.x, 1.20.x and 1.21.x
Thanks a lot to everyone who contributed to kured since 1.6.1. Commits from @cnmcavoy, @ckotzbauer, @evrardjp, @dholbach, @atighineanu, @spingel, @papanito, @t3mi, @jackfrancis.