Merge pull request #2149 from min-zh/snapshot

storage capability
This commit is contained in:
KubeSphere CI Bot
2020-06-04 12:47:37 +08:00
committed by GitHub
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"
@@ -32,6 +33,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"
@@ -111,6 +113,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(),
@@ -167,6 +180,10 @@ func AddControllers(
"globalrolebinding-controller": globalRoleBindingController,
}
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)