update discoveryv1beta1 to discoveryv1 for endpointslice

Signed-off-by: changzhen <changzhen5@huawei.com>
Signed-off-by: Shike-Ada <1073457937@qq.com>
This commit is contained in:
changzhen 2021-12-18 15:33:26 +08:00 committed by Shike-Ada
parent ec820beac9
commit 586cd9d407
8 changed files with 37 additions and 37 deletions

View File

@ -17,8 +17,7 @@
"k8s.io/api/coordination/v1": "coordinationv1",
"k8s.io/api/coordination/v1beta1": "coordinationv1beta1",
"k8s.io/api/core/v1": "corev1",
"k8s.io/api/discovery/v1alpha1": "discoveryv1alpha1",
"k8s.io/api/discovery/v1beta1": "discoveryv1beta1",
"k8s.io/api/discovery/v1": "discoveryv1",
"k8s.io/api/events/v1": "eventsv1",
"k8s.io/api/events/v1beta1": "eventsv1beta1",
"k8s.io/api/extensions/v1beta1": "extensionsv1beta1",

View File

@ -3,7 +3,7 @@ package mcs
import (
"context"
discoveryv1beta1 "k8s.io/api/discovery/v1beta1"
discoveryv1 "k8s.io/api/discovery/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
@ -98,9 +98,9 @@ func (c *EndpointSliceController) collectEndpointSliceFromWork(work *workv1alpha
desiredEndpointSlice := deriveEndpointSlice(endpointSlice, clusterName)
desiredEndpointSlice.Labels = map[string]string{
workv1alpha1.WorkNamespaceLabel: work.Namespace,
workv1alpha1.WorkNameLabel: work.Name,
discoveryv1beta1.LabelServiceName: names.GenerateDerivedServiceName(work.Labels[util.ServiceNameLabel]),
workv1alpha1.WorkNamespaceLabel: work.Namespace,
workv1alpha1.WorkNameLabel: work.Name,
discoveryv1.LabelServiceName: names.GenerateDerivedServiceName(work.Labels[util.ServiceNameLabel]),
}
if err = helper.CreateOrUpdateEndpointSlice(c.Client, desiredEndpointSlice); err != nil {
@ -111,7 +111,7 @@ func (c *EndpointSliceController) collectEndpointSliceFromWork(work *workv1alpha
return controllerruntime.Result{}, nil
}
func deriveEndpointSlice(original *discoveryv1beta1.EndpointSlice, migratedFrom string) *discoveryv1beta1.EndpointSlice {
func deriveEndpointSlice(original *discoveryv1.EndpointSlice, migratedFrom string) *discoveryv1.EndpointSlice {
endpointSlice := original.DeepCopy()
endpointSlice.ObjectMeta = metav1.ObjectMeta{
Namespace: original.Namespace,

View File

@ -6,7 +6,7 @@ import (
"reflect"
"sync"
discoveryv1beta1 "k8s.io/api/discovery/v1beta1"
discoveryv1 "k8s.io/api/discovery/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/api/meta"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@ -58,7 +58,7 @@ type ServiceExportController struct {
var (
serviceExportGVR = mcsv1alpha1.SchemeGroupVersion.WithResource("serviceexports")
serviceExportGVK = mcsv1alpha1.SchemeGroupVersion.WithKind("ServiceExport")
endpointSliceGVR = discoveryv1beta1.SchemeGroupVersion.WithResource("endpointslices")
endpointSliceGVR = discoveryv1.SchemeGroupVersion.WithResource("endpointslices")
)
// Reconcile performs a full reconciliation for the object referred to by the Request.
@ -321,7 +321,7 @@ func (c *ServiceExportController) reportEndpointSliceWithServiceExportCreate(ser
endpointSliceLister := singleClusterManager.Lister(endpointSliceGVR)
if endpointSliceObjects, err = endpointSliceLister.ByNamespace(serviceExportKey.Namespace).List(labels.SelectorFromSet(labels.Set{
discoveryv1beta1.LabelServiceName: serviceExportKey.Name,
discoveryv1.LabelServiceName: serviceExportKey.Name,
})); err != nil {
return err
}
@ -341,7 +341,7 @@ func (c *ServiceExportController) reportEndpointSliceWithServiceExportCreate(ser
// reportEndpointSliceWithEndpointSliceCreateOrUpdate reports the EndpointSlice when referencing service has been exported.
func (c *ServiceExportController) reportEndpointSliceWithEndpointSliceCreateOrUpdate(clusterName string, endpointSlice *unstructured.Unstructured) error {
relatedServiceName := endpointSlice.GetLabels()[discoveryv1beta1.LabelServiceName]
relatedServiceName := endpointSlice.GetLabels()[discoveryv1.LabelServiceName]
singleClusterManager := c.InformerManager.GetSingleClusterManager(clusterName)
if singleClusterManager == nil {
@ -374,7 +374,7 @@ func reportEndpointSlice(c client.Client, endpointSlice *unstructured.Unstructur
Namespace: executionSpace,
Labels: map[string]string{
util.ServiceNamespaceLabel: endpointSlice.GetNamespace(),
util.ServiceNameLabel: endpointSlice.GetLabels()[discoveryv1beta1.LabelServiceName],
util.ServiceNameLabel: endpointSlice.GetLabels()[discoveryv1.LabelServiceName],
// indicate the Work should be not propagated since it's collected resource.
util.PropagationInstruction: util.PropagationInstructionSuppressed,
},

View File

@ -3,7 +3,7 @@ package helper
import (
"context"
discoveryv1beta1 "k8s.io/api/discovery/v1beta1"
discoveryv1 "k8s.io/api/discovery/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
"k8s.io/apimachinery/pkg/labels"
"k8s.io/apimachinery/pkg/util/errors"
@ -13,7 +13,7 @@ import (
)
// CreateOrUpdateEndpointSlice creates a EndpointSlice object if not exist, or updates if it already exist.
func CreateOrUpdateEndpointSlice(client client.Client, endpointSlice *discoveryv1beta1.EndpointSlice) error {
func CreateOrUpdateEndpointSlice(client client.Client, endpointSlice *discoveryv1.EndpointSlice) error {
runtimeObject := endpointSlice.DeepCopy()
operationResult, err := controllerutil.CreateOrUpdate(context.TODO(), client, runtimeObject, func() error {
runtimeObject.AddressType = endpointSlice.AddressType
@ -39,8 +39,8 @@ func CreateOrUpdateEndpointSlice(client client.Client, endpointSlice *discoveryv
}
// GetEndpointSlices returns a EndpointSliceList by labels
func GetEndpointSlices(c client.Client, ls labels.Set) (*discoveryv1beta1.EndpointSliceList, error) {
endpointSlices := &discoveryv1beta1.EndpointSliceList{}
func GetEndpointSlices(c client.Client, ls labels.Set) (*discoveryv1.EndpointSliceList, error) {
endpointSlices := &discoveryv1.EndpointSliceList{}
listOpt := &client.ListOptions{LabelSelector: labels.SelectorFromSet(ls)}
return endpointSlices, c.List(context.TODO(), endpointSlices, listOpt)

View File

@ -3,7 +3,7 @@ package helper
import (
"fmt"
discoveryv1beta1 "k8s.io/api/discovery/v1beta1"
discoveryv1 "k8s.io/api/discovery/v1"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
"k8s.io/klog/v2"
"sigs.k8s.io/controller-runtime/pkg/client"
@ -109,12 +109,12 @@ func GenerateResourceSelectorForServiceImport(svcImport policyv1alpha1.ResourceS
Name: derivedServiceName,
},
{
APIVersion: "discovery.k8s.io/v1beta1",
APIVersion: "discovery.k8s.io/v1",
Kind: util.EndpointSliceKind,
Namespace: svcImport.Namespace,
LabelSelector: &metav1.LabelSelector{
MatchLabels: map[string]string{
discoveryv1beta1.LabelServiceName: derivedServiceName,
discoveryv1.LabelServiceName: derivedServiceName,
},
},
},

View File

@ -4,7 +4,7 @@ import (
appsv1 "k8s.io/api/apps/v1"
batchv1 "k8s.io/api/batch/v1"
corev1 "k8s.io/api/core/v1"
discoveryv1beta1 "k8s.io/api/discovery/v1beta1"
discoveryv1 "k8s.io/api/discovery/v1"
"k8s.io/apimachinery/pkg/apis/meta/v1/unstructured"
"k8s.io/apimachinery/pkg/runtime"
@ -114,8 +114,8 @@ func ConvertToJob(obj *unstructured.Unstructured) (*batchv1.Job, error) {
}
// ConvertToEndpointSlice converts a EndpointSlice object from unstructured to typed.
func ConvertToEndpointSlice(obj *unstructured.Unstructured) (*discoveryv1beta1.EndpointSlice, error) {
typedObj := &discoveryv1beta1.EndpointSlice{}
func ConvertToEndpointSlice(obj *unstructured.Unstructured) (*discoveryv1.EndpointSlice, error) {
typedObj := &discoveryv1.EndpointSlice{}
if err := runtime.DefaultUnstructuredConverter.FromUnstructured(obj.UnstructuredContent(), typedObj); err != nil {
return nil, err
}

View File

@ -31,6 +31,7 @@ func (a *MutatingAdmission) Handle(ctx context.Context, req admission.Request) a
if err != nil {
return admission.Errored(http.StatusBadRequest, err)
}
klog.V(2).Infof("Mutating PropagationPolicy(%s/%s) for request: %s", policy.Namespace, policy.Name, req.Operation)
// Set default namespace for all resource selector if not set.
for i := range policy.Spec.ResourceSelectors {

View File

@ -8,7 +8,7 @@ import (
"github.com/onsi/gomega"
appsv1 "k8s.io/api/apps/v1"
corev1 "k8s.io/api/core/v1"
discoveryv1beta1 "k8s.io/api/discovery/v1beta1"
discoveryv1 "k8s.io/api/discovery/v1"
apiextensionsv1 "k8s.io/apiextensions-apiserver/pkg/apis/apiextensions/v1"
apierrors "k8s.io/apimachinery/pkg/api/errors"
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
@ -232,8 +232,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait Service(%s/%s)'s EndpointSlice exist in %s cluster", demoService.Namespace, demoService.Name, serviceExportClusterName), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := exportClusterClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: demoService.Name}.AsSelector().String(),
endpointSlices, err := exportClusterClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: demoService.Name}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())
@ -270,8 +270,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait EndpointSlices collected to namespace(%s) in controller-plane", demoService.Namespace), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := kubeClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
endpointSlices, err := kubeClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())
@ -306,8 +306,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait EndpointSlices have been imported to %s cluster", serviceImportClusterName), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := importClusterClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
endpointSlices, err := importClusterClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())
@ -375,8 +375,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait Service(%s/%s)'s EndpointSlice exist in %s cluster", demoService.Namespace, demoService.Name, serviceExportClusterName), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := exportClusterClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: demoService.Name}.AsSelector().String(),
endpointSlices, err := exportClusterClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: demoService.Name}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())
@ -415,8 +415,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait EndpointSlices collected to namespace(%s) in controller-plane", demoService.Namespace), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := kubeClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
endpointSlices, err := kubeClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())
@ -437,8 +437,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait EndpointSlice exist in %s cluster", serviceImportClusterName), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := importClusterClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
endpointSlices, err := importClusterClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())
@ -455,8 +455,8 @@ var _ = ginkgo.Describe("[MCS] Multi-Cluster Service testing", func() {
ginkgo.By(fmt.Sprintf("Wait EndpointSlice update in %s cluster", serviceImportClusterName), func() {
gomega.Eventually(func(g gomega.Gomega) (int, error) {
endpointSlices, err := importClusterClient.DiscoveryV1beta1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1beta1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
endpointSlices, err := importClusterClient.DiscoveryV1().EndpointSlices(demoService.Namespace).List(context.TODO(), metav1.ListOptions{
LabelSelector: labels.Set{discoveryv1.LabelServiceName: names.GenerateDerivedServiceName(demoService.Name)}.AsSelector().String(),
})
g.Expect(err).NotTo(gomega.HaveOccurred())