Skip to content

Commit 3ea2807

Browse files
authored
Merge pull request kubernetes#80375 from wongma7/framework-csidriver
Add CSIDriver creation factory to e2e framework
2 parents 7dc5d1f + 5060704 commit 3ea2807

File tree

2 files changed

+26
-0
lines changed

2 files changed

+26
-0
lines changed

test/e2e/framework/BUILD

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ go_library(
5757
"//staging/src/k8s.io/api/policy/v1beta1:go_default_library",
5858
"//staging/src/k8s.io/api/rbac/v1:go_default_library",
5959
"//staging/src/k8s.io/api/storage/v1:go_default_library",
60+
"//staging/src/k8s.io/api/storage/v1beta1:go_default_library",
6061
"//staging/src/k8s.io/apimachinery/pkg/api/errors:go_default_library",
6162
"//staging/src/k8s.io/apimachinery/pkg/api/resource:go_default_library",
6263
"//staging/src/k8s.io/apimachinery/pkg/apis/meta/v1:go_default_library",

test/e2e/framework/create.go

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727
v1 "k8s.io/api/core/v1"
2828
rbacv1 "k8s.io/api/rbac/v1"
2929
storagev1 "k8s.io/api/storage/v1"
30+
storagev1beta1 "k8s.io/api/storage/v1beta1"
3031
apierrs "k8s.io/apimachinery/pkg/api/errors"
3132
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3233
"k8s.io/apimachinery/pkg/runtime"
@@ -279,6 +280,7 @@ var errorItemNotSupported = errors.New("not supported")
279280
var factories = map[What]ItemFactory{
280281
{"ClusterRole"}: &clusterRoleFactory{},
281282
{"ClusterRoleBinding"}: &clusterRoleBindingFactory{},
283+
{"CSIDriver"}: &csiDriverFactory{},
282284
{"DaemonSet"}: &daemonSetFactory{},
283285
{"Role"}: &roleFactory{},
284286
{"RoleBinding"}: &roleBindingFactory{},
@@ -328,6 +330,8 @@ func (f *Framework) patchItemRecursively(item interface{}) error {
328330
f.PatchName(&item.Name)
329331
case *storagev1.StorageClass:
330332
f.PatchName(&item.Name)
333+
case *storagev1beta1.CSIDriver:
334+
f.PatchName(&item.Name)
331335
case *v1.ServiceAccount:
332336
f.PatchNamespace(&item.ObjectMeta.Namespace)
333337
case *v1.Secret:
@@ -570,6 +574,27 @@ func (*storageClassFactory) Create(f *Framework, i interface{}) (func() error, e
570574
}, nil
571575
}
572576

577+
type csiDriverFactory struct{}
578+
579+
func (f *csiDriverFactory) New() runtime.Object {
580+
return &storagev1beta1.CSIDriver{}
581+
}
582+
583+
func (*csiDriverFactory) Create(f *Framework, i interface{}) (func() error, error) {
584+
item, ok := i.(*storagev1beta1.CSIDriver)
585+
if !ok {
586+
return nil, errorItemNotSupported
587+
}
588+
589+
client := f.ClientSet.StorageV1beta1().CSIDrivers()
590+
if _, err := client.Create(item); err != nil {
591+
return nil, errors.Wrap(err, "create CSIDriver")
592+
}
593+
return func() error {
594+
return client.Delete(item.GetName(), &metav1.DeleteOptions{})
595+
}, nil
596+
}
597+
573598
type secretFactory struct{}
574599

575600
func (f *secretFactory) New() runtime.Object {

0 commit comments

Comments
 (0)