Skip to content

Commit a79646a

Browse files
committed
jianl - First e2e test
1 parent 75c15b5 commit a79646a

File tree

3 files changed

+55
-6
lines changed

3 files changed

+55
-6
lines changed

go.mod

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@ require (
2424
golang.org/x/net v0.38.0
2525
golang.org/x/time v0.9.0
2626
gopkg.in/fsnotify.v1 v1.4.7
27+
gopkg.in/yaml.v2 v2.4.0
2728
k8s.io/api v0.33.2
2829
k8s.io/apiextensions-apiserver v0.32.1
2930
k8s.io/apimachinery v0.33.2
@@ -78,7 +79,6 @@ require (
7879
google.golang.org/protobuf v1.36.5 // indirect
7980
gopkg.in/evanphx/json-patch.v4 v4.12.0 // indirect
8081
gopkg.in/inf.v0 v0.9.1 // indirect
81-
gopkg.in/yaml.v2 v2.4.0 // indirect
8282
gopkg.in/yaml.v3 v3.0.1 // indirect
8383
k8s.io/apiserver v0.32.1 // indirect
8484
k8s.io/component-base v0.32.1 // indirect

test/cvo/cvo.go

Lines changed: 23 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,30 @@
11
package cvo
22

33
import (
4-
. "github.com/onsi/ginkgo/v2"
5-
. "github.com/onsi/gomega"
4+
"context"
5+
6+
g "github.com/onsi/ginkgo/v2"
7+
o "github.com/onsi/gomega"
8+
"github.com/openshift/cluster-version-operator/test/utilities"
9+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
610
)
711

8-
var _ = Describe("[Jira:Cluster Version Operator] cluster-version-operator-tests", func() {
9-
It("should support passing tests", func() {
10-
Expect(true).To(BeTrue())
12+
var _ = g.Describe("[Jira:Cluster Version Operator] cluster-version-operator-tests", g.Label("cvo"), func() {
13+
defer g.GinkgoRecover()
14+
15+
oc, err := utilities.GetClient()
16+
o.Expect(err).NotTo(o.HaveOccurred())
17+
18+
g.It("Author:jianl-High-42543-the removed resources are not created in a fresh installed cluster", g.Label("High", "42543"), func() {
19+
g.By("Validate resource with 'release.openshift.io/delete: \"true\"' annotation is not installed")
20+
21+
_, err := oc.CoreV1().Services("openshift-cloud-credential-operator").Get(context.TODO(), "controller-manager-service", metav1.GetOptions{})
22+
o.Expect(err).To(o.HaveOccurred(), "Service controller-manager-service was accidentally installed")
23+
24+
_, err = oc.RbacV1().ClusterRoleBindings().Get(context.TODO(), "default-account-openshift-machine-config-operator", metav1.GetOptions{})
25+
o.Expect(err).To(o.HaveOccurred(), "ClusterRoleBinding default-account-openshift-machine-config-operator was accidentally installed")
26+
27+
_, err = oc.BatchV1().CronJobs("openshift-machine-config-operator").Get(context.TODO(), "machine-config-nodes-crd-cleanup", metav1.GetOptions{})
28+
o.Expect(err).To(o.HaveOccurred(), "CronJob machine-config-nodes-crd-cleanup was accidentally installed")
1129
})
1230
})

test/utilities/connection.go

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
package utilities
2+
3+
import (
4+
"errors"
5+
"os"
6+
7+
"k8s.io/client-go/kubernetes"
8+
"k8s.io/client-go/tools/clientcmd"
9+
)
10+
11+
// getClient
12+
// @Description create a kubernetes.Clientset object
13+
// @Create jianl Oct 23 2025
14+
// @Return (Instance of kubernetes.Clientset, error)
15+
func GetClient() (*kubernetes.Clientset, error) {
16+
configPath, present := os.LookupEnv("KUBECONFIG")
17+
if present {
18+
config, err := clientcmd.BuildConfigFromFlags("", configPath)
19+
if err != nil {
20+
return nil, err
21+
}
22+
// Create the Clientset
23+
clientset, err := kubernetes.NewForConfig(config)
24+
if err != nil {
25+
return nil, err
26+
}
27+
return clientset, nil
28+
} else {
29+
return nil, errors.New("KUBECONFIG not set")
30+
}
31+
}

0 commit comments

Comments
 (0)