diff --git a/pkg/volume/aws_ebs/BUILD b/pkg/volume/aws_ebs/BUILD index b888ced7f94..4d377205920 100644 --- a/pkg/volume/aws_ebs/BUILD +++ b/pkg/volume/aws_ebs/BUILD @@ -26,6 +26,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/volume/aws_ebs/aws_ebs.go b/pkg/volume/aws_ebs/aws_ebs.go index 77dce23966f..6a046d7654b 100644 --- a/pkg/volume/aws_ebs/aws_ebs.go +++ b/pkg/volume/aws_ebs/aws_ebs.go @@ -35,6 +35,7 @@ import ( kstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -440,7 +441,7 @@ func (c *awsElasticBlockStoreProvisioner) Provision() (*v1.PersistentVolume, err Name: c.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "aws-ebs-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "aws-ebs-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/azure_dd/BUILD b/pkg/volume/azure_dd/BUILD index e940d4fbf54..acc86be9767 100644 --- a/pkg/volume/azure_dd/BUILD +++ b/pkg/volume/azure_dd/BUILD @@ -27,6 +27,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/Azure/azure-sdk-for-go/arm/compute:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", diff --git a/pkg/volume/azure_dd/azure_provision.go b/pkg/volume/azure_dd/azure_provision.go index 2cb7613d6e4..71679b5fcf8 100644 --- a/pkg/volume/azure_dd/azure_provision.go +++ b/pkg/volume/azure_dd/azure_provision.go @@ -26,6 +26,7 @@ import ( "k8s.io/kubernetes/pkg/api/v1" utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) var _ volume.DeletableVolumePlugin = &azureDataDiskPlugin{} @@ -143,7 +144,7 @@ func (a *azureDiskProvisioner) Provision() (*v1.PersistentVolume, error) { Name: a.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "azure-disk-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "azure-disk-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/azure_file/BUILD b/pkg/volume/azure_file/BUILD index a8dae8d50fd..577d65b69f2 100644 --- a/pkg/volume/azure_file/BUILD +++ b/pkg/volume/azure_file/BUILD @@ -25,6 +25,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/errors:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", diff --git a/pkg/volume/azure_file/azure_provision.go b/pkg/volume/azure_file/azure_provision.go index 46a483e6b97..1020b60cc84 100644 --- a/pkg/volume/azure_file/azure_provision.go +++ b/pkg/volume/azure_file/azure_provision.go @@ -28,6 +28,7 @@ import ( "k8s.io/kubernetes/pkg/cloudprovider/providers/azure" utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) var _ volume.DeletableVolumePlugin = &azureFilePlugin{} @@ -172,7 +173,7 @@ func (a *azureFileProvisioner) Provision() (*v1.PersistentVolume, error) { Name: a.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "azure-file-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "azure-file-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/cinder/BUILD b/pkg/volume/cinder/BUILD index 30e6822573a..a09e56a4dc1 100644 --- a/pkg/volume/cinder/BUILD +++ b/pkg/volume/cinder/BUILD @@ -29,6 +29,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/volume/cinder/cinder.go b/pkg/volume/cinder/cinder.go index 10f27e36100..fc6fbee01a1 100644 --- a/pkg/volume/cinder/cinder.go +++ b/pkg/volume/cinder/cinder.go @@ -36,6 +36,7 @@ import ( "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -491,7 +492,7 @@ func (c *cinderVolumeProvisioner) Provision() (*v1.PersistentVolume, error) { Name: c.options.PVName, Labels: labels, Annotations: map[string]string{ - "kubernetes.io/createdby": "cinder-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "cinder-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/flocker/BUILD b/pkg/volume/flocker/BUILD index 1765ad2040d..a7fa8593ac3 100644 --- a/pkg/volume/flocker/BUILD +++ b/pkg/volume/flocker/BUILD @@ -24,6 +24,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/clusterhq/flocker-go:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", diff --git a/pkg/volume/flocker/flocker_volume.go b/pkg/volume/flocker/flocker_volume.go index 46d01d5b9f6..703ae6f6815 100644 --- a/pkg/volume/flocker/flocker_volume.go +++ b/pkg/volume/flocker/flocker_volume.go @@ -23,6 +23,7 @@ import ( metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) type volumeManager interface { @@ -73,7 +74,7 @@ func (c *flockerVolumeProvisioner) Provision() (*v1.PersistentVolume, error) { Name: c.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "flocker-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "flocker-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/gce_pd/BUILD b/pkg/volume/gce_pd/BUILD index f52edac1499..b1cd654277e 100644 --- a/pkg/volume/gce_pd/BUILD +++ b/pkg/volume/gce_pd/BUILD @@ -26,6 +26,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/volume/gce_pd/gce_pd.go b/pkg/volume/gce_pd/gce_pd.go index 069a7f20a40..9abb1982a3d 100644 --- a/pkg/volume/gce_pd/gce_pd.go +++ b/pkg/volume/gce_pd/gce_pd.go @@ -31,6 +31,7 @@ import ( "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -384,7 +385,7 @@ func (c *gcePersistentDiskProvisioner) Provision() (*v1.PersistentVolume, error) Name: c.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "gce-pd-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "gce-pd-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/glusterfs/glusterfs.go b/pkg/volume/glusterfs/glusterfs.go index 3fbf2933313..0cb6a2df582 100644 --- a/pkg/volume/glusterfs/glusterfs.go +++ b/pkg/volume/glusterfs/glusterfs.go @@ -155,7 +155,7 @@ func (plugin *glusterfsPlugin) NewMounter(spec *volume.Spec, pod *v1.Pod, _ volu return nil, fmt.Errorf("failed to get endpoint %s, error %v", epName, err) } glog.Errorf("glusterfs: failed to get endpoint %s[%v]", epName, err) - if spec != nil && spec.PersistentVolume.Annotations["kubernetes.io/createdby"] == heketiAnn { + if spec != nil && spec.PersistentVolume.Annotations[volumehelper.VolumeDynamicallyCreatedByKey] == heketiAnn { class, err := volutil.GetClassForVolume(plugin.host.GetKubeClient(), spec.PersistentVolume) if err != nil { return nil, fmt.Errorf("glusterfs: failed to get storageclass, error: %v", err) @@ -862,11 +862,11 @@ func (p *glusterfsVolumeProvisioner) Provision() (*v1.PersistentVolume, error) { gidStr := strconv.FormatInt(int64(gid), 10) pv.Annotations = map[string]string{ - volumehelper.VolumeGidAnnotationKey: gidStr, - "kubernetes.io/createdby": heketiAnn, - glusterTypeAnn: "file", - "Description": glusterDescAnn, - v1.MountOptionAnnotation: "auto_unmount", + volumehelper.VolumeGidAnnotationKey: gidStr, + volumehelper.VolumeDynamicallyCreatedByKey: heketiAnn, + glusterTypeAnn: "file", + "Description": glusterDescAnn, + v1.MountOptionAnnotation: "auto_unmount", } pv.Spec.Capacity = v1.ResourceList{ diff --git a/pkg/volume/host_path/BUILD b/pkg/volume/host_path/BUILD index 004b988e267..0d0776dd567 100644 --- a/pkg/volume/host_path/BUILD +++ b/pkg/volume/host_path/BUILD @@ -18,6 +18,7 @@ go_library( deps = [ "//pkg/api/v1:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/types:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library", diff --git a/pkg/volume/host_path/host_path.go b/pkg/volume/host_path/host_path.go index df94a9b6a30..41d234a5ef6 100644 --- a/pkg/volume/host_path/host_path.go +++ b/pkg/volume/host_path/host_path.go @@ -26,6 +26,7 @@ import ( "k8s.io/apimachinery/pkg/util/uuid" "k8s.io/kubernetes/pkg/api/v1" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -250,7 +251,7 @@ func (r *hostPathProvisioner) Provision() (*v1.PersistentVolume, error) { ObjectMeta: metav1.ObjectMeta{ Name: r.options.PVName, Annotations: map[string]string{ - "kubernetes.io/createdby": "hostpath-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "hostpath-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/photon_pd/BUILD b/pkg/volume/photon_pd/BUILD index 6f4dca51f5f..21daa033fe9 100644 --- a/pkg/volume/photon_pd/BUILD +++ b/pkg/volume/photon_pd/BUILD @@ -25,6 +25,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/volume/photon_pd/photon_pd.go b/pkg/volume/photon_pd/photon_pd.go index 5a1783a78ce..e5cd8ca09be 100644 --- a/pkg/volume/photon_pd/photon_pd.go +++ b/pkg/volume/photon_pd/photon_pd.go @@ -31,6 +31,7 @@ import ( utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -356,7 +357,7 @@ func (p *photonPersistentDiskProvisioner) Provision() (*v1.PersistentVolume, err Name: p.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "photon-volume-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "photon-volume-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/portworx/BUILD b/pkg/volume/portworx/BUILD index 8c6747b53c5..68899c10619 100644 --- a/pkg/volume/portworx/BUILD +++ b/pkg/volume/portworx/BUILD @@ -38,6 +38,7 @@ go_library( "//pkg/util/mount:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/github.com/libopenstorage/openstorage/api:go_default_library", "//vendor/github.com/libopenstorage/openstorage/api/client:go_default_library", diff --git a/pkg/volume/portworx/portworx.go b/pkg/volume/portworx/portworx.go index c63a237adb3..9d5a6123aa4 100644 --- a/pkg/volume/portworx/portworx.go +++ b/pkg/volume/portworx/portworx.go @@ -29,6 +29,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" kstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -360,7 +361,7 @@ func (c *portworxVolumeProvisioner) Provision() (*v1.PersistentVolume, error) { Name: c.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "portworx-volume-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "portworx-volume-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/quobyte/BUILD b/pkg/volume/quobyte/BUILD index 15ba87ec8b6..fdd3da86c88 100644 --- a/pkg/volume/quobyte/BUILD +++ b/pkg/volume/quobyte/BUILD @@ -23,6 +23,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/github.com/pborman/uuid:go_default_library", "//vendor/github.com/quobyte/api:go_default_library", diff --git a/pkg/volume/quobyte/quobyte.go b/pkg/volume/quobyte/quobyte.go index 7f14568148b..9afc91903b8 100644 --- a/pkg/volume/quobyte/quobyte.go +++ b/pkg/volume/quobyte/quobyte.go @@ -33,6 +33,7 @@ import ( "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // ProbeVolumePlugins is the primary entrypoint for volume plugins. @@ -402,6 +403,7 @@ func (provisioner *quobyteVolumeProvisioner) Provision() (*v1.PersistentVolume, return nil, err } pv := new(v1.PersistentVolume) + metav1.SetMetaDataAnnotation(&pv.ObjectMeta, volumehelper.VolumeDynamicallyCreatedByKey, "quobyte-dynamic-provisioner") pv.Spec.PersistentVolumeSource.Quobyte = vol pv.Spec.PersistentVolumeReclaimPolicy = provisioner.options.PersistentVolumeReclaimPolicy pv.Spec.AccessModes = provisioner.options.PVC.Spec.AccessModes diff --git a/pkg/volume/rbd/BUILD b/pkg/volume/rbd/BUILD index df8575e0f5a..e79c795b5b3 100644 --- a/pkg/volume/rbd/BUILD +++ b/pkg/volume/rbd/BUILD @@ -26,8 +26,10 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", + "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", "//vendor/k8s.io/apimachinery/pkg/types:go_default_library", "//vendor/k8s.io/apimachinery/pkg/util/uuid:go_default_library", ], diff --git a/pkg/volume/rbd/rbd.go b/pkg/volume/rbd/rbd.go index 240b10773b9..4532c311b68 100644 --- a/pkg/volume/rbd/rbd.go +++ b/pkg/volume/rbd/rbd.go @@ -22,6 +22,7 @@ import ( "github.com/golang/glog" "k8s.io/apimachinery/pkg/api/resource" + metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/types" "k8s.io/apimachinery/pkg/util/uuid" "k8s.io/kubernetes/pkg/api/v1" @@ -31,6 +32,7 @@ import ( "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" volutil "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -319,6 +321,7 @@ func (r *rbdVolumeProvisioner) Provision() (*v1.PersistentVolume, error) { } glog.Infof("successfully created rbd image %q", image) pv := new(v1.PersistentVolume) + metav1.SetMetaDataAnnotation(&pv.ObjectMeta, volumehelper.VolumeDynamicallyCreatedByKey, "rbd-dynamic-provisioner") rbd.SecretRef = new(v1.LocalObjectReference) rbd.SecretRef.Name = secretName rbd.RadosUser = r.Id diff --git a/pkg/volume/scaleio/BUILD b/pkg/volume/scaleio/BUILD index 380d6f4bba2..99d375f8de3 100644 --- a/pkg/volume/scaleio/BUILD +++ b/pkg/volume/scaleio/BUILD @@ -48,6 +48,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/codedellemc/goscaleio:go_default_library", "//vendor/github.com/codedellemc/goscaleio/types/v1:go_default_library", "//vendor/github.com/golang/glog:go_default_library", diff --git a/pkg/volume/scaleio/sio_volume.go b/pkg/volume/scaleio/sio_volume.go index 8ff53049d31..979ca57d843 100644 --- a/pkg/volume/scaleio/sio_volume.go +++ b/pkg/volume/scaleio/sio_volume.go @@ -34,6 +34,7 @@ import ( kstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) type sioVolume struct { @@ -274,7 +275,7 @@ func (v *sioVolume) Provision() (*api.PersistentVolume, error) { Namespace: v.options.PVC.Namespace, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "scaleio-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "scaleio-dynamic-provisioner", }, }, Spec: api.PersistentVolumeSpec{ diff --git a/pkg/volume/testing/BUILD b/pkg/volume/testing/BUILD index 108dc96197a..8615e10f87c 100644 --- a/pkg/volume/testing/BUILD +++ b/pkg/volume/testing/BUILD @@ -22,6 +22,7 @@ go_library( "//pkg/util/mount:go_default_library", "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/stretchr/testify/mock:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/volume/testing/testing.go b/pkg/volume/testing/testing.go index 6c809c987cb..95ee00c2aad 100644 --- a/pkg/volume/testing/testing.go +++ b/pkg/volume/testing/testing.go @@ -39,6 +39,7 @@ import ( "k8s.io/kubernetes/pkg/util/mount" utilstrings "k8s.io/kubernetes/pkg/util/strings" . "k8s.io/kubernetes/pkg/volume" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // fakeVolumeHost is useful for testing volume plugins. @@ -485,7 +486,7 @@ func (fc *FakeProvisioner) Provision() (*v1.PersistentVolume, error) { ObjectMeta: metav1.ObjectMeta{ Name: fc.Options.PVName, Annotations: map[string]string{ - "kubernetes.io/createdby": "fakeplugin-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "fakeplugin-provisioner", }, }, Spec: v1.PersistentVolumeSpec{ diff --git a/pkg/volume/util/volumehelper/volumehelper.go b/pkg/volume/util/volumehelper/volumehelper.go index f667af25f50..afb5bd5b57f 100644 --- a/pkg/volume/util/volumehelper/volumehelper.go +++ b/pkg/volume/util/volumehelper/volumehelper.go @@ -40,6 +40,10 @@ const ( // VolumeGidAnnotationKey is the of the annotation on the PersistentVolume // object that specifies a supplemental GID. VolumeGidAnnotationKey = "pv.beta.kubernetes.io/gid" + + // VolumeDynamicallyCreatedByKey is the key of the annotation on PersistentVolume + // object created dynamically + VolumeDynamicallyCreatedByKey = "kubernetes.io/createdby" ) // GetUniquePodName returns a unique identifier to reference a pod by diff --git a/pkg/volume/vsphere_volume/BUILD b/pkg/volume/vsphere_volume/BUILD index 681fbc054d7..aeb826e0c62 100644 --- a/pkg/volume/vsphere_volume/BUILD +++ b/pkg/volume/vsphere_volume/BUILD @@ -26,6 +26,7 @@ go_library( "//pkg/util/strings:go_default_library", "//pkg/volume:go_default_library", "//pkg/volume/util:go_default_library", + "//pkg/volume/util/volumehelper:go_default_library", "//vendor/github.com/golang/glog:go_default_library", "//vendor/k8s.io/apimachinery/pkg/api/resource:go_default_library", "//vendor/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library", diff --git a/pkg/volume/vsphere_volume/vsphere_volume.go b/pkg/volume/vsphere_volume/vsphere_volume.go index e466fc373e1..ce513832cd2 100644 --- a/pkg/volume/vsphere_volume/vsphere_volume.go +++ b/pkg/volume/vsphere_volume/vsphere_volume.go @@ -32,6 +32,7 @@ import ( utilstrings "k8s.io/kubernetes/pkg/util/strings" "k8s.io/kubernetes/pkg/volume" "k8s.io/kubernetes/pkg/volume/util" + "k8s.io/kubernetes/pkg/volume/util/volumehelper" ) // This is the primary entrypoint for volume plugins. @@ -358,7 +359,7 @@ func (v *vsphereVolumeProvisioner) Provision() (*v1.PersistentVolume, error) { Name: v.options.PVName, Labels: map[string]string{}, Annotations: map[string]string{ - "kubernetes.io/createdby": "vsphere-volume-dynamic-provisioner", + volumehelper.VolumeDynamicallyCreatedByKey: "vsphere-volume-dynamic-provisioner", }, }, Spec: v1.PersistentVolumeSpec{