mirror of
				https://github.com/coredns/coredns.git
				synced 2025-11-03 18:53:13 -05:00 
			
		
		
		
	* Update k8s.io/[api|apimachinery|client-go] to v0.18.0 This PR updates k8s.io/[api|apimachinery|client-go] to v0.18.0 This PR closes 3791 This PR closes 3792 This PR closes 3793 Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Fix test failures Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Fix failed tests Signed-off-by: Yong Tang <yong.tang.github@outlook.com> * Fix test failure Signed-off-by: Yong Tang <yong.tang.github@outlook.com>
		
			
				
	
	
		
			55 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			55 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Go
		
	
	
	
	
	
package kubernetes
 | 
						|
 | 
						|
import (
 | 
						|
	"context"
 | 
						|
 | 
						|
	meta "k8s.io/apimachinery/pkg/apis/meta/v1"
 | 
						|
	"k8s.io/apimachinery/pkg/labels"
 | 
						|
	"k8s.io/apimachinery/pkg/watch"
 | 
						|
	"k8s.io/client-go/kubernetes"
 | 
						|
)
 | 
						|
 | 
						|
func serviceWatchFunc(ctx context.Context, c kubernetes.Interface, ns string, s labels.Selector) func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
	return func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
		if s != nil {
 | 
						|
			options.LabelSelector = s.String()
 | 
						|
		}
 | 
						|
		w, err := c.CoreV1().Services(ns).Watch(ctx, options)
 | 
						|
		return w, err
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func podWatchFunc(ctx context.Context, c kubernetes.Interface, ns string, s labels.Selector) func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
	return func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
		if s != nil {
 | 
						|
			options.LabelSelector = s.String()
 | 
						|
		}
 | 
						|
		if len(options.FieldSelector) > 0 {
 | 
						|
			options.FieldSelector = options.FieldSelector + ","
 | 
						|
		}
 | 
						|
		options.FieldSelector = options.FieldSelector + "status.phase!=Succeeded,status.phase!=Failed,status.phase!=Unknown"
 | 
						|
		w, err := c.CoreV1().Pods(ns).Watch(ctx, options)
 | 
						|
		return w, err
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func endpointsWatchFunc(ctx context.Context, c kubernetes.Interface, ns string, s labels.Selector) func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
	return func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
		if s != nil {
 | 
						|
			options.LabelSelector = s.String()
 | 
						|
		}
 | 
						|
		w, err := c.CoreV1().Endpoints(ns).Watch(ctx, options)
 | 
						|
		return w, err
 | 
						|
	}
 | 
						|
}
 | 
						|
 | 
						|
func namespaceWatchFunc(ctx context.Context, c kubernetes.Interface, s labels.Selector) func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
	return func(options meta.ListOptions) (watch.Interface, error) {
 | 
						|
		if s != nil {
 | 
						|
			options.LabelSelector = s.String()
 | 
						|
		}
 | 
						|
		w, err := c.CoreV1().Namespaces().Watch(ctx, options)
 | 
						|
		return w, err
 | 
						|
	}
 | 
						|
}
 |