func (c *RouteController) Run(stopCh <-chan struct{}, wg *sync.WaitGroup) {
	defer wg.Done()
	wg.Add(1)
	go c.routeInformer.Run(stopCh)
	<-stopCh
}
Run starts the process for listening for route changes and acting upon those changes.
package controller
import (
	"errors"
	"fmt"
	"log"
	"os"
	"strconv"
	"strings"
	"sync"
	"time"
	"github.com/ElisaOyj/openshift-lb-controller/pkg/common"
	"github.com/getsentry/raven-go"
	v1r "github.com/openshift/api/route/v1"
	routev1 "github.com/openshift/client-go/route/clientset/versioned/typed/route/v1"
	"k8s.io/api/core/v1"
	metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
	"k8s.io/apimachinery/pkg/runtime"
	"k8s.io/apimachinery/pkg/watch"
	"k8s.io/client-go/kubernetes"
	restclient "k8s.io/client-go/rest"
	"k8s.io/client-go/tools/cache"
)
const (
	healthCheckPathAnnotation     = "route.elisa.fi/path"
	healthCheckMethodAnnotation   = "route.elisa.fi/method"
	poolRouteMethodAnnotation     = "route.elisa.fi/lbmethod"
	poolPGARouteMethodAnnotation  = "route.elisa.fi/poolpga"
	overridePriorityGrpAnnotation = "route.elisa.fi/prio"
	roleAnnotation                = "route.elisa.fi/role"
	CustomHostAnnotation = "route.elisa.fi/lbenabled"
	maintenanceAnnotation = "route.elisa.fi/maintenance"
)
type RouteController struct {
	routeInformer cache.SharedIndexInformer
	kclient       *kubernetes.Clientset
	routeclient   *routev1.RouteV1Client
	hosttowatch   string
	clusteralias  string
	provider      ProviderInterface
	partition     string
}