in pkg/leadermigration/config/config.go [75:91]
func ValidateLeaderMigrationConfiguration(config *internal.LeaderMigrationConfiguration) (allErrs field.ErrorList) {
if config.LeaderName == "" {
allErrs = append(allErrs, field.Required(field.NewPath("leaderName"),
"leaderName must be set for LeaderMigrationConfiguration"))
}
if config.ResourceLock != ResourceLockLeases && config.ResourceLock != ResourceLockEndpoints {
allErrs = append(allErrs, field.Invalid(field.NewPath("resourceLock"), config.ResourceLock,
"resource Lock must be one of 'leases' or 'endpoints'"))
}
// validate controllerLeaders
fldPath := field.NewPath("controllerLeaders")
for i, controllerLeader := range config.ControllerLeaders {
path := fldPath.Index(i)
allErrs = append(allErrs, validateControllerLeaderConfiguration(path, &controllerLeader)...)
}
return
}