mirror of
https://github.com/open-cluster-management-io/ocm.git
synced 2026-05-13 04:38:13 +00:00
clusterset v1beta1 migration (#315)
Signed-off-by: ldpliu <daliu@redhat.com>
This commit is contained in:
@@ -12,6 +12,11 @@ import (
|
||||
clusterv1beta2 "open-cluster-management.io/api/cluster/v1beta2"
|
||||
)
|
||||
|
||||
const (
|
||||
clustersetCrdName = "managedclustersets.cluster.open-cluster-management.io"
|
||||
clustersetBindingCrdName = "managedclustersetbindings.cluster.open-cluster-management.io"
|
||||
)
|
||||
|
||||
var _ = ginkgo.Describe("Create v1beta2 managedclusterset", func() {
|
||||
ginkgo.It("Create a v1beta2 labelselector based ManagedClusterSet and get/update/delete with v1beta2 client", func() {
|
||||
ginkgo.By("Create a v1beta2 ManagedClusterSet")
|
||||
@@ -113,4 +118,34 @@ var _ = ginkgo.Describe("Create v1beta2 managedclusterset", func() {
|
||||
err := t.ClusterClient.ClusterV1beta1().ManagedClusterSets().Delete(context.Background(), managedClusterSetName, metav1.DeleteOptions{})
|
||||
gomega.Expect(err).ToNot(gomega.HaveOccurred())
|
||||
})
|
||||
ginkgo.It("Check if the v1beta1 storageversion is removed from clusterset crd", func() {
|
||||
gomega.Eventually(func() error {
|
||||
clustersetCrd, err := t.HubAPIExtensionClient.ApiextensionsV1().CustomResourceDefinitions().Get(context.Background(), clustersetCrdName, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(clustersetCrd.Status.StoredVersions) != 1 {
|
||||
return fmt.Errorf("clustersetCrd.Status.StoredVersions should be v1beta2, but got:%v", clustersetCrd.Status.StoredVersions)
|
||||
}
|
||||
if clustersetCrd.Status.StoredVersions[0] != "v1beta2" {
|
||||
return fmt.Errorf("clustersetCrd.Status.StoredVersions should be v1beta2, but got:%v", clustersetCrd.Status.StoredVersions)
|
||||
}
|
||||
return nil
|
||||
}, t.EventuallyTimeout*5, t.EventuallyInterval*5).Should(gomega.Succeed())
|
||||
})
|
||||
ginkgo.It("Check if the v1beta1 storageversion is removed from clustersetbinding crd", func() {
|
||||
gomega.Eventually(func() error {
|
||||
clustersetBindingCrd, err := t.HubAPIExtensionClient.ApiextensionsV1().CustomResourceDefinitions().Get(context.Background(), clustersetBindingCrdName, metav1.GetOptions{})
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
if len(clustersetBindingCrd.Status.StoredVersions) != 1 {
|
||||
return fmt.Errorf("clustersetBindingCrd.Status.StoredVersions should be v1beta2, but got:%v", clustersetBindingCrd.Status.StoredVersions)
|
||||
}
|
||||
if clustersetBindingCrd.Status.StoredVersions[0] != "v1beta2" {
|
||||
return fmt.Errorf("clustersetBindingCrd.Status.StoredVersions should be v1beta2, but got:%v", clustersetBindingCrd.Status.StoredVersions)
|
||||
}
|
||||
return nil
|
||||
}, t.EventuallyTimeout*5, t.EventuallyInterval*5).Should(gomega.Succeed())
|
||||
})
|
||||
})
|
||||
|
||||
@@ -12,6 +12,7 @@ import (
|
||||
"k8s.io/klog/v2"
|
||||
|
||||
"github.com/onsi/gomega"
|
||||
apiextensionsclient "k8s.io/apiextensions-apiserver/pkg/client/clientset/clientset"
|
||||
|
||||
certificatesv1 "k8s.io/api/certificates/v1"
|
||||
coordv1 "k8s.io/api/coordination/v1"
|
||||
@@ -38,6 +39,7 @@ import (
|
||||
type Tester struct {
|
||||
kubeconfigPath string
|
||||
KubeClient kubernetes.Interface
|
||||
HubAPIExtensionClient apiextensionsclient.Interface
|
||||
ClusterCfg *rest.Config
|
||||
OperatorClient operatorclient.Interface
|
||||
ClusterClient clusterclient.Interface
|
||||
@@ -95,6 +97,11 @@ func (t *Tester) Init() error {
|
||||
klog.Errorf("failed to get KubeClient. %v", err)
|
||||
return err
|
||||
}
|
||||
|
||||
if t.HubAPIExtensionClient, err = apiextensionsclient.NewForConfig(t.ClusterCfg); err != nil {
|
||||
klog.Errorf("failed to get HubApiExtensionClient. %v", err)
|
||||
return err
|
||||
}
|
||||
if t.OperatorClient, err = operatorclient.NewForConfig(t.ClusterCfg); err != nil {
|
||||
klog.Errorf("failed to get OperatorClient. %v", err)
|
||||
return err
|
||||
|
||||
Reference in New Issue
Block a user