Sig Storage Lib External Provisioner Versions Save

v10.0.0

1 month ago

Urgent Upgrade Notes

(No, really, you MUST read this before you upgrade)

  • Using patch to update finalizers. Any external-provisioner now needs permission rules to patch PersistentVolumes. Please update RBAC rules of your provisioner. (#164, @carlory)

Changes by Kind

Feature

  • Contextual logging added. Some function arguments have been modified. (#154, @bells17)

Uncategorized

  • Added debug logs to shouldDelete function (#146, @amacaskill)
  • Update to Kubernetes 1.30 and go 1.22. Removed gometalinter. (#167, @jsafrane)

v9.1.0-rc.0

9 months ago

This is a pre-release with updated Kubernetes dependencies to v1.28.0-rc.0

v9.0.3

10 months ago

v8.0.1

1 year ago

Fix indefinite stuck Pending pod on a deleted node (#141, @sunnylovestiramisu)

v9.0.2

1 year ago

Fix indefinite stuck Pending pod on a deleted node (#139, @sunnylovestiramisu)

v9.0.1

1 year ago

Fixed go.mod to declare version v9.

v9.0.0

1 year ago
  • Action Needed: Updated leader election to use Endpoints + Lease. All provisioners based on this library must have RBAC permissions to create/update Lease objects in coordination.k8s.io/v1 API. (#120, @NikhilSharmaWe)
  • Added a new label source to controller_persistentvolumeclaim_provision_total metric. (#128, @RaunakShah)
  • Added support for external-provisioner.volume.kubernetes.io/finalizer on statically provisioned volumes. (#129, @deepakkinni)

v8.0.0

2 years ago
  • sig-storage-lib changes to support PV Deletion protection finalizer #117
    • Previously: if AddFinalizer were true, the controller only added "external-provisioner.volume.kubernetes.io/finalizer" to PVs at creation time. It could be removed before the provisioner deleted the PVs' respective volumes.
    • Now: if AddFinalizer is true, in certain situations the controller also adds "external-provisioner.volume.kubernetes.io/finalizer" to existing PVs to ensure that the provisioner deletes the PVs' respective volumes.
    • If AddFinalizer is false (default) then "external-provisioner.volume.kubernetes.io/finalizer" is never added to PVs.
    • See https://github.com/kubernetes/enhancements/tree/master/keps/sig-storage/2644-honor-pv-reclaim-policy and kubernetes-csi/external-provisioner#546 for details
  • Update annStorageProvisioner to GA version #110
    • As of kubernetes 1.23, "volume.beta.kubernetes.io/storage-provisioner" is deprecated in favor of "volume.kubernetes.io/storage-provisioner"

v7.0.1

2 years ago
  • Fix module path to include /v7 suffix #109

v7.0.0

2 years ago
  • Set provision-by anno to the storage class provisioner #104
    • Previous behavior: the pv.kubernetes.io/provisioned-by PV annotation was always set to the Controller's primary provisionerName
    • New behavior: if additionalProvisionerNames is passed to the Controller then the pv.kubernetes.io/provisioned-by PV annotation is set to the provisionerName or additionalProvisionerNames equal to the PV's StorageClass.
      • For example, if you have a Controller with provisionerName: ebs.csi.aws.com and additionalProvisionerNames: [kubernetes.io/aws-ebs] then PVs created for StorageClass with provisioner: ebs.csi.aws.com will have annotation pv.kubernetes.io/provisioned-by: ebs.csi.aws.com and PVs created for StorageClass with provisioner: kubernetes.io/aws-ebs will have annotation pv.kubernetes.io/provisioned-by: kubernetes.io/aws-ebs
  • Remove support for obsolete kubernetes versions #106
    • The kubeVersion argument to NewProvisionController is gone. This means it's no longer needed to discover the Kubernetes server version via the Kubernetes Discovery API to set the argument.