Skip to content

Commit 5b0629c

Browse files
committed
add context to API calls
1 parent f505b62 commit 5b0629c

File tree

3 files changed

+32
-24
lines changed

3 files changed

+32
-24
lines changed

providers/openshift/provider.go

+16-12
Original file line numberDiff line numberDiff line change
@@ -27,6 +27,7 @@ import (
2727

2828
authenticationv1 "k8s.io/api/authentication/v1"
2929
authorizationv1 "k8s.io/api/authorization/v1"
30+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
3031
"k8s.io/apimachinery/pkg/util/wait"
3132
"k8s.io/apiserver/pkg/authentication/authenticator"
3233
"k8s.io/apiserver/pkg/authorization/authorizer"
@@ -319,11 +320,13 @@ func (p *OpenShiftProvider) Complete(data *providers.ProviderData, reviewURL *ur
319320
// check whether we have access to perform authentication review
320321
if authenticator.TokenAccessReviewClient != nil {
321322
wait.PollImmediate(2*time.Second, 10*time.Second, func() (bool, error) {
322-
_, err := authenticator.TokenAccessReviewClient.Create(&authenticationv1.TokenReview{
323-
Spec: authenticationv1.TokenReviewSpec{
324-
Token: "TEST",
323+
_, err := authenticator.TokenAccessReviewClient.Create(context.TODO(),
324+
&authenticationv1.TokenReview{
325+
Spec: authenticationv1.TokenReviewSpec{
326+
Token: "TEST",
327+
},
325328
},
326-
})
329+
metav1.CreateOptions{})
327330
if err != nil {
328331
log.Printf("unable to retrieve authentication information for tokens: %v", err)
329332
return false, nil
@@ -339,15 +342,16 @@ func (p *OpenShiftProvider) Complete(data *providers.ProviderData, reviewURL *ur
339342
// check whether we have access to perform authentication review
340343
if authorizer.SubjectAccessReviewClient != nil {
341344
wait.PollImmediate(2*time.Second, 10*time.Second, func() (bool, error) {
342-
_, err := authorizer.SubjectAccessReviewClient.Create(&authorizationv1.SubjectAccessReview{
343-
Spec: authorizationv1.SubjectAccessReviewSpec{
344-
User: "TEST",
345-
ResourceAttributes: &authorizationv1.ResourceAttributes{
346-
Resource: "TEST",
347-
Verb: "TEST",
345+
_, err := authorizer.SubjectAccessReviewClient.Create(context.TODO(),
346+
&authorizationv1.SubjectAccessReview{
347+
Spec: authorizationv1.SubjectAccessReviewSpec{
348+
User: "TEST",
349+
ResourceAttributes: &authorizationv1.ResourceAttributes{
350+
Resource: "TEST",
351+
Verb: "TEST",
352+
},
348353
},
349-
},
350-
})
354+
}, metav1.CreateOptions{})
351355
if err != nil {
352356
log.Printf("unable to retrieve authorization information for users: %v", err)
353357
return false, nil

test/e2e/proxy_test.go

+12-9
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@ package e2e
22

33
import (
44
"bytes"
5+
"context"
56
"crypto/tls"
67
"crypto/x509"
78
"fmt"
@@ -21,6 +22,8 @@ import (
2122
)
2223

2324
func TestOAuthProxyE2E(t *testing.T) {
25+
testCtx := context.Background()
26+
2427
ns := os.Getenv("TEST_NAMESPACE")
2528
oauthProxyTests := map[string]struct {
2629
oauthProxyArgs []string
@@ -305,7 +308,7 @@ func TestOAuthProxyE2E(t *testing.T) {
305308
continue
306309
}
307310
t.Run(fmt.Sprintf("setting up e2e tests %s", tcName), func(t *testing.T) {
308-
_, err := kubeClientSet.CoreV1().ServiceAccounts(ns).Create(newOAuthProxySA())
311+
_, err := kubeClientSet.CoreV1().ServiceAccounts(ns).Create(testCtx, newOAuthProxySA(), metav1.CreateOptions{})
309312
if err != nil {
310313
t.Fatalf("setup: error creating SA: %s", err)
311314
}
@@ -333,18 +336,18 @@ func TestOAuthProxyE2E(t *testing.T) {
333336
t.Fatalf("setup: error creating upstream TLS certs: %s", err)
334337
}
335338

336-
_, err = kubeClientSet.CoreV1().Services(ns).Create(newOAuthProxyService())
339+
_, err = kubeClientSet.CoreV1().Services(ns).Create(testCtx, newOAuthProxyService(), metav1.CreateOptions{})
337340
if err != nil {
338341
t.Fatalf("setup: error creating service: %s", err)
339342
}
340343

341344
// configMap provides oauth-proxy with the certificates we created above
342-
_, err = kubeClientSet.CoreV1().ConfigMaps(ns).Create(newOAuthProxyConfigMap(ns, caPem, serviceCert, serviceKey, upstreamCA, upstreamCert, upstreamKey))
345+
_, err = kubeClientSet.CoreV1().ConfigMaps(ns).Create(testCtx, newOAuthProxyConfigMap(ns, caPem, serviceCert, serviceKey, upstreamCA, upstreamCert, upstreamKey), metav1.CreateOptions{})
343346
if err != nil {
344347
t.Fatalf("setup: error creating certificate configMap: %s", err)
345348
}
346349

347-
oauthProxyPod, err := kubeClientSet.CoreV1().Pods(ns).Create(newOAuthProxyPod(image, backendImage, tc.oauthProxyArgs, tc.backendEnvs))
350+
oauthProxyPod, err := kubeClientSet.CoreV1().Pods(ns).Create(testCtx, newOAuthProxyPod(image, backendImage, tc.oauthProxyArgs, tc.backendEnvs), metav1.CreateOptions{})
348351
if err != nil {
349352
t.Fatalf("setup: error creating oauth-proxy pod with image '%s' and args '%v': %s", image, tc.oauthProxyArgs, err)
350353
}
@@ -355,7 +358,7 @@ func TestOAuthProxyE2E(t *testing.T) {
355358
}
356359

357360
// Find the service CA for the client trust store
358-
secrets, err := kubeClientSet.CoreV1().Secrets(ns).List(metav1.ListOptions{})
361+
secrets, err := kubeClientSet.CoreV1().Secrets(ns).List(testCtx, metav1.ListOptions{})
359362
if err != nil {
360363
t.Fatalf("setup: error listing secrets: %s", err)
361364
}
@@ -393,11 +396,11 @@ func TestOAuthProxyE2E(t *testing.T) {
393396
t.Fatalf("skipping cleanup step for test '%s' and stopping on command", tcName)
394397
}
395398
t.Logf("cleaning up test %s", tcName)
396-
kubeClientSet.CoreV1().Pods(ns).Delete("proxy", nil)
397-
kubeClientSet.CoreV1().Services(ns).Delete("proxy", nil)
399+
kubeClientSet.CoreV1().Pods(ns).Delete(testCtx, "proxy", metav1.DeleteOptions{})
400+
kubeClientSet.CoreV1().Services(ns).Delete(testCtx, "proxy", metav1.DeleteOptions{})
398401
deleteTestRoute("proxy-route", ns)
399-
kubeClientSet.CoreV1().ConfigMaps(ns).Delete("proxy-certs", nil)
400-
kubeClientSet.CoreV1().ServiceAccounts(ns).Delete("proxy", nil)
402+
kubeClientSet.CoreV1().ConfigMaps(ns).Delete(testCtx, "proxy-certs", metav1.DeleteOptions{})
403+
kubeClientSet.CoreV1().ServiceAccounts(ns).Delete(testCtx, "proxy", metav1.DeleteOptions{})
401404
waitForPodDeletion(kubeClientSet, oauthProxyPod.Name, ns)
402405
execCmd("oc", []string{"adm", "policy", "remove-role-from-user", "admin", user, "-n", ns}, "")
403406
}()

test/e2e/util.go

+4-3
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ package e2e
33
import (
44
"bufio"
55
"bytes"
6+
"context"
67
"crypto/rand"
78
"crypto/rsa"
89
"crypto/tls"
@@ -22,12 +23,12 @@ import (
2223

2324
"golang.org/x/net/html"
2425

26+
corev1 "k8s.io/api/core/v1"
2527
"k8s.io/apimachinery/pkg/api/errors"
2628
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2729
"k8s.io/apimachinery/pkg/util/intstr"
2830
"k8s.io/apimachinery/pkg/util/wait"
2931
"k8s.io/client-go/kubernetes"
30-
corev1 "k8s.io/api/core/v1"
3132
"k8s.io/client-go/rest"
3233
"k8s.io/client-go/tools/clientcmd"
3334
"k8s.io/client-go/tools/clientcmd/api"
@@ -101,7 +102,7 @@ func waitForHealthzCheck(cas [][]byte, url string) error {
101102

102103
func podDeleted(c kubernetes.Interface, podName, namespace string) wait.ConditionFunc {
103104
return func() (bool, error) {
104-
_, err := c.CoreV1().Pods(namespace).Get(podName, metav1.GetOptions{})
105+
_, err := c.CoreV1().Pods(namespace).Get(context.Background(), podName, metav1.GetOptions{})
105106
if err != nil {
106107
if errors.IsNotFound(err) {
107108
return true, nil
@@ -114,7 +115,7 @@ func podDeleted(c kubernetes.Interface, podName, namespace string) wait.Conditio
114115

115116
func podRunning(c kubernetes.Interface, podName, namespace string) wait.ConditionFunc {
116117
return func() (bool, error) {
117-
pod, err := c.CoreV1().Pods(namespace).Get(podName, metav1.GetOptions{})
118+
pod, err := c.CoreV1().Pods(namespace).Get(context.Background(), podName, metav1.GetOptions{})
118119
if err != nil {
119120
return false, err
120121
}

0 commit comments

Comments
 (0)