Releases: kubernetes-retired/external-storage
lib v5.5.0
lib v5.3.0-alpha.1
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x, v1.11.x, v1.12.x, v1.13.x
Requests/depends on k8s.io/* repos with version kubernetes-1.13.0-alpha.1
- Update to kubernetes 1.13.0
lib v5.2.0
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x, v1.12.x
Requests/depends on k8s.io/* repos with version kubernetes-1.12.0
- Update to kubernetes 1.12.0
lib v5.1.0
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x, v1.11.x
Requests/depends on k8s.io/* repos with version kubernetes-1.11.0
- Make leader-election configurable: default endpoints object namespace to controller's instead of kube-system (#957)
- This allows users to reduce the RBAC permissions they may have given to provisioners built with 5.0.x. Previously, RBAC yamls with clusterwide endpoints r/w permissions were distributed in example yamls, for production use it is recommended that users switch to using a Role/Rolebinding limited to kube-system/the provisioner's namespace (see for example https://github.com/kubernetes-incubator/external-storage/blob/master/aws/efs/deploy/rbac.yaml#L33 and https://github.com/kubernetes-incubator/external-storage/blob/7613414913107241b76ab4db559386c3a04062b0/aws/efs/README.md#rbac)
lib v5.0.1
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x, v1.11.x
Requests/depends on k8s.io/* repos with version kubernetes-1.11.0
lib v5.0.0
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x, v1.11.x
Requests/depends on k8s.io/* repos with version kubernetes-1.11.0
Action Required
-
The provisioner controller now does cluster leader election. (#892)
- ACTION REQUIRED: RBAC ClusterRoles need to be updated. Provisioners built with this version of the library need permission to read/write endpoints objects https://github.com/kubernetes-incubator/external-storage/blob/master/aws/efs/deploy/rbac.yaml#L19 and no longer need permission to read events. If you update a provisioner to this version without also updating its ClusterRole, it will not work and report errors acquiring leadership.
- Previously, the provisioner controller did per-PVC leader election. This was not scalable and also prone to errors (mitigated silently by timeouts). For more information for the rationale behind this change see kubernetes-csi/external-provisioner#68 . (Thank you @orainxiong)
TermLimit
parameter has been removed- (This breaks the nfs-provisioner DaemonSet deployment method. It will no longer be supported. If you depended on it, please create an issue.)
-
Fix provisioner controller calling
Run
for shared informers. (#892)- ACTION REQUIRED: call
Run
on your shared informers before starting the provisioner controller. You may have already been doing this, so the provisioner controller callingRun
again was a bug.
- ACTION REQUIRED: call
Other notable changes
lib v4.0.0
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x, v1.11.0
Requests/depends on k8s.io/*
repos with version kubernetes-1.11.0
- Expose
shouldProvision
to provisioners via new Provisioner interfaceQualifier
#588Provision
can returnIgnoredError
to do nothing and hope another provisioner will provision it. (ImplementingQualifier
is better sinceshouldProvision
happens earlier) #311
- Add block volume support check to external provisioners via new Provisioner interface
BlockProvisioner
#830 - Support
Retain
as reclaim policy #419 - Fix provisioning for >=1.5 to recognize annotation as authoritative (super rare race condition) #521
- ProvisionController support for shared informers #556
- Add metrics server support for provision controller. Default disabled. #796
- Use rate limited work queues and up resync from 15s to 15m #825
- Propagate StorageClass MountOptions to PVs https://github.com/kubernetes-incubator/external-storage/pull/835/files
- NOTE known issue: if a user specifies mount options but you don't want your provisioner to propagate them, there is no way to disable this functionality until #828 is implemented
lib v4.0.0-beta
Compatible with kubernetes v1.5.x, v1.6.x, v1.7.x, v1.8.x, v1.9.x, v1.10.x
Requests/depends on k8s.io/*
repos with version kubernetes-1.10.0-beta.1
(TODO: update to a stable tag) If you have other dependencies that request a different version, feel free to resolve the conflict by choosing the other dependencies' requested version and everything should still work.
- Expose
shouldProvision
to provisioners via new Provisioner interfaceQualifier
#588Provision
can returnIgnoredError
to do nothing and hope another provisioner will provision it. (ImplementingQualifier
is better sinceshouldProvision
happens earlier) #311
- Add block volume support check to external provisioners via new Provisioner interface
BlockProvisioner
#830 - Support
Retain
as reclaim policy #419 - Fix provisioning for >=1.5 to recognize annotation as authoritative (super rare race condition) #521
- ProvisionController support for shared informers #556
- Add metrics server support for provision controller. Default disabled. #796
- Use rate limited work queues and up resync from 15s to 15m #825
- Propagate StorageClass MountOptions to PVs https://github.com/kubernetes-incubator/external-storage/pull/835/files
- NOTE known issue: if a user specifies mount options but you don't want your provisioner to propagate them, there is no way to disable this functionality until #828 is implemented
v1.10.beta
APIs at 1.10beta level.
1.8.1: Merge pull request #614 from humblec/block-cns-3.9
Update version and changelog.