/
cluster.go
60 lines (54 loc) · 1.67 KB
/
cluster.go
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
package test
import (
toolchainv1alpha1 "github.com/codeready-toolchain/api/api/v1alpha1"
"gopkg.in/h2non/gock.v1"
corev1 "k8s.io/api/core/v1"
v1 "k8s.io/apimachinery/pkg/apis/meta/v1"
)
const (
NameHost = "dsaas"
NameMember = "east"
)
func NewToolchainCluster(name, tcNs, secName string, status toolchainv1alpha1.ToolchainClusterStatus, labels map[string]string) (*toolchainv1alpha1.ToolchainCluster, *corev1.Secret) {
return NewToolchainClusterWithEndpoint(name, tcNs, secName, "http://cluster.com", status, labels)
}
func NewToolchainClusterWithEndpoint(name, tcNs, secName, apiEndpoint string, status toolchainv1alpha1.ToolchainClusterStatus, labels map[string]string) (*toolchainv1alpha1.ToolchainCluster, *corev1.Secret) {
gock.New(apiEndpoint).
Get("api").
Persist().
Reply(200).
BodyString("{}")
secret := &corev1.Secret{
ObjectMeta: v1.ObjectMeta{
Name: secName,
Namespace: tcNs,
},
Type: corev1.SecretTypeOpaque,
Data: map[string][]byte{
"token": []byte("mycooltoken"),
},
}
return &toolchainv1alpha1.ToolchainCluster{
Spec: toolchainv1alpha1.ToolchainClusterSpec{
SecretRef: toolchainv1alpha1.LocalSecretReference{
Name: secName,
},
APIEndpoint: apiEndpoint,
CABundle: "",
},
ObjectMeta: v1.ObjectMeta{
Name: name,
Namespace: tcNs,
Labels: labels,
},
Status: status,
}, secret
}
func NewClusterStatus(conType toolchainv1alpha1.ToolchainClusterConditionType, conStatus corev1.ConditionStatus) toolchainv1alpha1.ToolchainClusterStatus {
return toolchainv1alpha1.ToolchainClusterStatus{
Conditions: []toolchainv1alpha1.ToolchainClusterCondition{{
Type: conType,
Status: conStatus,
}},
}
}