update csiDriver apiVersion
Signed-off-by: f10atin9 <f10atin9@kubesphere.io>
This commit is contained in:
@@ -100,7 +100,7 @@ func addControllers(
|
||||
storageCapabilityController := capability.NewController(
|
||||
client.Kubernetes().StorageV1().StorageClasses(),
|
||||
kubernetesInformer.Storage().V1().StorageClasses(),
|
||||
kubernetesInformer.Storage().V1beta1().CSIDrivers(),
|
||||
kubernetesInformer.Storage().V1().CSIDrivers(),
|
||||
)
|
||||
|
||||
volumeSnapshotController := snapshotclass.NewController(
|
||||
|
||||
@@ -1,120 +0,0 @@
|
||||
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: (devel)
|
||||
creationTimestamp: null
|
||||
name: provisionercapabilities.storage.kubesphere.io
|
||||
spec:
|
||||
group: storage.kubesphere.io
|
||||
names:
|
||||
kind: ProvisionerCapability
|
||||
listKind: ProvisionerCapabilityList
|
||||
plural: provisionercapabilities
|
||||
singular: provisionercapability
|
||||
scope: Cluster
|
||||
versions:
|
||||
- additionalPrinterColumns:
|
||||
- jsonPath: .spec.pluginInfo.name
|
||||
name: Provisioner
|
||||
type: string
|
||||
- jsonPath: .spec.features.volume.expandMode
|
||||
name: Expand
|
||||
type: string
|
||||
- jsonPath: .metadata.creationTimestamp
|
||||
name: Age
|
||||
type: date
|
||||
name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: ProvisionerCapability is the schema for the provisionercapability
|
||||
API
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: ProvisionerCapabilitySpec defines the desired state of ProvisionerCapability
|
||||
properties:
|
||||
features:
|
||||
description: CapabilityFeatures describe storage features
|
||||
properties:
|
||||
snapshot:
|
||||
description: SnapshotFeature describe snapshot features
|
||||
properties:
|
||||
create:
|
||||
type: boolean
|
||||
list:
|
||||
type: boolean
|
||||
required:
|
||||
- create
|
||||
- list
|
||||
type: object
|
||||
topology:
|
||||
type: boolean
|
||||
volume:
|
||||
description: VolumeFeature describe volume features
|
||||
properties:
|
||||
attach:
|
||||
type: boolean
|
||||
clone:
|
||||
type: boolean
|
||||
create:
|
||||
type: boolean
|
||||
expandMode:
|
||||
type: string
|
||||
list:
|
||||
type: boolean
|
||||
stats:
|
||||
type: boolean
|
||||
required:
|
||||
- attach
|
||||
- clone
|
||||
- create
|
||||
- expandMode
|
||||
- list
|
||||
- stats
|
||||
type: object
|
||||
required:
|
||||
- snapshot
|
||||
- topology
|
||||
- volume
|
||||
type: object
|
||||
pluginInfo:
|
||||
description: PluginInfo describes plugin info
|
||||
properties:
|
||||
name:
|
||||
type: string
|
||||
version:
|
||||
type: string
|
||||
required:
|
||||
- name
|
||||
- version
|
||||
type: object
|
||||
required:
|
||||
- features
|
||||
- pluginInfo
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
subresources: {}
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -1,120 +0,0 @@
|
||||
|
||||
---
|
||||
apiVersion: apiextensions.k8s.io/v1
|
||||
kind: CustomResourceDefinition
|
||||
metadata:
|
||||
annotations:
|
||||
controller-gen.kubebuilder.io/version: (devel)
|
||||
creationTimestamp: null
|
||||
name: storageclasscapabilities.storage.kubesphere.io
|
||||
spec:
|
||||
group: storage.kubesphere.io
|
||||
names:
|
||||
kind: StorageClassCapability
|
||||
listKind: StorageClassCapabilityList
|
||||
plural: storageclasscapabilities
|
||||
singular: storageclasscapability
|
||||
scope: Cluster
|
||||
versions:
|
||||
- additionalPrinterColumns:
|
||||
- jsonPath: .spec.provisioner
|
||||
name: Provisioner
|
||||
type: string
|
||||
- jsonPath: .spec.features.volume.create
|
||||
name: Volume
|
||||
type: boolean
|
||||
- jsonPath: .spec.features.volume.expandMode
|
||||
name: Expand
|
||||
type: string
|
||||
- jsonPath: .spec.features.volume.clone
|
||||
name: Clone
|
||||
type: boolean
|
||||
- jsonPath: .spec.features.snapshot.create
|
||||
name: Snapshot
|
||||
type: boolean
|
||||
- jsonPath: .metadata.creationTimestamp
|
||||
name: Age
|
||||
type: date
|
||||
name: v1alpha1
|
||||
schema:
|
||||
openAPIV3Schema:
|
||||
description: StorageClassCapability is the Schema for the storage class capability
|
||||
API
|
||||
properties:
|
||||
apiVersion:
|
||||
description: 'APIVersion defines the versioned schema of this representation
|
||||
of an object. Servers should convert recognized schemas to the latest
|
||||
internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources'
|
||||
type: string
|
||||
kind:
|
||||
description: 'Kind is a string value representing the REST resource this
|
||||
object represents. Servers may infer this from the endpoint the client
|
||||
submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds'
|
||||
type: string
|
||||
metadata:
|
||||
type: object
|
||||
spec:
|
||||
description: StorageClassCapabilitySpec defines the desired state of StorageClassCapability
|
||||
properties:
|
||||
features:
|
||||
description: CapabilityFeatures describe storage features
|
||||
properties:
|
||||
snapshot:
|
||||
description: SnapshotFeature describe snapshot features
|
||||
properties:
|
||||
create:
|
||||
type: boolean
|
||||
list:
|
||||
type: boolean
|
||||
required:
|
||||
- create
|
||||
- list
|
||||
type: object
|
||||
topology:
|
||||
type: boolean
|
||||
volume:
|
||||
description: VolumeFeature describe volume features
|
||||
properties:
|
||||
attach:
|
||||
type: boolean
|
||||
clone:
|
||||
type: boolean
|
||||
create:
|
||||
type: boolean
|
||||
expandMode:
|
||||
type: string
|
||||
list:
|
||||
type: boolean
|
||||
stats:
|
||||
type: boolean
|
||||
required:
|
||||
- attach
|
||||
- clone
|
||||
- create
|
||||
- expandMode
|
||||
- list
|
||||
- stats
|
||||
type: object
|
||||
required:
|
||||
- snapshot
|
||||
- topology
|
||||
- volume
|
||||
type: object
|
||||
provisioner:
|
||||
type: string
|
||||
required:
|
||||
- features
|
||||
- provisioner
|
||||
type: object
|
||||
required:
|
||||
- spec
|
||||
type: object
|
||||
served: true
|
||||
storage: true
|
||||
subresources: {}
|
||||
status:
|
||||
acceptedNames:
|
||||
kind: ""
|
||||
plural: ""
|
||||
conditions: []
|
||||
storedVersions: []
|
||||
@@ -25,8 +25,6 @@ import (
|
||||
"time"
|
||||
|
||||
"k8s.io/apimachinery/pkg/labels"
|
||||
storageinformersv1beta1 "k8s.io/client-go/informers/storage/v1beta1"
|
||||
storagelistersv1beta1 "k8s.io/client-go/listers/storage/v1beta1"
|
||||
|
||||
storagev1 "k8s.io/api/storage/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
@@ -53,7 +51,7 @@ type StorageCapabilityController struct {
|
||||
storageClassLister storagelistersv1.StorageClassLister
|
||||
storageClassSynced cache.InformerSynced
|
||||
|
||||
csiDriverLister storagelistersv1beta1.CSIDriverLister
|
||||
csiDriverLister storagelistersv1.CSIDriverLister
|
||||
csiDriverSynced cache.InformerSynced
|
||||
|
||||
storageClassWorkQueue workqueue.RateLimitingInterface
|
||||
@@ -64,7 +62,7 @@ type StorageCapabilityController struct {
|
||||
func NewController(
|
||||
storageClassClient storageclient.StorageClassInterface,
|
||||
storageClassInformer storageinformersv1.StorageClassInformer,
|
||||
csiDriverInformer storageinformersv1beta1.CSIDriverInformer,
|
||||
csiDriverInformer storageinformersv1.CSIDriverInformer,
|
||||
) *StorageCapabilityController {
|
||||
|
||||
utilruntime.Must(crdscheme.AddToScheme(scheme.Scheme))
|
||||
|
||||
@@ -19,13 +19,12 @@
|
||||
package capability
|
||||
|
||||
import (
|
||||
"github.com/google/go-cmp/cmp"
|
||||
"k8s.io/api/storage/v1beta1"
|
||||
|
||||
"reflect"
|
||||
"testing"
|
||||
"time"
|
||||
|
||||
"github.com/google/go-cmp/cmp"
|
||||
|
||||
storagev1 "k8s.io/api/storage/v1"
|
||||
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/runtime"
|
||||
@@ -53,7 +52,7 @@ type fixture struct {
|
||||
storageObjects []runtime.Object // include StorageClass
|
||||
// Objects to put in the store.
|
||||
storageClassLister []*storagev1.StorageClass
|
||||
csiDriverLister []*v1beta1.CSIDriver
|
||||
csiDriverLister []*storagev1.CSIDriver
|
||||
// Actions expected to happen on the client.
|
||||
actions []core.Action
|
||||
}
|
||||
@@ -74,14 +73,14 @@ func (f *fixture) newController() (*StorageCapabilityController,
|
||||
c := NewController(
|
||||
f.k8sClient.StorageV1().StorageClasses(),
|
||||
k8sInformers.Storage().V1().StorageClasses(),
|
||||
k8sInformers.Storage().V1beta1().CSIDrivers(),
|
||||
k8sInformers.Storage().V1().CSIDrivers(),
|
||||
)
|
||||
|
||||
for _, storageClass := range f.storageClassLister {
|
||||
_ = k8sInformers.Storage().V1().StorageClasses().Informer().GetIndexer().Add(storageClass)
|
||||
}
|
||||
for _, csiDriver := range f.csiDriverLister {
|
||||
_ = k8sInformers.Storage().V1beta1().CSIDrivers().Informer().GetIndexer().Add(csiDriver)
|
||||
_ = k8sInformers.Storage().V1().CSIDrivers().Informer().GetIndexer().Add(csiDriver)
|
||||
}
|
||||
|
||||
return c, k8sInformers
|
||||
@@ -197,8 +196,8 @@ func newStorageClass(name string, provisioner string) *storagev1.StorageClass {
|
||||
}
|
||||
}
|
||||
|
||||
func newCSIDriver(name string) *v1beta1.CSIDriver {
|
||||
return &v1beta1.CSIDriver{
|
||||
func newCSIDriver(name string) *storagev1.CSIDriver {
|
||||
return &storagev1.CSIDriver{
|
||||
ObjectMeta: v1.ObjectMeta{
|
||||
Name: name,
|
||||
},
|
||||
|
||||
Reference in New Issue
Block a user