storage capability

This commit is contained in:
zhangmin
2020-06-04 10:36:13 +08:00
parent 2f650dbac5
commit c6158a7cd3
84 changed files with 19178 additions and 110 deletions

View File

@@ -17,6 +17,7 @@ limitations under the License.
package app
import (
"fmt"
"k8s.io/klog"
"kubesphere.io/kubesphere/pkg/controller/application"
"kubesphere.io/kubesphere/pkg/controller/certificatesigningrequest"
@@ -31,6 +32,7 @@ import (
"kubesphere.io/kubesphere/pkg/controller/pipeline"
"kubesphere.io/kubesphere/pkg/controller/s2ibinary"
"kubesphere.io/kubesphere/pkg/controller/s2irun"
"kubesphere.io/kubesphere/pkg/controller/storage/capability"
"kubesphere.io/kubesphere/pkg/controller/storage/expansion"
"kubesphere.io/kubesphere/pkg/controller/user"
"kubesphere.io/kubesphere/pkg/controller/virtualservice"
@@ -109,6 +111,17 @@ func AddControllers(
informerFactory.KubernetesSharedInformerFactory().Core().V1().Namespaces(),
informerFactory.KubernetesSharedInformerFactory().Core().V1().Secrets())
storageCapabilityController := capability.NewController(
client.Kubernetes(),
client.KubeSphere(),
kubernetesInformer.Storage().V1().StorageClasses(),
informerFactory.SnapshotSharedInformerFactory().Snapshot().V1beta1().VolumeSnapshotClasses(),
kubesphereInformer.Storage().V1alpha1().StorageClassCapabilities(),
func(storageClassProvisioner string) string {
return fmt.Sprintf(capability.CSIAddressFormat, storageClassProvisioner)
},
)
volumeExpansionController := expansion.NewVolumeExpansionController(
client.Kubernetes(),
kubernetesInformer.Core().V1().PersistentVolumeClaims(),
@@ -160,6 +173,10 @@ func AddControllers(
"clusterrolebinding-controller": clusterRoleBindingController,
}
if storageCapabilityController.IsValidKubernetesVersion() {
controllers["storagecapability-controller"] = storageCapabilityController
}
for name, ctrl := range controllers {
if err := mgr.Add(ctrl); err != nil {
klog.Error(err, "add controller to manager failed", "name", name)