Migrate to new networking.k8s.io/v1beta1 package
This commit is contained in:
parent
8cee8d5d9b
commit
84102eec2b
113 changed files with 834 additions and 648 deletions
|
|
@ -21,11 +21,13 @@ import (
|
|||
"os"
|
||||
"strings"
|
||||
|
||||
"k8s.io/klog"
|
||||
|
||||
apiv1 "k8s.io/api/core/v1"
|
||||
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
|
||||
"k8s.io/apimachinery/pkg/util/version"
|
||||
clientset "k8s.io/client-go/kubernetes"
|
||||
"k8s.io/client-go/tools/cache"
|
||||
"k8s.io/klog"
|
||||
)
|
||||
|
||||
// ParseNameNS parses a string searching a namespace and name
|
||||
|
|
@ -107,3 +109,31 @@ func MetaNamespaceKey(obj interface{}) string {
|
|||
|
||||
return key
|
||||
}
|
||||
|
||||
// IsNetworkingIngressAvailable indicates if package "k8s.io/api/networking/v1beta1" is available or not
|
||||
var IsNetworkingIngressAvailable bool
|
||||
|
||||
// NetworkingIngressAvailable checks if the package "k8s.io/api/networking/v1beta1" is available or not
|
||||
func NetworkingIngressAvailable(client clientset.Interface) bool {
|
||||
// check kubernetes version to use new ingress package or not
|
||||
version114, err := version.ParseGeneric("v1.14.0")
|
||||
if err != nil {
|
||||
klog.Errorf("unexpected error parsing version: %v", err)
|
||||
return false
|
||||
}
|
||||
|
||||
serverVersion, _ := client.Discovery().ServerVersion()
|
||||
if err != nil {
|
||||
klog.Errorf("unexpected error parsing Kubernetes version: %v", err)
|
||||
return false
|
||||
}
|
||||
|
||||
klog.Errorf("%v", serverVersion)
|
||||
runningVersion, _ := version.ParseGeneric(serverVersion.String())
|
||||
if err != nil {
|
||||
klog.Errorf("unexpected error parsing running Kubernetes version: %v", err)
|
||||
return false
|
||||
}
|
||||
|
||||
return runningVersion.AtLeast(version114)
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue