@@ -37,21 +37,35 @@ const (
3737 MigrationAllowPostCopy bool = false
3838)
3939
40- func NewMigrationConfiguration (moduleSettings config.LiveMigrationSettings , allowAutoConverge bool ) * virtv1.MigrationConfiguration {
41- parallelMigrationsPerClusterDefault := ParallelMigrationsPerClusterDefault
40+ func NewMigrationConfiguration (moduleSettings config.LiveMigrationSettings , allowAutoConverge bool , kvconfig virtv1.KubeVirt ) * virtv1.MigrationConfiguration {
41+ // TODO rework below section after proper implementation of liveMigration settings in ModuleConfig.
42+ parallelMigrationsPerCluster := ParallelMigrationsPerClusterDefault
43+ if kvconfig .Spec .Configuration .MigrationConfiguration .ParallelMigrationsPerCluster != nil {
44+ parallelMigrationsPerCluster = * kvconfig .Spec .Configuration .MigrationConfiguration .ParallelMigrationsPerCluster
45+ }
46+ // Reuse default value of MaxMigrationsPerNode as parallelOutboundMigrationsPerNode.
4247 parallelOutboundMigrationsPerNode := uint32 (moduleSettings .MaxMigrationsPerNode )
48+ if kvconfig .Spec .Configuration .MigrationConfiguration .ParallelOutboundMigrationsPerNode != nil {
49+ parallelOutboundMigrationsPerNode = * kvconfig .Spec .Configuration .MigrationConfiguration .ParallelOutboundMigrationsPerNode
50+ }
51+ // Reuse default value of BandwidthPerNode as bandwidthPerMigration.
52+ bandwidthPerMigration := moduleSettings .BandwidthPerNode .DeepCopy ()
53+ if kvconfig .Spec .Configuration .MigrationConfiguration .BandwidthPerMigration != nil {
54+ bandwidthPerMigration = kvconfig .Spec .Configuration .MigrationConfiguration .BandwidthPerMigration .DeepCopy ()
55+ }
56+
57+ // Just use defaults from KubeVirt.
4358 nodeDrainTaintDefaultKey := NodeDrainTaintDefaultKey
44- bandwidthPerMigrationDefault := moduleSettings .BandwidthPerNode .DeepCopy ()
4559 progressTimeout := MigrationProgressTimeout
4660 completionTimeoutPerGiB := MigrationCompletionTimeoutPerGiB
4761 defaultUnsafeMigrationOverride := DefaultUnsafeMigrationOverride
4862 allowPostCopy := MigrationAllowPostCopy
4963
5064 return & virtv1.MigrationConfiguration {
51- ParallelMigrationsPerCluster : & parallelMigrationsPerClusterDefault ,
65+ ParallelMigrationsPerCluster : & parallelMigrationsPerCluster ,
5266 ParallelOutboundMigrationsPerNode : & parallelOutboundMigrationsPerNode ,
5367 NodeDrainTaintKey : & nodeDrainTaintDefaultKey ,
54- BandwidthPerMigration : & bandwidthPerMigrationDefault ,
68+ BandwidthPerMigration : & bandwidthPerMigration ,
5569 ProgressTimeout : & progressTimeout ,
5670 CompletionTimeoutPerGiB : & completionTimeoutPerGiB ,
5771 UnsafeMigrationOverride : & defaultUnsafeMigrationOverride ,
0 commit comments