This commit is contained in:
Akram Ben Aissi
2020-05-05 15:13:36 +02:00
parent b6144b5559
commit ebfb38a9c4
4 changed files with 21 additions and 8 deletions
@@ -182,15 +182,19 @@ func (r *ReconcileJenkinsBaseConfiguration) ensureResourcesRequiredForJenkinsPod
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 {
return err
}
if resources.IsRouteAPIAvailable(r.ClientSet) {
r.logger.V(log.VDebug).Info("Jenkins slave Service is present")
if resources.IsRouteAPIAvailable(&r.ClientSet) {
r.logger.V(log.VDebug).Info("Route API is available. Now creating route.")
if err := r.createRoute(metaObject, httpServiceName, r.Configuration.Jenkins); err != nil {
return err
}
r.logger.V(log.VDebug).Info("Jenkins Route is present")
}
r.logger.V(log.VDebug).Info("Jenkins slave Service is present")
return nil
}
@@ -2,7 +2,6 @@ package resources
import (
"github.com/jenkinsci/kubernetes-operator/pkg/apis/jenkins/v1alpha2"
routev1 "github.com/openshift/api/route/v1"
"k8s.io/apimachinery/pkg/runtime/schema"
"k8s.io/apimachinery/pkg/util/intstr"
@@ -29,8 +28,8 @@ func UpdateRoute(actual routev1.Route,jenkins *v1alpha2.Jenkins) routev1.Route {
return actual
}
//IsRouteAPIDiscoverable tells if the Route API is installed and discoverable
func IsRouteAPIAvailable(clientSet kubernetes.Clientset) (bool) {
//IsRouteAPIAvailable tells if the Route API is installed and discoverable
func IsRouteAPIAvailable(clientSet *kubernetes.Clientset) (bool) {
if (routeAPIChecked){
return isRouteAPIAvailable
}
@@ -40,8 +39,12 @@ func IsRouteAPIAvailable(clientSet kubernetes.Clientset) (bool) {
}
if err := discovery.ServerSupportsVersion(clientSet, gv); err != nil {
// error, API not available
return false
routeAPIChecked = true
isRouteAPIAvailable = false
} else {
// API Exists
routeAPIChecked = true
isRouteAPIAvailable = true
}
// API Exists
return true
return isRouteAPIAvailable
}