Releases: kubereboot/kured
Kured 1.9.0
Features and Improvements
- Exclude terminated pods from the blocking mechanism #459
- bind environment variables to cobra flags with viper #464
Bugfixes
- update image tag to 1.8.2 #472
Build and Testing
Helm chart
- Support json logformatter #456
Notable dependency updates
- Update k8s dependencies to 0.22.4 #475
- Bump github.com/spf13/viper from 1.8.1 to 1.9.0
- Bump nick-invision/retry from 2.5.1 to 2.6.0
- Bump github.com/spf13/viper from 1.9.0 to 1.10.0
- Bump github.com/spf13/cobra from 1.2.1 to 1.3.0
- Bump github.com/spf13/viper from 1.10.0 to 1.10.1
Kubernetes Version Compatibility
The daemon image contains a 1.22.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.21.x, 1.22.x and 1.23.x
Thanks a lot to everyone who contributed to kured since 1.9.0. Commits from @georgekaz, @dkulchinsky, @dholbach, @ckotzbauer
Kured 1.8.2
Minor Release 1.8.2
1.8.1
was only half-released - so here the changelog for all changes since 1.8.0
.
No breaking changes, but you might want to double-check and review https://containrrr.dev/shoutrrr/v0.5/services/overview/ though to make sure you got your notify-url
(new) or slack-hook-url
(old) correct. See #368 for more detail.
Features and Improvements
- Release images to GHCR as well as DockerHub #439
- Support json logformatter
This commit introduces a new flag '--log-format' that allows a user
to configure json logging on the pods. If the log-format
is not specified, the formatter will default to the existing
text formatter.
Dependency Updates
- Alpine 3.15.0 #467
- dependabot: update docker images too
- various GH Actions
- github.com/prometheus/common 0.32.0 #453
- github.com/containrrr/shoutrrr 0.5.2 #450
Clean Up
- Remove notification/slack package #368
Helm Chart
- add missing prefer-no-schedule-taint
- add rebott-sentinel-command
- correct indent #447
- add reboot-delay
- add alert-firing-only
Kubernetes Version Compatibility
The daemon image contains a 1.21.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.20.x, 1.21.x and 1.22.x
Thanks a lot to everyone who contributed to kured since 1.8.0. Commits from @MattJeanes @amorey @atighineanu @ckotzbauer @dholbach Daniel Kvist @jackfrancis @evrardjp
1.8.0
Features and Improvements
- Add
reboot-delay
command line argument #418 - feat: updated to [email protected]
- update to go 1.16 (follow the load of k8s 1.21)
- Add --alert-firing-only parameter to only consider firing alerts #410
- Restructuring Prometheus client, added unit-tests to regex-queries active alerts (#386)
Bugfixes
Build and Testing
- build: updated to [email protected]
- fix: do not use array for stale action (#433)
- build: added [email protected] and dropped [email protected]
- our 'good first issue' issue label has no '-', add 'keep'
Helm chart
- Add force-reboot and drain timeouts to chart config and ds #360
- update chart definition to include --notify-url #338
- Add lockReleaseDelay parameter to helm chart #353
- Change default updateStrategy to RollingUpdate (#420)
- fix: common default reboot command for code and chart #408
- Added rebootCommand values (#394)
- Added possibility to mount volumes (#407)
Docs
- doc: update image-version
- doc: some clarification for release-docs
- link to versioned shoutrrr docs #402
- Add jackfrancis to MAINTAINERS #440
Notable dependency updates
- Bump helm/chart-testing-action from 2.0.1 to 2.1.0
- Bump github.com/prometheus/common from 0.25.0 to 0.29.0
- Bump nick-invision/retry from 2.4.0 to 2.4.1
- Bump helm/kind-action from 1.1.0 to 1.2.0
- Bump github.com/spf13/cobra from 1.1.3 to 1.2.1
- Bump actions/stale from 3.0.19 to 4
- Bump github.com/prometheus/common from 0.29.0 to 0.30.0 (#414)
- Bump github.com/containrrr/shoutrrr from 0.4.4 to 0.5.0
- Bump github.com/containrrr/shoutrrr from 0.5.0 to 0.5.1
- Bump guyarb/golang-test-annoations from 0.4.0 to 0.5.0
- Bump github.com/prometheus/common from 0.30.0 to 0.31.0
- Bump github.com/prometheus/common from 0.31.0 to 0.31.1
- Bump nick-invision/retry from 2.4.1 to 2.5.0
Kubernetes Version Compatibility
The daemon image contains a 1.21.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.20.x, 1.21.x and 1.22.x
Thanks a lot to everyone who contributed to kured since 1.7.0. Commits from @piksel, @amorey, @jackfrancis, @dkulchinsky, @dhoeld, @MattJeanes, @evrardjp, @renaudhager, @SimeonPoot, @spingel, @atighineanu, @dholbach, @ckotzbauer
Kured 1.7.0
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.
Kured 1.6.1
This is a follow-up release to 1.6.0, bringing in #291 to fix the release automation.
Kured 1.6.0
From a user perspective, this release will mostly bring you up to date with Kubernetes 1.[18,19,20].x. Behind the scenes Jean-Philippe Evrard (SUSE) put a lot of effort into automated testing, which will give us more confidence in the code we merge.
Improvements
- add additional parameters to override the drain/reboot slack messages
- rename message template parameters so they are not related to slack
- Improve coordinated reboot output
- Add more logs into gates
- Added support for time wrap in timewindow.Contains
Build / testing
- Bump to golang 1.15
- Add smoke/basic functional test
- Auto expire issues and PRs
- Always have latest helm binary installed
- Increase kubernetes versions test matrix for smoke tests
- Add kustomize testing
- Simplify manifest testing
- Add Shellcheck
- Cleanup github actions
- Fix chart linter
- Simplify action code
- Do not bump kubernetes with dependabot
- Force golang version
- Publish image on tag
- Point docs to current golang version
- Publish image on master merged changes
- Update for kubernetes 1.20 support
- Fix comment spacing
- Auto-publish helm chart on master change
- Do not bump any k8s module
- Temporarily workaround alpine issue
- Refresh kind cluster versions
Docs
- Clarify development process
- Clarify development process for helm charts
- Corrected README Setting a schedule configuration example
Kubernetes Version Compatibility
The daemon image contains a 1.18.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.1{18,19,20}.x.
Thanks a lot to everyone who contributed to kured since 1.5.1. Commits from @DaniJG, dependabot[bot], @dholbach, @evrardjp, @jack-education, @morancj.
Kured 1.5.1
Commits since 1.5.0 by @bboreham, @dholbach, @evrardjp, @mvisonneau, @smueller18. Thanks a lot for your help everyone!
Breaking changes
--annotationTTL
was renamed to --lockTTL
(Helm chart values accordingly). Unfortunately this feature didn't quite work in the past release (see #213 etc.), so the breaking change is not as bad as it sounds.
Bug fixes
- #213 and #238: Replaced --annotationTTL with --lockTTL and made it work correctly
- #237: Drain: allow pods grace period to terminate
- #166: Remove quote for parameter alert-filter-regexp
Clean Up
- #217: Clean up deps, update docs to explain state post-210
- #210: feature: Remove kubectl bin
- #198: fix: Follow DKL-DI-0004 guideline
- #194: add missing quote - thanks Karan Arora for reporting
Release automation
- #185: Release helper
- #221: Add Lint job in github actions
- #222: Make go lint on pkg folder happier
- #215: Make go lint on cmd folder happier
Kubernetes Version Compatibility
The daemon image contains a 1.18.x k8s.io/client-go and k8s.io/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.1[789].x.
Kured 1.5.0
If you have been upgrading through the 1.4.x releases, 1.5.0 mostly just adds support for newer k8s client tools and updates other internal build components.
Since 1.4.0 we landed quite a few improvements though.
Improvements
- #119: Adding --annotation-ttl for automatic unlock
- #150: Move kured Helm Chart from /helm/charts/stable
- reapply #134: print node id when commanding reboot
Updates
- Many improvements and modernisation for chart and documentation
- #139: Update to work for match k8s 1.1[789].x
Thanks a lot to @audunsolemdal, @bboreham, @ckotzbauer, @davidkarlsen, @dholbach, @evrardjp and @michalschott who contributed to this release.
Kubernetes Version Compatibility
The daemon image contains a 1.18.x k8s.io/client-go and kubectl binary 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.1[789].x.
Kured 1.4.5
This release is part of the 1.4.x series and adds
- Chart: Support extraEnvVars
- documentation updates
Thanks a lot to @audunsolemdal, @ckotzbauer and @dholbach who contributed to this release.
Kured 1.4.4
Thanks @davidkarlsen and @ckotzbauer for figuring out issues with the Helm chart.
We are just about to resolve #140 and thus be able to deprecate the charts in /helm/charts this way.