Skip to content

Commit ce6a2e1

Browse files
authored
Merge pull request #932 from wongma7/legacytag
Add KubernetesCluster tag to provisioned volumes when cluster-id set
2 parents 0d9a1a5 + 3c8119f commit ce6a2e1

File tree

3 files changed

+19
-11
lines changed

3 files changed

+19
-11
lines changed

pkg/driver/constants.go

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,11 @@ const (
8686
// in-tree volume plugin. Used only when --cluster-id is set.
8787
NameTag = "Name"
8888

89+
// KubernetesClusterTag is tag applied to provisioned EBS volume for backward compatibility with
90+
// in-tree volume plugin. Used only when --cluster-id is set.
91+
// See https://github.com/kubernetes/cloud-provider-aws/blob/release-1.20/pkg/providers/v1/tags.go#L38-L41.
92+
KubernetesClusterTag = "KubernetesCluster"
93+
8994
// PVCNameTag is tag applied to provisioned EBS volume for backward compatibility
9095
// with in-tree volume plugin. Value of the tag is PVC name. It is applied only when
9196
// the external provisioner sidecar is started with --extra-create-metadata=true and

pkg/driver/controller.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -220,6 +220,7 @@ func (d *controllerService) CreateVolume(ctx context.Context, req *csi.CreateVol
220220
resourceLifecycleTag := ResourceLifecycleTagPrefix + d.driverOptions.kubernetesClusterID
221221
volumeTags[resourceLifecycleTag] = ResourceLifecycleOwned
222222
volumeTags[NameTag] = d.driverOptions.kubernetesClusterID + "-dynamic-" + volName
223+
volumeTags[KubernetesClusterTag] = d.driverOptions.kubernetesClusterID
223224
}
224225
for k, v := range d.driverOptions.extraTags {
225226
volumeTags[k] = v

pkg/driver/controller_test.go

Lines changed: 13 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1356,12 +1356,14 @@ func TestCreateVolume(t *testing.T) {
13561356
name: "success with cluster-id",
13571357
testFunc: func(t *testing.T) {
13581358
const (
1359-
volumeName = "random-vol-name"
1360-
clusterID = "test-cluster-id"
1361-
expectedOwnerTag = "kubernetes.io/cluster/test-cluster-id"
1362-
expectedOwnerTagValue = "owned"
1363-
expectedNameTag = "Name"
1364-
expectedNameTagValue = "test-cluster-id-dynamic-random-vol-name"
1359+
volumeName = "random-vol-name"
1360+
clusterID = "test-cluster-id"
1361+
expectedOwnerTag = "kubernetes.io/cluster/test-cluster-id"
1362+
expectedOwnerTagValue = "owned"
1363+
expectedNameTag = "Name"
1364+
expectedNameTagValue = "test-cluster-id-dynamic-random-vol-name"
1365+
expectedKubernetesClusterTag = "KubernetesCluster"
1366+
expectedKubernetesClusterTagValue = "test-cluster-id"
13651367
)
13661368
req := &csi.CreateVolumeRequest{
13671369
Name: volumeName,
@@ -1381,10 +1383,11 @@ func TestCreateVolume(t *testing.T) {
13811383
diskOptions := &cloud.DiskOptions{
13821384
CapacityBytes: stdVolSize,
13831385
Tags: map[string]string{
1384-
cloud.VolumeNameTagKey: volumeName,
1385-
cloud.AwsEbsDriverTagKey: "true",
1386-
expectedOwnerTag: expectedOwnerTagValue,
1387-
expectedNameTag: expectedNameTagValue,
1386+
cloud.VolumeNameTagKey: volumeName,
1387+
cloud.AwsEbsDriverTagKey: "true",
1388+
expectedOwnerTag: expectedOwnerTagValue,
1389+
expectedNameTag: expectedNameTagValue,
1390+
expectedKubernetesClusterTag: expectedKubernetesClusterTagValue,
13881391
},
13891392
}
13901393

@@ -1418,7 +1421,6 @@ func TestCreateVolume(t *testing.T) {
14181421
testFunc: func(t *testing.T) {
14191422
const (
14201423
volumeName = "random-vol-name"
1421-
clusterID = "test-cluster-id"
14221424
expectedPVCNameTag = "kubernetes.io/created-for/pvc/name"
14231425
expectedPVCNamespaceTag = "kubernetes.io/created-for/pvc/namespace"
14241426
expectedPVNameTag = "kubernetes.io/created-for/pv/name"

0 commit comments

Comments
 (0)