Releases: virtual-kubelet/virtual-kubelet
1.1.1
1.2.1
v1.2.0
Bug fixes:
- Fix log fromatting (@uzuku #776)
- Fix crash when provider
returns nil, nil
fromGetPodStatus()
(@cpuguy83, related to #781, fixed in #786 )
New Features:
Graceful pod deletion
In prior versions pods were deleted from Kubernetes immediately after a successful call to a provider's DeletePod()
. This meant it was impossible to collect information about terminal state. The new method is now more inline with how the Kubelet handles deletion:
- User calls
kubectl delete
- VK sees this and issues a
DeletePod
- Provider sends terminal status update OR VK times out waiting for a terminal status update after the pod's deletion grace period
- For the happy case in 3, VK receives a notification about the pod status update from k8s and adds the pod to the deletion queue. In the sad case the pod is just added to the deletion queue (actually in both cases the pod is added to the deletion queue no matter what after the grace period is up).
- Deletion queue is processed and pod is deleted from k8s.
Note: If there is a breaking change with this, it should be considered a bug, so please file an issue if you run into a problem!
v1.1.0
This release is mostly bug fixes for race conditions and how the pod controller is initialized.
New Features:
- Importable e2e test suite (@chewong #758)
- Adds new methods for better introspection into the pod controller lifecycle: (@cpuguy83 #735)
Other notable changes:
- Bumps Kubernetes deps to 1.15, which also comes with some important bug fixes which were never backported to older releases. (@sargun #724) -- This is the primary purpose for the minor version bump instead of just a patch release
- NotifyPods will now store the pod status in memory so the status is not lost while in queue, this prevents the pod controller from having to ask the pod provider for a new status when the queue is actually processed, particularly useful when the pod is being deleted but a pod status update is in flight (@sargun #751)
- Pod controller now waits for all workers to exit before returning (@sargun #763)
Known bugs:
v1.0.0
The first major release of Virtual Kubelet.
Going forward there will be no more breaking API changes without bumping major versions.
Virtual Kubelet will not have binary releases in the repo, each provider is expected to manage their own releases.
The CLI included in this repo is for testing purposes only and is not considered "supported"
Charts are also not supported as they are provider specific. Expect these to move out to new repos.
Notable changes from v0.11.0:
v0.11.0
Notable changes:
- Move providers out of tree (#666, #670)
- Use go modules (#671)
- Move provider node configuration to a single
ConfigureNode
method (#680) - Bump k8s deps to 1.13.7, including reported version in CLI (#683)
- Fix error handling for provider errors on
DeletePod
(#685)
This is a big release as providers have been moved out of tree and are no longer compiled with the virutal-kubelet CLI in this repo.
Each provider now has it's own repo and CLI implementation along with their own release processes.
v0.10.0
Notable changes:
- Add errdefs package (#635)
- Fix loop trying to update pod that does not exist in Kubernetes (#633)
- Do not use
-a
on `make build -- allows use of go package cache (#646) - Refactor
Server
object intoPodController
(#629) - Add new regions for AWS Farget provider (#623)
- Add /runningpods/ API endpoint (#611)
- Add support for updating pods in the provider (#611)
- Refactor interfaces such the PodController defines the interface it uses and a "Provider" is a concept only for the CLI (#626)
- Fix parameter parsing for
exec
API endpoint (#604 - Support named ports for liveness/readiness probes in the Azure provider (#333)
- Initial support for downward API (#643)
- Support setting env var from services (downard API) (#573)
- Remove VMWare VIC provider (#605)
- Use I/O stream for logs endpoint (#574)
- Add concept of startup timeout (#597)