@@ -28,13 +28,15 @@ import (
28
28
"sigs.k8s.io/controller-runtime/pkg/metrics"
29
29
30
30
"github.com/deckhouse/deckhouse/pkg/log"
31
+
31
32
"github.com/deckhouse/virtualization-controller/pkg/config"
32
33
"github.com/deckhouse/virtualization-controller/pkg/controller/service"
33
34
"github.com/deckhouse/virtualization-controller/pkg/controller/vd/internal"
34
35
intsvc "github.com/deckhouse/virtualization-controller/pkg/controller/vd/internal/service"
35
36
"github.com/deckhouse/virtualization-controller/pkg/controller/vd/internal/source"
36
37
"github.com/deckhouse/virtualization-controller/pkg/dvcr"
37
38
"github.com/deckhouse/virtualization-controller/pkg/eventrecord"
39
+ "github.com/deckhouse/virtualization-controller/pkg/featuregates"
38
40
"github.com/deckhouse/virtualization-controller/pkg/logger"
39
41
vdcolelctor "github.com/deckhouse/virtualization-controller/pkg/monitoring/metrics/vd"
40
42
virtv2 "github.com/deckhouse/virtualization/api/core/v1alpha2"
@@ -77,8 +79,7 @@ func NewController(
77
79
sources .Set (virtv2 .DataSourceTypeObjectRef , source .NewObjectRefDataSource (recorder , disk , mgr .GetClient ()))
78
80
sources .Set (virtv2 .DataSourceTypeUpload , source .NewUploadDataSource (recorder , stat , uploader , disk , dvcr , mgr .GetClient ()))
79
81
80
- reconciler := NewReconciler (
81
- mgr .GetClient (),
82
+ handlers := []Handler {
82
83
internal .NewStorageClassReadyHandler (scService ),
83
84
internal .NewDatasourceReadyHandler (recorder , blank , sources ),
84
85
internal .NewLifeCycleHandler (recorder , blank , sources , mgr .GetClient ()),
@@ -87,8 +88,15 @@ func NewController(
87
88
internal .NewDeletionHandler (sources , mgr .GetClient ()),
88
89
internal .NewStatsHandler (stat , importer , uploader ),
89
90
internal .NewInUseHandler (mgr .GetClient ()),
90
- internal .NewMigrationHandler (mgr .GetClient (), scService , disk ),
91
- internal .NewProtectionHandler (),
91
+ }
92
+ if featuregates .Default ().Enabled (featuregates .VolumeMigration ) {
93
+ handlers = append (handlers , internal .NewMigrationHandler (mgr .GetClient (), scService , disk ))
94
+ }
95
+ handlers = append (handlers , internal .NewProtectionHandler ())
96
+
97
+ reconciler := NewReconciler (
98
+ mgr .GetClient (),
99
+ handlers ... ,
92
100
)
93
101
94
102
vdController , err := controller .New (ControllerName , mgr , controller.Options {
0 commit comments