Added
- Example manifests use new
node-role.kubernetes.io/control-plane
tolerations in addition to legacynode-role.kubernetes.io/master
. - Added release pipeline which will be building release container images from now on.
- Added compatibility with Kubernetes versions v1.24+.
kustomization.yaml
file has been added to example manifests to enable using them withkustomize
.
Changed
- Moved from
github.com/flatcar-linux/flatcar-linux-update-operator
togithub.com/flatcar/flatcar-linux-update-operator
. This also means that the docker images will be now available atghcr.io/flatcar/flatcar-linux-update-operator
. The0.8.0
image is still available at the old location, but no new images will be pushed there. - Everything is now built using Go 1.19.
- Updated all Go dependencies.
- Dropped dependency on
github.com/flatcar-linux/locksmith
. - In example manifests use Role resource instead of ClusterRole where possible to limit scope of permissions.
- Limited operator access to config maps only to one used for leader election in example manifests.
- Improved agent responsiveness to context cancellation.
- Agent code is now covered with tests and some initial refactorings has been performed.
- Container images now use Alpine Linux version v3.15 as a base image.
- Draining pods is now done using Eviction API when possible.
- Capitalization of log messages and formatting of produced errors is now more consistent.
latest
tag for container images will no longer be used. Users are recommended to use specific versions.
Fixed
- Publishing leader election events by operator.
- Agent main loop leaking goroutine when agent is stopped.
- Used service account by agent in example manifests.
Removed
- Unused RBAC permissions from agent and operator example manifest.
- Unreachable agent code.
- Deprecated
--auto-label-flatcar-linux
flag has been removed from operator. - Pod Security Policies has been removed from example manifests, as their support has been removed in Kubernetes 1.25.