53 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Go
		
	
	
	
			
		
		
	
	
			53 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			Go
		
	
	
	
package jenkins
 | 
						|
 | 
						|
import (
 | 
						|
	"github.com/jenkinsci/kubernetes-operator/pkg/apis/jenkins/v1alpha2"
 | 
						|
	jenkinsclient "github.com/jenkinsci/kubernetes-operator/pkg/client"
 | 
						|
	"github.com/jenkinsci/kubernetes-operator/pkg/configuration"
 | 
						|
	"github.com/jenkinsci/kubernetes-operator/pkg/notifications/event"
 | 
						|
	"k8s.io/apimachinery/pkg/runtime"
 | 
						|
	"k8s.io/client-go/kubernetes"
 | 
						|
	"k8s.io/client-go/rest"
 | 
						|
	"sigs.k8s.io/controller-runtime/pkg/client"
 | 
						|
	"sigs.k8s.io/controller-runtime/pkg/manager"
 | 
						|
	"sigs.k8s.io/controller-runtime/pkg/reconcile"
 | 
						|
)
 | 
						|
 | 
						|
// ReconcileJenkins reconciles a Jenkins object.
 | 
						|
type ReconcileJenkins struct {
 | 
						|
	client                       client.Client
 | 
						|
	scheme                       *runtime.Scheme
 | 
						|
	jenkinsAPIConnectionSettings jenkinsclient.JenkinsAPIConnectionSettings
 | 
						|
	clientSet                    kubernetes.Clientset
 | 
						|
	config                       rest.Config
 | 
						|
	notificationEvents           *chan event.Event
 | 
						|
	KubernetesClusterDomain      string
 | 
						|
}
 | 
						|
 | 
						|
func (r *ReconcileJenkins) newReconcilierConfiguration(jenkins *v1alpha2.Jenkins) configuration.Configuration {
 | 
						|
	config := configuration.Configuration{
 | 
						|
		Client:                       r.client,
 | 
						|
		ClientSet:                    r.clientSet,
 | 
						|
		Notifications:                r.notificationEvents,
 | 
						|
		Jenkins:                      jenkins,
 | 
						|
		Scheme:                       r.scheme,
 | 
						|
		Config:                       &r.config,
 | 
						|
		JenkinsAPIConnectionSettings: r.jenkinsAPIConnectionSettings,
 | 
						|
		KubernetesClusterDomain:      r.KubernetesClusterDomain,
 | 
						|
	}
 | 
						|
	return config
 | 
						|
}
 | 
						|
 | 
						|
// newReconciler returns a newReconcilierConfiguration reconcile.Reconciler.
 | 
						|
func newReconciler(mgr manager.Manager, jenkinsAPIConnectionSettings jenkinsclient.JenkinsAPIConnectionSettings, kubernetesClusterDomain string, clientSet kubernetes.Clientset, config rest.Config, notificationEvents *chan event.Event) reconcile.Reconciler {
 | 
						|
	return &ReconcileJenkins{
 | 
						|
		client:                       mgr.GetClient(),
 | 
						|
		scheme:                       mgr.GetScheme(),
 | 
						|
		jenkinsAPIConnectionSettings: jenkinsAPIConnectionSettings,
 | 
						|
		clientSet:                    clientSet,
 | 
						|
		config:                       config,
 | 
						|
		notificationEvents:           notificationEvents,
 | 
						|
		KubernetesClusterDomain:      kubernetesClusterDomain,
 | 
						|
	}
 | 
						|
}
 |