@@ -20,7 +20,10 @@ import (
20
20
// Describes test specs for the Operator resource.
21
21
var _ = Describe ("Operator" , func () {
22
22
var (
23
- deleteOpts * metav1.DeleteOptions
23
+ clientCtx context.Context
24
+ createOpts metav1.CreateOptions
25
+ updateOpts metav1.UpdateOptions
26
+ deleteOpts metav1.DeleteOptions
24
27
listOpts metav1.ListOptions
25
28
operatorClient client.OperatorInterface
26
29
kubeClient kubernetes.Interface
@@ -32,8 +35,11 @@ var _ = Describe("Operator", func() {
32
35
togglev2alpha1 ()
33
36
34
37
// Setup common utilities
38
+ clientCtx = context .Background ()
39
+ createOpts = metav1.CreateOptions {}
40
+ updateOpts = metav1.UpdateOptions {}
41
+ deleteOpts = metav1.DeleteOptions {}
35
42
listOpts = metav1.ListOptions {}
36
- deleteOpts = & metav1.DeleteOptions {}
37
43
operatorClient = ctx .Ctx ().OperatorClient ().OperatorsV2alpha1 ().Operators ()
38
44
kubeClient = ctx .Ctx ().KubeClient ().KubernetesInterface ()
39
45
})
@@ -61,19 +67,19 @@ var _ = Describe("Operator", func() {
61
67
It ("should surface components in its status" , func () {
62
68
o := & operatorsv2alpha1.Operator {}
63
69
o .SetName (genName ("o-" ))
64
- o , err := operatorClient .Create (o )
70
+ o , err := operatorClient .Create (clientCtx , o , createOpts )
65
71
Expect (err ).ToNot (HaveOccurred ())
66
72
67
73
defer func () {
68
- Expect (operatorClient .Delete (o .GetName (), deleteOpts )).To (Succeed ())
74
+ Expect (operatorClient .Delete (clientCtx , o .GetName (), deleteOpts )).To (Succeed ())
69
75
}()
70
76
71
77
By ("eventually having a status that contains its component label selector" )
72
- w , err := operatorClient .Watch (listOpts )
78
+ w , err := operatorClient .Watch (clientCtx , listOpts )
73
79
Expect (err ).ToNot (HaveOccurred ())
74
80
defer w .Stop ()
75
81
76
- deadline , cancel := context .WithTimeout (context . Background () , 1 * time .Minute )
82
+ deadline , cancel := context .WithTimeout (clientCtx , 1 * time .Minute )
77
83
defer cancel ()
78
84
79
85
expectedKey := "operators.coreos.com/" + o .GetName ()
@@ -99,16 +105,16 @@ var _ = Describe("Operator", func() {
99
105
nsB .SetName (genName ("ns-b-" ))
100
106
101
107
for _ , ns := range []* corev1.Namespace {nsA , nsB } {
102
- _ , err := kubeClient .CoreV1 ().Namespaces ().Create (ns )
108
+ _ , err := kubeClient .CoreV1 ().Namespaces ().Create (clientCtx , ns , createOpts )
103
109
Expect (err ).ToNot (HaveOccurred ())
104
110
defer func (name string ) {
105
- kubeClient .CoreV1 ().Namespaces ().Delete (name , deleteOpts )
111
+ kubeClient .CoreV1 ().Namespaces ().Delete (clientCtx , name , deleteOpts )
106
112
}(ns .GetName ())
107
113
}
108
114
109
115
// Label ns-a with o's component label
110
116
nsA .SetLabels (map [string ]string {expectedKey : "" })
111
- _ , err = kubeClient .CoreV1 ().Namespaces ().Update (nsA )
117
+ _ , err = kubeClient .CoreV1 ().Namespaces ().Update (clientCtx , nsA , updateOpts )
112
118
Expect (err ).ToNot (HaveOccurred ())
113
119
114
120
// Ensure o's status.components.refs field eventually contains a reference to ns-a
@@ -124,19 +130,19 @@ var _ = Describe("Operator", func() {
124
130
saB .SetNamespace (nsB .Name )
125
131
126
132
for _ , sa := range []* corev1.ServiceAccount {saA , saB } {
127
- _ , err := kubeClient .CoreV1 ().ServiceAccounts (sa .GetNamespace ()).Create (sa )
133
+ _ , err := kubeClient .CoreV1 ().ServiceAccounts (sa .GetNamespace ()).Create (clientCtx , sa , createOpts )
128
134
Expect (err ).ToNot (HaveOccurred ())
129
135
defer func (namespace , name string ) {
130
- kubeClient .CoreV1 ().ServiceAccounts (namespace ).Delete (name , deleteOpts )
136
+ kubeClient .CoreV1 ().ServiceAccounts (namespace ).Delete (clientCtx , name , deleteOpts )
131
137
}(sa .GetNamespace (), sa .GetName ())
132
138
}
133
139
134
140
// Label sa-a and sa-b with o's component label
135
141
saA .SetLabels (map [string ]string {expectedKey : "" })
136
- _ , err = kubeClient .CoreV1 ().ServiceAccounts (saA .GetNamespace ()).Update (saA )
142
+ _ , err = kubeClient .CoreV1 ().ServiceAccounts (saA .GetNamespace ()).Update (clientCtx , saA , updateOpts )
137
143
Expect (err ).ToNot (HaveOccurred ())
138
144
saB .SetLabels (map [string ]string {expectedKey : "" })
139
- _ , err = kubeClient .CoreV1 ().ServiceAccounts (saB .GetNamespace ()).Update (saB )
145
+ _ , err = kubeClient .CoreV1 ().ServiceAccounts (saB .GetNamespace ()).Update (clientCtx , saB , updateOpts )
140
146
Expect (err ).ToNot (HaveOccurred ())
141
147
142
148
// Ensure o's status.components.refs field eventually contains references to sa-a and sa-b
@@ -146,15 +152,15 @@ var _ = Describe("Operator", func() {
146
152
147
153
// Remove the component label from sa-b
148
154
saB .SetLabels (nil )
149
- _ , err = kubeClient .CoreV1 ().ServiceAccounts (saB .GetNamespace ()).Update (saB )
155
+ _ , err = kubeClient .CoreV1 ().ServiceAccounts (saB .GetNamespace ()).Update (clientCtx , saB , updateOpts )
150
156
Expect (err ).ToNot (HaveOccurred ())
151
157
152
158
// Ensure the reference to sa-b is eventually removed from o's status.components.refs field
153
159
By ("removing a component's reference when it no longer bears the component label" )
154
160
componentRefEventuallyExists (w , false , saB .GetName ())
155
161
156
162
// Delete ns-a
157
- Expect (kubeClient .CoreV1 ().Namespaces ().Delete (nsA .GetName (), deleteOpts )).To (Succeed ())
163
+ Expect (kubeClient .CoreV1 ().Namespaces ().Delete (clientCtx , nsA .GetName (), deleteOpts )).To (Succeed ())
158
164
159
165
// Ensure the reference to ns-a is eventually removed from o's status.components.refs field
160
166
By ("removing a component's reference when it no longer exists" )
0 commit comments