From 6cc917e448baf6c4a09c2aa8ad6eb7e315c6d690 Mon Sep 17 00:00:00 2001 From: fischor <21199007+fischor@users.noreply.github.com> Date: Wed, 25 Jan 2023 18:57:52 +0100 Subject: [PATCH] Prohibit suggestion port to be set in suggestion config --- .../suggestion/composer/composer.go | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/pkg/controller.v1beta1/suggestion/composer/composer.go b/pkg/controller.v1beta1/suggestion/composer/composer.go index 2e1fd841cac..78b1831a76e 100644 --- a/pkg/controller.v1beta1/suggestion/composer/composer.go +++ b/pkg/controller.v1beta1/suggestion/composer/composer.go @@ -76,6 +76,11 @@ func (g *General) DesiredDeployment(s *suggestionsv1beta1.Suggestion) (*appsv1.D if err != nil { return nil, err } + if containsContainerPortWithName(suggestionConfigData.Ports, consts.DefaultSuggestionPortName) || + containsContainerPort(suggestionConfigData.Ports, consts.DefaultSuggestionPort) { + return nil, fmt.Errorf("invalid suggestion config: a port with name %q or number %d must not be specified", + consts.DefaultSuggestionPortName, consts.DefaultSuggestionPort) + } // If early stopping is used, get the config data. earlyStoppingConfigData := katibconfig.EarlyStoppingConfig{} @@ -195,14 +200,11 @@ func (g *General) desiredContainers(s *suggestionsv1beta1.Suggestion, suggestionContainer.Name = consts.ContainerSuggestion } - if !containsContainerPortWithName(suggestionContainer.Ports, consts.DefaultSuggestionPortName) && - !containsContainerPort(suggestionConfigData.Ports, consts.DefaultSuggestionPort) { - suggestionPort := corev1.ContainerPort{ - Name: consts.DefaultSuggestionPortName, - ContainerPort: consts.DefaultSuggestionPort, - } - suggestionContainer.Ports = append(suggestionContainer.Ports, suggestionPort) + suggestionPort := corev1.ContainerPort{ + Name: consts.DefaultSuggestionPortName, + ContainerPort: consts.DefaultSuggestionPort, } + suggestionContainer.Ports = append(suggestionContainer.Ports, suggestionPort) if viper.GetBool(consts.ConfigEnableGRPCProbeInSuggestion) && suggestionContainer.ReadinessProbe == nil { suggestionContainer.ReadinessProbe = &corev1.Probe{