Skip to content
This repository was archived by the owner on May 17, 2024. It is now read-only.

Commit 1825e87

Browse files
committed
Update test from new k8s dependencies
Signed-off-by: JoshVanL <[email protected]>
1 parent e7cc80b commit 1825e87

File tree

5 files changed

+75
-57
lines changed

5 files changed

+75
-57
lines changed

test/e2e/suite/suite.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,12 @@ var _ = SynchronizedBeforeSuite(func() []byte {
2323
log.Fatalf("Error provisioning environment: %v", err)
2424
}
2525

26-
cfg.KubeConfigPath = env.KubeConfigPath()
26+
kubeconfig, err := env.KubeConfigPath()
27+
if err != nil {
28+
log.Fatalf("Failed to determine kubeconfig file: %s", err)
29+
}
30+
31+
cfg.KubeConfigPath = kubeconfig
2732
cfg.Kubectl = filepath.Join(env.RootPath(), "bin", "kubectl")
2833
cfg.RepoRoot = env.RootPath()
2934
cfg.Environment = env

test/environment/dev/dev.go

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,14 @@ func create() {
3232
env, err := environment.Create(1, 1)
3333
errExit(err)
3434

35-
fmt.Printf("dev environment created.\nexport KUBECONFIG=%s\n",
36-
env.KubeConfigPath())
35+
fmt.Printf("dev environment created.\n")
36+
kubeconfig, err := env.KubeConfigPath()
37+
if err != nil {
38+
fmt.Printf("failed to determine kubeconfig path: %s", err)
39+
return
40+
}
41+
42+
fmt.Printf("export KUBECONFIG=%s", kubeconfig)
3743
}
3844

3945
func destroy() {

test/environment/environment.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ func (e *Environment) KubeClient() *kubernetes.Clientset {
7474
return e.kind.KubeClient()
7575
}
7676

77-
func (e *Environment) KubeConfigPath() string {
77+
func (e *Environment) KubeConfigPath() (string, error) {
7878
return e.kind.KubeConfigPath()
7979
}
8080

@@ -90,7 +90,7 @@ func (e *Environment) Node(name string) (*nodes.Node, error) {
9090

9191
var node *nodes.Node
9292
for _, n := range ns {
93-
if n.Name() == name {
93+
if n.String() == name {
9494
node = &n
9595
break
9696
}

test/kind/image.go

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,6 @@
22
package kind
33

44
import (
5-
"bytes"
65
"fmt"
76
"io/ioutil"
87
"os"
@@ -61,29 +60,29 @@ func (k *Kind) loadImage(binPath, mainPath, image, dockerfilePath string) error
6160
return err
6261
}
6362

64-
nodes, err := k.ctx.ListNodes()
65-
if err != nil {
66-
return err
67-
}
68-
69-
b, err := ioutil.ReadFile(imageArchive)
70-
if err != nil {
71-
return err
72-
}
73-
74-
for _, node := range nodes {
75-
log.Infof("kind: loading image %q to node %q", image, node.Name())
76-
r := bytes.NewBuffer(b)
77-
if err := node.LoadImageArchive(r); err != nil {
78-
return err
79-
}
80-
81-
err := node.Command("mkdir", "-p", "/tmp/kube-oidc-proxy").Run()
82-
if err != nil {
83-
return fmt.Errorf("failed to create directory %q: %s",
84-
"/tmp/kube-oidc-proxy", err)
85-
}
86-
}
63+
//nodes, err := k.ctx.ListNodes()
64+
//if err != nil {
65+
// return err
66+
//}
67+
68+
//b, err := ioutil.ReadFile(imageArchive)
69+
//if err != nil {
70+
// return err
71+
//}
72+
73+
//for _, node := range nodes {
74+
// log.Infof("kind: loading image %q to node %q", image, node.Name())
75+
// r := bytes.NewBuffer(b)
76+
// if err := node.LoadImageArchive(r); err != nil {
77+
// return err
78+
// }
79+
80+
// err := node.Command("mkdir", "-p", "/tmp/kube-oidc-proxy").Run()
81+
// if err != nil {
82+
// return fmt.Errorf("failed to create directory %q: %s",
83+
// "/tmp/kube-oidc-proxy", err)
84+
// }
85+
//}
8786

8887
return nil
8988
}

test/kind/kind.go

Lines changed: 36 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -13,16 +13,19 @@ import (
1313
"k8s.io/client-go/kubernetes"
1414
"k8s.io/client-go/rest"
1515
"k8s.io/client-go/tools/clientcmd"
16-
configv1alpha3 "sigs.k8s.io/kind/pkg/apis/config/v1alpha3"
16+
configv1alpha4 "sigs.k8s.io/kind/pkg/apis/config/v1alpha4"
1717
"sigs.k8s.io/kind/pkg/cluster"
18-
"sigs.k8s.io/kind/pkg/cluster/create"
1918
"sigs.k8s.io/kind/pkg/cluster/nodes"
2019
)
2120

21+
const (
22+
clusterName = "kube-oidc-proxy-e2e"
23+
)
24+
2225
type Kind struct {
2326
rootPath string
2427

25-
ctx *cluster.Context
28+
provider *cluster.Provider
2629
restConfig *rest.Config
2730
client *kubernetes.Clientset
2831
}
@@ -32,50 +35,57 @@ func New(rootPath, nodeImage string, masterNodes, workerNodes int) (*Kind, error
3235

3336
k := &Kind{
3437
rootPath: rootPath,
35-
ctx: cluster.NewContext("kube-oidc-proxy-e2e"),
3638
}
3739

38-
conf := new(configv1alpha3.Cluster)
39-
configv1alpha3.SetDefaults_Cluster(conf)
40+
conf := new(configv1alpha4.Cluster)
41+
configv1alpha4.SetDefaultsCluster(conf)
4042
conf.Nodes = nil
4143

4244
// This behviour will be changing soon in later versions of kind.
4345
if workerNodes == 0 {
4446
for i := 0; i < masterNodes; i++ {
4547
conf.Nodes = append(conf.Nodes,
46-
configv1alpha3.Node{
48+
configv1alpha4.Node{
4749
Image: nodeImage,
4850
})
4951
}
5052

5153
} else {
5254
for i := 0; i < masterNodes; i++ {
5355
conf.Nodes = append(conf.Nodes,
54-
configv1alpha3.Node{
56+
configv1alpha4.Node{
5557
Image: nodeImage,
56-
Role: configv1alpha3.ControlPlaneRole,
58+
Role: configv1alpha4.ControlPlaneRole,
5759
})
5860
}
5961

6062
for i := 0; i < workerNodes; i++ {
6163
conf.Nodes = append(conf.Nodes,
62-
configv1alpha3.Node{
64+
configv1alpha4.Node{
6365
Image: nodeImage,
64-
Role: configv1alpha3.WorkerRole,
66+
Role: configv1alpha4.WorkerRole,
6567
})
6668
}
6769
}
6870

6971
conf.Networking.ServiceSubnet = "10.0.0.0/16"
7072

7173
// create kind cluster
72-
log.Infof("kind: creating kind cluster %q", k.ctx.Name())
73-
if err := k.ctx.Create(create.WithV1Alpha3(conf)); err != nil {
74-
return nil, fmt.Errorf("failed to create cluster: %s", err)
74+
log.Infof("kind: creating kind cluster %q", clusterName)
75+
k.provider = cluster.NewProvider()
76+
if err := k.provider.Create(
77+
clusterName,
78+
cluster.CreateWithV1Alpha4Config(conf),
79+
); err != nil {
80+
return nil, err
7581
}
7682

7783
// generate rest config to kind cluster
78-
kubeconfig := k.ctx.KubeConfigPath()
84+
kubeconfig, err := k.provider.KubeConfig(clusterName, false)
85+
if err != nil {
86+
return nil, err
87+
}
88+
7989
restConfig, err := clientcmd.BuildConfigFromFlags("", kubeconfig)
8090
if err != nil {
8191
return nil, k.errDestroy(fmt.Errorf("failed to build kind rest client: %s", err))
@@ -96,31 +106,29 @@ func New(rootPath, nodeImage string, masterNodes, workerNodes int) (*Kind, error
96106
return nil, k.errDestroy(fmt.Errorf("failed to wait for DNS pods to become ready: %s", err))
97107
}
98108

99-
log.Infof("kind: cluster ready %q", k.ctx.Name())
109+
log.Infof("kind: cluster ready %q", clusterName)
100110

101111
return k, nil
102112
}
103113

104114
func DeleteCluster(name string) error {
105-
ok, err := cluster.IsKnown(name)
115+
provider := cluster.NewProvider()
116+
117+
kubeconfig, err := provider.KubeConfig(clusterName, false)
106118
if err != nil {
107119
return err
108120
}
109121

110-
if !ok {
111-
return fmt.Errorf("cluster unknown: %q", name)
112-
}
113-
114-
return cluster.NewContext(name).Delete()
122+
return provider.Delete(clusterName, kubeconfig)
115123
}
116124

117125
func (k *Kind) Destroy() error {
118-
log.Infof("kind: destroying cluster %q", k.ctx.Name())
119-
if err := k.ctx.Delete(); err != nil {
126+
log.Infof("kind: destroying cluster %q", clusterName)
127+
if err := DeleteCluster(clusterName); err != nil {
120128
return fmt.Errorf("failed to delete kind cluster: %s", err)
121129
}
122130

123-
log.Infof("kind: destroyed cluster %q", k.ctx.Name())
131+
log.Infof("kind: destroyed cluster %q", clusterName)
124132

125133
return nil
126134
}
@@ -129,12 +137,12 @@ func (k *Kind) KubeClient() *kubernetes.Clientset {
129137
return k.client
130138
}
131139

132-
func (k *Kind) KubeConfigPath() string {
133-
return k.ctx.KubeConfigPath()
140+
func (k *Kind) KubeConfigPath() (string, error) {
141+
return k.provider.KubeConfig(clusterName, false)
134142
}
135143

136144
func (k *Kind) Nodes() ([]nodes.Node, error) {
137-
return k.ctx.ListNodes()
145+
return k.provider.ListNodes(clusterName)
138146
}
139147

140148
func (k *Kind) errDestroy(err error) error {

0 commit comments

Comments
 (0)