diff --git a/pkg/controller/jenkins/configuration/base/reconcile.go b/pkg/controller/jenkins/configuration/base/reconcile.go index b33f8f10..2d8185d0 100644 --- a/pkg/controller/jenkins/configuration/base/reconcile.go +++ b/pkg/controller/jenkins/configuration/base/reconcile.go @@ -183,11 +183,11 @@ func (r *ReconcileJenkinsBaseConfiguration) ensureResourcesRequiredForJenkinsPod } r.logger.V(log.VDebug).Info("Extra role bindings are present") - if err := r.createService(metaObject, resources.GetJenkinsHTTPServiceName(r.Configuration.Jenkins), r.Configuration.Jenkins.Spec.Service); err != nil { + if err := r.createService(metaObject, resources.GetJenkinsServiceName(r.Configuration.Jenkins, "http"), r.Configuration.Jenkins.Spec.Service); err != nil { return err } r.logger.V(log.VDebug).Info("Jenkins HTTP Service is present") - if err := r.createService(metaObject, resources.GetJenkinsSlavesServiceName(r.Configuration.Jenkins), r.Configuration.Jenkins.Spec.SlaveService); err != nil { + if err := r.createService(metaObject, resources.GetJenkinsServiceName(r.Configuration.Jenkins, "slave"), r.Configuration.Jenkins.Spec.SlaveService); err != nil { return err } r.logger.V(log.VDebug).Info("Jenkins slave Service is present") @@ -951,7 +951,7 @@ func (r *ReconcileJenkinsBaseConfiguration) getJenkinsAPIUrl() (string, error) { err := r.Client.Get(context.TODO(), types.NamespacedName{ Namespace: r.Configuration.Jenkins.ObjectMeta.Namespace, - Name: resources.GetJenkinsHTTPServiceName(r.Configuration.Jenkins), + Name: resources.GetJenkinsServiceName(r.Configuration.Jenkins, "http"), }, &service) if err != nil { diff --git a/pkg/controller/jenkins/configuration/base/resources/base_configuration_configmap.go b/pkg/controller/jenkins/configuration/base/resources/base_configuration_configmap.go index 7c8c149e..5f5d76af 100644 --- a/pkg/controller/jenkins/configuration/base/resources/base_configuration_configmap.go +++ b/pkg/controller/jenkins/configuration/base/resources/base_configuration_configmap.go @@ -188,8 +188,8 @@ func NewBaseConfigurationConfigMap(meta metav1.ObjectMeta, jenkins *v1alpha2.Jen disableInsecureFeaturesGroovyScriptName: disableInsecureFeatures, configureKubernetesPluginGroovyScriptName: fmt.Sprintf(configureKubernetesPluginFmt, jenkins.ObjectMeta.Namespace, - fmt.Sprintf("http://%s:%d", GetJenkinsHTTPServiceFQDN(jenkins), jenkins.Spec.Service.Port), - fmt.Sprintf("%s:%d", GetJenkinsSlavesServiceFQDN(jenkins), jenkins.Spec.SlaveService.Port), + fmt.Sprintf("http://%s:%d", GetJenkinsServiceFQDN(jenkins, "http"), jenkins.Spec.Service.Port), + fmt.Sprintf("%s:%d", GetJenkinsServiceFQDN(jenkins, "slave"), jenkins.Spec.SlaveService.Port), ), configureViewsGroovyScriptName: configureViews, disableJobDslScriptApprovalGroovyScriptName: disableJobDSLScriptApproval, diff --git a/pkg/controller/jenkins/configuration/base/resources/service.go b/pkg/controller/jenkins/configuration/base/resources/service.go index a4e7b2e3..0db3e982 100644 --- a/pkg/controller/jenkins/configuration/base/resources/service.go +++ b/pkg/controller/jenkins/configuration/base/resources/service.go @@ -32,28 +32,16 @@ func UpdateService(actual corev1.Service, config v1alpha2.Service) corev1.Servic return actual } -// GetJenkinsHTTPServiceName returns Kubernetes service name used for expose Jenkins HTTP endpoint -func GetJenkinsHTTPServiceName(jenkins *v1alpha2.Jenkins) string { - return fmt.Sprintf("%s-http-%s", constants.OperatorName, jenkins.ObjectMeta.Name) +// GetJenkinsServiceName returns Kubernetes service name used for expose Jenkins HTTP and Slaves endpoint +func GetJenkinsServiceName(jenkins *v1alpha2.Jenkins, serviceType string) string { + return fmt.Sprintf("%s-%s-%s", constants.OperatorName, serviceType, jenkins.ObjectMeta.Name) } -// GetJenkinsSlavesServiceName returns Kubernetes service name used for expose Jenkins slave endpoint -func GetJenkinsSlavesServiceName(jenkins *v1alpha2.Jenkins) string { - return fmt.Sprintf("%s-slave-%s", constants.OperatorName, jenkins.ObjectMeta.Name) -} - -// GetJenkinsHTTPServiceFQDN returns Kubernetes service FQDN used for expose Jenkins HTTP endpoint -func GetJenkinsHTTPServiceFQDN(jenkins *v1alpha2.Jenkins) string { +// GetJenkinsServiceFQDN returns Kubernetes service FQDN used for expose Jenkins HTTP and Slaves endpoint +func GetJenkinsServiceFQDN(jenkins *v1alpha2.Jenkins, serviceType string) string { clusterDomain := getClusterDomain() - return fmt.Sprintf("%s-http-%s.%s", constants.OperatorName, jenkins.ObjectMeta.Name, clusterDomain) -} - -// GetJenkinsSlavesServiceFQDN returns Kubernetes service FQDN used for expose Jenkins slave endpoint -func GetJenkinsSlavesServiceFQDN(jenkins *v1alpha2.Jenkins) string { - clusterDomain := getClusterDomain() - - return fmt.Sprintf("%s-slave-%s.%s", constants.OperatorName, jenkins.ObjectMeta.Name, clusterDomain) + return fmt.Sprintf("%s-%s-%s.%s", constants.OperatorName, serviceType, jenkins.ObjectMeta.Name, clusterDomain) } // GetClusterDomain returns Kubernetes cluster domain, default to "cluster.local" diff --git a/pkg/controller/jenkins/configuration/user/seedjobs/seedjobs.go b/pkg/controller/jenkins/configuration/user/seedjobs/seedjobs.go index f64ad2dc..f059d087 100644 --- a/pkg/controller/jenkins/configuration/user/seedjobs/seedjobs.go +++ b/pkg/controller/jenkins/configuration/user/seedjobs/seedjobs.go @@ -403,7 +403,7 @@ func agentDeployment(jenkins *v1alpha2.Jenkins, namespace string, agentName stri { Name: "JENKINS_TUNNEL", Value: fmt.Sprintf("%s:%d", - resources.GetJenkinsSlavesServiceFQDN(jenkins), + resources.GetJenkinsServiceFQDN(jenkins, "slave"), jenkins.Spec.SlaveService.Port), }, { @@ -417,7 +417,7 @@ func agentDeployment(jenkins *v1alpha2.Jenkins, namespace string, agentName stri { Name: "JENKINS_URL", Value: fmt.Sprintf("http://%s:%d", - resources.GetJenkinsHTTPServiceFQDN(jenkins), + resources.GetJenkinsServiceFQDN(jenkins, "http"), jenkins.Spec.Service.Port, ), }, diff --git a/test/e2e/jenkins.go b/test/e2e/jenkins.go index d9f83a5e..e14c6fe6 100644 --- a/test/e2e/jenkins.go +++ b/test/e2e/jenkins.go @@ -57,7 +57,7 @@ func createJenkinsAPIClient(jenkins *v1alpha2.Jenkins, hostname string, port int err := framework.Global.Client.Get(context.TODO(), types.NamespacedName{ Namespace: jenkins.Namespace, - Name: resources.GetJenkinsHTTPServiceName(jenkins), + Name: resources.GetJenkinsServiceName(jenkins, "http"), }, &service) if err != nil {