WIP: Moving client from kubernetes to client-go

Signed-off-by: André Martins <aanm90@gmail.com>
This commit is contained in:
André Martins 2017-02-22 17:35:57 +00:00
parent 5ab0f284b0
commit 3b554a9c96
51 changed files with 157 additions and 155 deletions

View file

@ -16,7 +16,7 @@ limitations under the License.
package cache
import "k8s.io/kubernetes/pkg/client/cache"
import "k8s.io/client-go/tools/cache"
// StoreToIngressLister makes a Store that lists Ingress.
type StoreToIngressLister struct {

View file

@ -19,10 +19,10 @@ package cache
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/client/cache"
"k8s.io/kubernetes/pkg/util/sets"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/tools/cache"
"k8s.io/client-go/pkg/util/sets"
)
func TestStoreToIngressLister(t *testing.T) {

View file

@ -24,8 +24,8 @@ import (
"regexp"
"github.com/pkg/errors"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
ing_errors "k8s.io/ingress/core/pkg/ingress/errors"
@ -121,7 +121,7 @@ func (a auth) Parse(ing *extensions.Ingress) (interface{}, error) {
// dumpSecret dumps the content of a secret into a file
// in the expected format for the specified authorization
func dumpSecret(filename string, secret *api.Secret) error {
func dumpSecret(filename string, secret *v1.Secret) error {
val, ok := secret.Data["auth"]
if !ok {
return ing_errors.LocationDenied{

View file

@ -24,9 +24,9 @@ import (
"time"
"github.com/pkg/errors"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -20,7 +20,7 @@ import (
"net/url"
"strings"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
ing_errors "k8s.io/ingress/core/pkg/ingress/errors"

View file

@ -20,9 +20,9 @@ import (
"fmt"
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -18,7 +18,7 @@ package authtls
import (
"github.com/pkg/errors"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
ing_errors "k8s.io/ingress/core/pkg/ingress/errors"

View file

@ -19,9 +19,9 @@ package authtls
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -17,7 +17,7 @@ limitations under the License.
package cors
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
)

View file

@ -19,8 +19,8 @@ package cors
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
)
const (

View file

@ -17,7 +17,7 @@ limitations under the License.
package healthcheck
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
"k8s.io/ingress/core/pkg/ingress/resolver"

View file

@ -19,9 +19,9 @@ package healthcheck
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
"k8s.io/ingress/core/pkg/ingress/defaults"
)

View file

@ -21,7 +21,7 @@ import (
"strings"
"github.com/pkg/errors"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/net/sets"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"

View file

@ -20,9 +20,9 @@ import (
"reflect"
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
"k8s.io/ingress/core/pkg/ingress/defaults"
)

View file

@ -19,7 +19,7 @@ package parser
import (
"strconv"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/errors"
)

View file

@ -19,8 +19,8 @@ package parser
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
)
func buildIngress() *extensions.Ingress {

View file

@ -17,7 +17,7 @@ limitations under the License.
package portinredirect
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
"k8s.io/ingress/core/pkg/ingress/resolver"

View file

@ -19,9 +19,9 @@ package portinredirect
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
"fmt"

View file

@ -17,7 +17,7 @@ limitations under the License.
package proxy
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
"k8s.io/ingress/core/pkg/ingress/resolver"

View file

@ -19,9 +19,9 @@ package proxy
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
"k8s.io/ingress/core/pkg/ingress/defaults"
)

View file

@ -19,7 +19,7 @@ package ratelimit
import (
"fmt"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
)

View file

@ -19,9 +19,9 @@ package ratelimit
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -17,7 +17,7 @@ limitations under the License.
package rewrite
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
"k8s.io/ingress/core/pkg/ingress/resolver"

View file

@ -19,9 +19,9 @@ package rewrite
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
"k8s.io/ingress/core/pkg/ingress/defaults"
)

View file

@ -17,7 +17,7 @@ limitations under the License.
package secureupstream
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
)

View file

@ -19,9 +19,9 @@ package secureupstream
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -21,7 +21,7 @@ import (
"fmt"
"strconv"
"k8s.io/kubernetes/pkg/api"
api "k8s.io/client-go/pkg/api/v1"
"github.com/golang/glog"
)

View file

@ -18,8 +18,8 @@ package service
import (
"encoding/json"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/api/v1/unversioned"
"testing"
)

View file

@ -21,7 +21,7 @@ import (
"github.com/golang/glog"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
)

View file

@ -19,9 +19,9 @@ package sessionaffinity
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -17,7 +17,7 @@ limitations under the License.
package sslpassthrough
import (
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"
ing_errors "k8s.io/ingress/core/pkg/ingress/errors"

View file

@ -19,9 +19,9 @@ package sslpassthrough
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
)
func buildIngress() *extensions.Ingress {

View file

@ -19,7 +19,7 @@ package controller
import (
"github.com/golang/glog"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress/annotations/auth"
"k8s.io/ingress/core/pkg/ingress/annotations/authreq"

View file

@ -19,9 +19,9 @@ package controller
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/pkg/util/intstr"
"k8s.io/ingress/core/pkg/ingress/defaults"
"k8s.io/ingress/core/pkg/ingress/resolver"

View file

@ -23,9 +23,9 @@ import (
"github.com/golang/glog"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/client/cache"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/tools/cache"
"k8s.io/ingress/core/pkg/ingress"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"

View file

@ -28,15 +28,15 @@ import (
"github.com/golang/glog"
"github.com/kylelemons/godebug/pretty"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/client/cache"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
unversionedcore "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/typed/core/internalversion"
"k8s.io/kubernetes/pkg/client/record"
"k8s.io/kubernetes/pkg/fields"
"k8s.io/kubernetes/pkg/util/flowcontrol"
"k8s.io/kubernetes/pkg/util/intstr"
"k8s.io/apimachinery/pkg/fields"
"k8s.io/apimachinery/pkg/util/intstr"
clientset "k8s.io/client-go/kubernetes"
unversionedcore "k8s.io/client-go/kubernetes/typed/core/v1"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/tools/cache"
"k8s.io/client-go/tools/record"
"k8s.io/client-go/pkg/util/flowcontrol"
cache_store "k8s.io/ingress/core/pkg/cache"
"k8s.io/ingress/core/pkg/ingress"
@ -150,7 +150,7 @@ func newIngressController(config *Configuration) *GenericController {
stopLock: &sync.Mutex{},
stopCh: make(chan struct{}),
syncRateLimiter: flowcontrol.NewTokenBucketRateLimiter(0.1, 1),
recorder: eventBroadcaster.NewRecorder(api.EventSource{
recorder: eventBroadcaster.NewRecorder(v1.EventSource{
Component: "ingress-controller",
}),
sslCertTracker: newSSLCertTracker(),
@ -169,7 +169,7 @@ func newIngressController(config *Configuration) *GenericController {
glog.Infof("ignoring add for ingress %v based on annotation %v", addIng.Name, ingressClassKey)
return
}
ic.recorder.Eventf(addIng, api.EventTypeNormal, "CREATE", fmt.Sprintf("Ingress %s/%s", addIng.Namespace, addIng.Name))
ic.recorder.Eventf(addIng, v1.EventTypeNormal, "CREATE", fmt.Sprintf("Ingress %s/%s", addIng.Namespace, addIng.Name))
ic.syncQueue.Enqueue(obj)
},
DeleteFunc: func(obj interface{}) {
@ -178,7 +178,7 @@ func newIngressController(config *Configuration) *GenericController {
glog.Infof("ignoring delete for ingress %v based on annotation %v", delIng.Name, ingressClassKey)
return
}
ic.recorder.Eventf(delIng, api.EventTypeNormal, "DELETE", fmt.Sprintf("Ingress %s/%s", delIng.Namespace, delIng.Name))
ic.recorder.Eventf(delIng, v1.EventTypeNormal, "DELETE", fmt.Sprintf("Ingress %s/%s", delIng.Namespace, delIng.Name))
ic.syncQueue.Enqueue(obj)
},
UpdateFunc: func(old, cur interface{}) {
@ -190,7 +190,7 @@ func newIngressController(config *Configuration) *GenericController {
if !reflect.DeepEqual(old, cur) {
upIng := cur.(*extensions.Ingress)
ic.recorder.Eventf(upIng, api.EventTypeNormal, "UPDATE", fmt.Sprintf("Ingress %s/%s", upIng.Namespace, upIng.Name))
ic.recorder.Eventf(upIng, v1.EventTypeNormal, "UPDATE", fmt.Sprintf("Ingress %s/%s", upIng.Namespace, upIng.Name))
// the referenced secret is different?
if diff := pretty.Compare(curIng.Spec.TLS, oldIng.Spec.TLS); diff != "" {
for _, secretName := range curIng.Spec.TLS {
@ -216,16 +216,16 @@ func newIngressController(config *Configuration) *GenericController {
secrEventHandler := cache.ResourceEventHandlerFuncs{
AddFunc: func(obj interface{}) {
sec := obj.(*api.Secret)
sec := obj.(*v1.Secret)
ic.secretQueue.Enqueue(sec)
},
DeleteFunc: func(obj interface{}) {
sec := obj.(*api.Secret)
sec := obj.(*v1.Secret)
ic.sslCertTracker.Delete(fmt.Sprintf("%v/%v", sec.Namespace, sec.Name))
},
UpdateFunc: func(old, cur interface{}) {
if !reflect.DeepEqual(old, cur) {
sec := cur.(*api.Secret)
sec := cur.(*v1.Secret)
ic.secretQueue.Enqueue(sec)
}
},
@ -247,7 +247,7 @@ func newIngressController(config *Configuration) *GenericController {
mapEventHandler := cache.ResourceEventHandlerFuncs{
AddFunc: func(obj interface{}) {
upCmap := obj.(*api.ConfigMap)
upCmap := obj.(*v1.ConfigMap)
mapKey := fmt.Sprintf("%s/%s", upCmap.Namespace, upCmap.Name)
if mapKey == ic.cfg.ConfigMapName {
glog.V(2).Infof("adding configmap %v to backend", mapKey)
@ -256,7 +256,7 @@ func newIngressController(config *Configuration) *GenericController {
},
UpdateFunc: func(old, cur interface{}) {
if !reflect.DeepEqual(old, cur) {
upCmap := cur.(*api.ConfigMap)
upCmap := cur.(*v1.ConfigMap)
mapKey := fmt.Sprintf("%s/%s", upCmap.Namespace, upCmap.Name)
if mapKey == ic.cfg.ConfigMapName {
glog.V(2).Infof("updating configmap backend (%v)", mapKey)
@ -264,7 +264,7 @@ func newIngressController(config *Configuration) *GenericController {
}
// updates to configuration configmaps can trigger an update
if mapKey == ic.cfg.ConfigMapName || mapKey == ic.cfg.TCPConfigMapName || mapKey == ic.cfg.UDPConfigMapName {
ic.recorder.Eventf(upCmap, api.EventTypeNormal, "UPDATE", fmt.Sprintf("ConfigMap %v", mapKey))
ic.recorder.Eventf(upCmap, v1.EventTypeNormal, "UPDATE", fmt.Sprintf("ConfigMap %v", mapKey))
ic.syncQueue.Enqueue(cur)
}
}
@ -277,26 +277,26 @@ func newIngressController(config *Configuration) *GenericController {
ic.endpLister.Store, ic.endpController = cache.NewInformer(
cache.NewListWatchFromClient(ic.cfg.Client.Core().RESTClient(), "endpoints", ic.cfg.Namespace, fields.Everything()),
&api.Endpoints{}, ic.cfg.ResyncPeriod, eventHandler)
&v1.Endpoints{}, ic.cfg.ResyncPeriod, eventHandler)
ic.secrLister.Store, ic.secrController = cache.NewInformer(
cache.NewListWatchFromClient(ic.cfg.Client.Core().RESTClient(), "secrets", ic.cfg.Namespace, fields.Everything()),
&api.Secret{}, ic.cfg.ResyncPeriod, secrEventHandler)
&v1.Secret{}, ic.cfg.ResyncPeriod, secrEventHandler)
ic.mapLister.Store, ic.mapController = cache.NewInformer(
cache.NewListWatchFromClient(ic.cfg.Client.Core().RESTClient(), "configmaps", ic.cfg.Namespace, fields.Everything()),
&api.ConfigMap{}, ic.cfg.ResyncPeriod, mapEventHandler)
&v1.ConfigMap{}, ic.cfg.ResyncPeriod, mapEventHandler)
ic.svcLister.Indexer, ic.svcController = cache.NewIndexerInformer(
cache.NewListWatchFromClient(ic.cfg.Client.Core().RESTClient(), "services", ic.cfg.Namespace, fields.Everything()),
&api.Service{},
&v1.Service{},
ic.cfg.ResyncPeriod,
cache.ResourceEventHandlerFuncs{},
cache.Indexers{cache.NamespaceIndex: cache.MetaNamespaceIndexFunc})
ic.nodeLister.Store, ic.nodeController = cache.NewInformer(
cache.NewListWatchFromClient(ic.cfg.Client.Core().RESTClient(), "nodes", ic.cfg.Namespace, fields.Everything()),
&api.Node{}, ic.cfg.ResyncPeriod, eventHandler)
&v1.Node{}, ic.cfg.ResyncPeriod, eventHandler)
if config.UpdateStatus {
ic.syncStatus = status.NewStatusSyncer(status.Config{
@ -346,7 +346,7 @@ func (ic GenericController) GetDefaultBackend() defaults.Backend {
}
// GetSecret searches for a secret in the local secrets Store
func (ic GenericController) GetSecret(name string) (*api.Secret, error) {
func (ic GenericController) GetSecret(name string) (*v1.Secret, error) {
s, exists, err := ic.secrLister.Store.GetByKey(name)
if err != nil {
return nil, err
@ -354,10 +354,10 @@ func (ic GenericController) GetSecret(name string) (*api.Secret, error) {
if !exists {
return nil, fmt.Errorf("secret %v was not found", name)
}
return s.(*api.Secret), nil
return s.(*v1.Secret), nil
}
func (ic *GenericController) getConfigMap(ns, name string) (*api.ConfigMap, error) {
func (ic *GenericController) getConfigMap(ns, name string) (*v1.ConfigMap, error) {
s, exists, err := ic.mapLister.Store.GetByKey(fmt.Sprintf("%v/%v", ns, name))
if err != nil {
return nil, err
@ -365,7 +365,7 @@ func (ic *GenericController) getConfigMap(ns, name string) (*api.ConfigMap, erro
if !exists {
return nil, fmt.Errorf("configmap %v was not found", name)
}
return s.(*api.ConfigMap), nil
return s.(*v1.ConfigMap), nil
}
// sync collects all the pieces required to assemble the configuration file and
@ -405,8 +405,8 @@ func (ic *GenericController) sync(key interface{}) error {
data, err := ic.cfg.Backend.OnUpdate(ingress.Configuration{
Backends: upstreams,
Servers: servers,
TCPEndpoints: ic.getStreamServices(ic.cfg.TCPConfigMapName, api.ProtocolTCP),
UDPEndpoints: ic.getStreamServices(ic.cfg.UDPConfigMapName, api.ProtocolUDP),
TCPEndpoints: ic.getStreamServices(ic.cfg.TCPConfigMapName, v1.ProtocolTCP),
UDPEndpoints: ic.getStreamServices(ic.cfg.UDPConfigMapName, v1.ProtocolUDP),
PassthroughBackends: passUpstreams,
})
if err != nil {
@ -426,7 +426,7 @@ func (ic *GenericController) sync(key interface{}) error {
return nil
}
func (ic *GenericController) getStreamServices(configmapName string, proto api.Protocol) []*ingress.Location {
func (ic *GenericController) getStreamServices(configmapName string, proto v1.Protocol) []*ingress.Location {
glog.V(3).Infof("obtaining information about stream services of type %v located in configmap %v", proto, configmapName)
if configmapName == "" {
// no configmap configured
@ -487,7 +487,7 @@ func (ic *GenericController) getStreamServices(configmapName string, proto api.P
continue
}
svc := svcObj.(*api.Service)
svc := svcObj.(*v1.Service)
var endps []ingress.Endpoint
targetPort, err := strconv.Atoi(svcPort)
@ -547,8 +547,8 @@ func (ic *GenericController) getDefaultUpstream() *ingress.Backend {
return upstream
}
svc := svcObj.(*api.Service)
endps := ic.getEndpoints(svc, svc.Spec.Ports[0].TargetPort, api.ProtocolTCP, &healthcheck.Upstream{})
svc := svcObj.(*v1.Service)
endps := ic.getEndpoints(svc, svc.Spec.Ports[0].TargetPort, v1.ProtocolTCP, &healthcheck.Upstream{})
if len(endps) == 0 {
glog.Warningf("service %v does not have any active endpoints", svcKey)
endps = []ingress.Endpoint{newDefaultServer()}
@ -781,7 +781,7 @@ func (ic *GenericController) serviceEndpoints(svcKey, backendPort string,
return upstreams, err
}
svc := svcObj.(*api.Service)
svc := svcObj.(*v1.Service)
glog.V(3).Infof("obtaining port information for service %v", svcKey)
for _, servicePort := range svc.Spec.Ports {
// targetPort could be a string, use the name or the port (int)
@ -789,7 +789,7 @@ func (ic *GenericController) serviceEndpoints(svcKey, backendPort string,
servicePort.TargetPort.String() == backendPort ||
servicePort.Name == backendPort {
endps := ic.getEndpoints(svc, servicePort.TargetPort, api.ProtocolTCP, hz)
endps := ic.getEndpoints(svc, servicePort.TargetPort, v1.ProtocolTCP, hz)
if len(endps) == 0 {
glog.Warningf("service %v does not have any active endpoints", svcKey)
}
@ -939,9 +939,9 @@ func (ic *GenericController) createServers(data []interface{},
// getEndpoints returns a list of <endpoint ip>:<port> for a given service/target port combination.
func (ic *GenericController) getEndpoints(
s *api.Service,
s *v1.Service,
servicePort intstr.IntOrString,
proto api.Protocol,
proto v1.Protocol,
hz *healthcheck.Upstream) []ingress.Endpoint {
glog.V(3).Infof("getting endpoints for service %v/%v and port %v", s.Namespace, s.Name, servicePort.String())
ep, err := ic.endpLister.GetServiceEndpoints(s)

View file

@ -14,8 +14,8 @@ import (
"github.com/prometheus/client_golang/prometheus/promhttp"
"github.com/spf13/pflag"
"k8s.io/kubernetes/pkg/api"
client "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/client-go/pkg/api/v1"
client "k8s.io/client-go/kubernetes"
"k8s.io/kubernetes/pkg/client/unversioned/clientcmd"
clientcmdapi "k8s.io/kubernetes/pkg/client/unversioned/clientcmd/api"
"k8s.io/kubernetes/pkg/healthz"

View file

@ -24,7 +24,7 @@ import (
"github.com/golang/glog"
"k8s.io/kubernetes/pkg/api"
"k8s.io/client-go/pkg/api"
podutil "k8s.io/kubernetes/pkg/api/pod"
"k8s.io/kubernetes/pkg/labels"

View file

@ -22,7 +22,7 @@ import (
"github.com/golang/glog"
"github.com/imdario/mergo"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/ingress/core/pkg/ingress"
"k8s.io/ingress/core/pkg/ingress/annotations/parser"

View file

@ -29,8 +29,8 @@ import (
"k8s.io/ingress/core/pkg/ingress/annotations/ratelimit"
"k8s.io/ingress/core/pkg/ingress/annotations/rewrite"
"k8s.io/ingress/core/pkg/ingress/resolver"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
)
type fakeError struct{}

View file

@ -17,7 +17,7 @@ limitations under the License.
package resolver
import (
"k8s.io/kubernetes/pkg/api"
api "k8s.io/client-go/pkg/api/v1"
"k8s.io/ingress/core/pkg/ingress/defaults"
)

View file

@ -17,8 +17,8 @@ limitations under the License.
package ingress
import (
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned"
"k8s.io/client-go/pkg/api"
"k8s.io/apimachinery/pkg/runtime/schema"
)
// BackendByNameServers sorts upstreams by name
@ -86,4 +86,4 @@ type SSLCert struct {
}
// GetObjectKind implements the ObjectKind interface as a noop
func (s SSLCert) GetObjectKind() unversioned.ObjectKind { return unversioned.EmptyObjectKind }
func (s SSLCert) GetObjectKind() schema.ObjectKind { return schema.EmptyObjectKind }

View file

@ -19,7 +19,7 @@ package ingress
import (
"testing"
"k8s.io/kubernetes/pkg/api"
"k8s.io/client-go/pkg/api/v1"
)
func buildBackendByNameServers() BackendByNameServers {

View file

@ -23,15 +23,16 @@ import (
"github.com/golang/glog"
"k8s.io/apimachinery/pkg/api/errors"
client "k8s.io/client-go/kubernetes"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/tools/record"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/api/errors"
client "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/kubernetes/pkg/client/leaderelection"
"k8s.io/kubernetes/pkg/client/leaderelection/resourcelock"
"k8s.io/kubernetes/pkg/client/record"
)
func getCurrentLeader(electionID, namespace string, c client.Interface) (string, *api.Endpoints, error) {
func getCurrentLeader(electionID, namespace string, c client.Interface) (string, *v1.Endpoints, error) {
endpoints, err := c.Core().Endpoints(namespace).Get(electionID)
if err != nil {
return "", nil, err
@ -59,8 +60,8 @@ func NewElection(electionID,
_, err := c.Core().Endpoints(namespace).Get(electionID)
if err != nil {
if errors.IsNotFound(err) {
_, err = c.Core().Endpoints(namespace).Create(&api.Endpoints{
ObjectMeta: api.ObjectMeta{
_, err = c.Core().Endpoints(namespace).Create(&v1.Endpoints{
ObjectMeta: v1.ObjectMeta{
Name: electionID,
},
})
@ -93,7 +94,7 @@ func NewElection(electionID,
if err != nil {
return nil, err
}
recorder := broadcaster.NewRecorder(api.EventSource{
recorder := broadcaster.NewRecorder(v1.EventSource{
Component: "ingress-leader-elector",
Host: hostname,
})

View file

@ -21,7 +21,7 @@ import (
"testing"
"time"
"k8s.io/kubernetes/pkg/api"
"k8s.io/client-go/pkg/api"
"k8s.io/kubernetes/pkg/api/unversioned"
tc "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake"
"k8s.io/kubernetes/pkg/client/leaderelection/resourcelock"

View file

@ -24,9 +24,9 @@ import (
"github.com/golang/glog"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
clientset "k8s.io/client-go/kubernetes"
"k8s.io/kubernetes/pkg/client/leaderelection"
"k8s.io/kubernetes/pkg/labels"
"k8s.io/kubernetes/pkg/util/wait"
@ -106,7 +106,7 @@ func (s statusSync) Shutdown() {
}
glog.Infof("removing address from ingress status (%v)", addrs)
s.updateStatus([]api.LoadBalancerIngress{})
s.updateStatus([]v1.LoadBalancerIngress{})
}
func (s *statusSync) run() {
@ -204,7 +204,7 @@ func (s *statusSync) runningAddresess() ([]string, error) {
}
// get information about all the pods running the ingress controller
pods, err := s.Client.Core().Pods(s.pod.Namespace).List(api.ListOptions{
pods, err := s.Client.Core().Pods(s.pod.Namespace).List(v1.ListOptions{
LabelSelector: labels.SelectorFromSet(s.pod.Labels),
})
if err != nil {
@ -222,13 +222,13 @@ func (s *statusSync) runningAddresess() ([]string, error) {
}
// sliceToStatus converts a slice of IP and/or hostnames to LoadBalancerIngress
func sliceToStatus(endpoints []string) []api.LoadBalancerIngress {
lbi := []api.LoadBalancerIngress{}
func sliceToStatus(endpoints []string) []v1.LoadBalancerIngress {
lbi := []v1.LoadBalancerIngress{}
for _, ep := range endpoints {
if net.ParseIP(ep) == nil {
lbi = append(lbi, api.LoadBalancerIngress{Hostname: ep})
lbi = append(lbi, v1.LoadBalancerIngress{Hostname: ep})
} else {
lbi = append(lbi, api.LoadBalancerIngress{IP: ep})
lbi = append(lbi, v1.LoadBalancerIngress{IP: ep})
}
}
@ -236,7 +236,7 @@ func sliceToStatus(endpoints []string) []api.LoadBalancerIngress {
return lbi
}
func (s *statusSync) updateStatus(newIPs []api.LoadBalancerIngress) {
func (s *statusSync) updateStatus(newIPs []v1.LoadBalancerIngress) {
ings := s.IngressLister.List()
var wg sync.WaitGroup
wg.Add(len(ings))
@ -270,7 +270,7 @@ func (s *statusSync) updateStatus(newIPs []api.LoadBalancerIngress) {
wg.Wait()
}
func ingressSliceEqual(lhs, rhs []api.LoadBalancerIngress) bool {
func ingressSliceEqual(lhs, rhs []v1.LoadBalancerIngress) bool {
if len(lhs) != len(rhs) {
return false
}
@ -287,7 +287,7 @@ func ingressSliceEqual(lhs, rhs []api.LoadBalancerIngress) bool {
}
// loadBalancerIngressByIP sorts LoadBalancerIngress using the field IP
type loadBalancerIngressByIP []api.LoadBalancerIngress
type loadBalancerIngressByIP []v1.LoadBalancerIngress
func (c loadBalancerIngressByIP) Len() int { return len(c) }
func (c loadBalancerIngressByIP) Swap(i, j int) { c[i], c[j] = c[j], c[i] }

View file

@ -26,11 +26,11 @@ import (
cache_store "k8s.io/ingress/core/pkg/cache"
"k8s.io/ingress/core/pkg/k8s"
"k8s.io/ingress/core/pkg/task"
"k8s.io/kubernetes/pkg/api"
"k8s.io/kubernetes/pkg/apis/extensions"
"k8s.io/kubernetes/pkg/client/cache"
testclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake"
"k8s.io/kubernetes/pkg/util/sets"
"k8s.io/client-go/pkg/api/v1"
"k8s.io/client-go/pkg/apis/extensions"
"k8s.io/client-go/tools/cache"
testclient "k8s.io/client-go/kubernetes/fake"
"k8s.io/client-go/pkg/util/sets"
)
func buildLoadBalancerIngressByIP() loadBalancerIngressByIP {

View file

@ -19,7 +19,7 @@ package ingress
import (
"github.com/spf13/pflag"
"k8s.io/kubernetes/pkg/api"
"k8s.io/client-go/pkg/api"
"k8s.io/kubernetes/pkg/client/cache"
"k8s.io/kubernetes/pkg/healthz"

View file

@ -21,12 +21,12 @@ import (
"os"
"strings"
"k8s.io/kubernetes/pkg/api"
clientset "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset"
clientset "k8s.io/client-go/kubernetes"
"k8s.io/client-go/pkg/api/v1"
)
// IsValidService checks if exists a service with the specified name
func IsValidService(kubeClient clientset.Interface, name string) (*api.Service, error) {
func IsValidService(kubeClient clientset.Interface, name string) (*v1.Service, error) {
ns, name, err := ParseNameNS(name)
if err != nil {
return nil, err
@ -35,7 +35,7 @@ func IsValidService(kubeClient clientset.Interface, name string) (*api.Service,
}
// IsValidSecret checks if exists a secret with the specified name
func IsValidSecret(kubeClient clientset.Interface, name string) (*api.Secret, error) {
func IsValidSecret(kubeClient clientset.Interface, name string) (*v1.Secret, error) {
ns, name, err := ParseNameNS(name)
if err != nil {
return nil, err
@ -62,14 +62,15 @@ func GetNodeIP(kubeClient clientset.Interface, name string) string {
}
for _, address := range node.Status.Addresses {
if address.Type == api.NodeExternalIP {
if address.Type == v1.NodeExternalIP {
if address.Address != "" {
externalIP = address.Address
break
}
}
if externalIP == "" && address.Type == api.NodeLegacyHostIP {
//FIXME There's no v1.NodeLegacyHostIP
if externalIP == "" { // && address.Type == v1.NodeLegacyHostIP {
externalIP = address.Address
}
}

View file

@ -19,8 +19,8 @@ package k8s
import (
"testing"
"k8s.io/kubernetes/pkg/api"
testclient "k8s.io/kubernetes/pkg/client/clientset_generated/internalclientset/fake"
"k8s.io/client-go/pkg/api/v1"
testclient "k8s.io/client-go/kubernetes/fake"
"os"
)

View file

@ -22,7 +22,7 @@ import (
"github.com/golang/glog"
"k8s.io/kubernetes/pkg/client/cache"
"k8s.io/client-go/tools/cache"
"k8s.io/kubernetes/pkg/util/wait"
"k8s.io/kubernetes/pkg/util/workqueue"
)