-
Notifications
You must be signed in to change notification settings - Fork 349
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
External provisioner misses VolumeSource support for CLONE_VOLUMES #172
Comments
/assign @jsafrane |
kubernetes used for testing
|
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and Populators (external CRDs). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied (the Kubernetes API currently enforces this anyway via it's verifictaion checks) and adds handling for a DataSource.Kind of PersistentVolumeClaim. In addition for things like external populators, we provide a default case that just logs that the proviserion doesn't take any action on the received type, but if the type is supported/allowed via the Kubernetes API then the DataSource information is stll in the spec for external controllers to act upon. This allows external controllers to work (again requires Kubernetes API support), and can be formalized/added easily when an official populator controller is merged. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and Populators (external CRDs). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied (the Kubernetes API currently enforces this anyway via it's verifictaion checks) and adds handling for a DataSource.Kind of PersistentVolumeClaim. In addition for things like external populators, we provide a default case that just logs that the proviserion doesn't take any action on the received type, but if the type is supported/allowed via the Kubernetes API then the DataSource information is stll in the spec for external controllers to act upon. This allows external controllers to work (again requires Kubernetes API support), and can be formalized/added easily when an official populator controller is merged. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and external API Object types. It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. In the case of specified DataSources that the provisioner doesn't deal with, we just log that the provisioner doesn't take any action on the specified type, and continue with provisioning ignoring the DataSource field. This not only enables Clone requests, but it also allows development of external controllers to initialize newly created volumes. Additional improvements/enhancements will be added via PV/PVC taints and tolerations when they're implemented. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and external API Object types. It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. In the case of specified DataSources that the provisioner doesn't deal with, we just log that the provisioner doesn't take any action on the specified type, and continue with provisioning ignoring the DataSource field. This not only enables Clone requests, but it also allows development of external controllers to initialize newly created volumes. Additional improvements/enhancements will be added via PV/PVC taints and tolerations when they're implemented. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and external API Object types. It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. In the case of specified DataSources that the provisioner doesn't deal with, we just log that the provisioner doesn't take any action on the specified type, and continue with provisioning ignoring the DataSource field. This not only enables Clone requests, but it also allows development of external controllers to initialize newly created volumes. Additional improvements/enhancements will be added via PV/PVC taints and tolerations when they're implemented. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and external API Object types. It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. In the case of specified DataSources that the provisioner doesn't deal with, we just log that the provisioner doesn't take any action on the specified type, and continue with provisioning ignoring the DataSource field. This not only enables Clone requests, but it also allows development of external controllers to initialize newly created volumes. Additional improvements/enhancements will be added via PV/PVC taints and tolerations when they're implemented. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone) and external API Object types. It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. In the case of specified DataSources that the provisioner doesn't deal with, we just log that the provisioner doesn't take any action on the specified type, and continue with provisioning ignoring the DataSource field. This not only enables Clone requests, but it also allows development of external controllers to initialize newly created volumes. Additional improvements/enhancements will be added via PV/PVC taints and tolerations when they're implemented. Addresses: Issue kubernetes-csi#172
Volume cloning feature for Kubernetes is currently being targetted for an alpha in 1.15. The KEP has been approved: https://github.com/kubernetes/enhancements/blob/master/keps/sig-storage/20181111-extend-datasource-field.md. |
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. This implements the ability to specify a clone, and pass that dataSource on to plugins that report support for the capability. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. This implements the ability to specify a clone, and pass that dataSource on to plugins that report support for the capability. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. This implements the ability to specify a clone, and pass that dataSource on to plugins that report support for the capability. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. This implements the ability to specify a clone, and pass that dataSource on to plugins that report support for the capability. Addresses: Issue kubernetes-csi#172
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. This implements the ability to specify a clone, and pass that dataSource on to plugins that report support for the capability. Addresses: Issue kubernetes-csi#172
Implemented by #220 |
@msau42: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
This PR extends the supported DataSources handled by the external-provisioner to include PVCs (Clone). It removes the restriction of of the provisioner erroring when a DataSource.Kind of anything other than VolumeSnapshot is supplied and adds handling for a DataSource.Kind of PersistentVolumeClaim. This implements the ability to specify a clone, and pass that dataSource on to plugins that report support for the capability. Addresses: Issue kubernetes-csi#172
CSI 1.0.0 has VolumeSource struct in VolumeContentSource for supporting cloning volumes (container-storage-interface/spec@7a8d2d5) , but the required changes are not there in the external-provisioner .
This is the template we used for testing, am i missing anything here?
The error we receive.
The text was updated successfully, but these errors were encountered: