diff --git a/pkg/controller/podautoscaler/legacy_horizontal_test.go b/pkg/controller/podautoscaler/legacy_horizontal_test.go index 31bcab4af18..6569434e439 100644 --- a/pkg/controller/podautoscaler/legacy_horizontal_test.go +++ b/pkg/controller/podautoscaler/legacy_horizontal_test.go @@ -17,6 +17,7 @@ limitations under the License. package podautoscaler import ( + "context" "encoding/json" "fmt" "io" @@ -55,11 +56,11 @@ import ( _ "k8s.io/kubernetes/pkg/apis/core/install" ) -func (w fakeResponseWrapper) DoRaw() ([]byte, error) { +func (w fakeResponseWrapper) DoRaw(context.Context) ([]byte, error) { return w.raw, nil } -func (w fakeResponseWrapper) Stream() (io.ReadCloser, error) { +func (w fakeResponseWrapper) Stream(context.Context) (io.ReadCloser, error) { return nil, nil } diff --git a/pkg/controller/podautoscaler/metrics/legacy_metrics_client.go b/pkg/controller/podautoscaler/metrics/legacy_metrics_client.go index 33d6046a374..4c901b8664d 100644 --- a/pkg/controller/podautoscaler/metrics/legacy_metrics_client.go +++ b/pkg/controller/podautoscaler/metrics/legacy_metrics_client.go @@ -17,6 +17,7 @@ limitations under the License. package metrics import ( + "context" "encoding/json" "fmt" "strings" @@ -27,7 +28,7 @@ import ( metricsapi "k8s.io/metrics/pkg/apis/metrics/v1alpha1" autoscaling "k8s.io/api/autoscaling/v2beta2" - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" clientset "k8s.io/client-go/kubernetes" @@ -68,7 +69,7 @@ func (h *HeapsterMetricsClient) GetResourceMetric(resource v1.ResourceName, name resultRaw, err := h.services. ProxyGet(h.heapsterScheme, h.heapsterService, h.heapsterPort, metricPath, params). - DoRaw() + DoRaw(context.TODO()) if err != nil { return nil, time.Time{}, fmt.Errorf("failed to get pod resource metrics: %v", err) } @@ -139,7 +140,7 @@ func (h *HeapsterMetricsClient) GetRawMetric(metricName string, namespace string resultRaw, err := h.services. ProxyGet(h.heapsterScheme, h.heapsterService, h.heapsterPort, metricPath, map[string]string{"start": startTime.Format(time.RFC3339)}). - DoRaw() + DoRaw(context.TODO()) if err != nil { return nil, time.Time{}, fmt.Errorf("failed to get pod metrics: %v", err) } diff --git a/pkg/controller/podautoscaler/metrics/legacy_metrics_client_test.go b/pkg/controller/podautoscaler/metrics/legacy_metrics_client_test.go index d9901fae8d9..6ccd51142e8 100644 --- a/pkg/controller/podautoscaler/metrics/legacy_metrics_client_test.go +++ b/pkg/controller/podautoscaler/metrics/legacy_metrics_client_test.go @@ -17,13 +17,14 @@ limitations under the License. package metrics import ( + "context" "encoding/json" "fmt" "io" "testing" "time" - "k8s.io/api/core/v1" + v1 "k8s.io/api/core/v1" "k8s.io/apimachinery/pkg/api/resource" metav1 "k8s.io/apimachinery/pkg/apis/meta/v1" "k8s.io/apimachinery/pkg/labels" @@ -40,11 +41,11 @@ import ( var fixedTimestamp = time.Date(2015, time.November, 10, 12, 30, 0, 0, time.UTC) -func (w fakeResponseWrapper) DoRaw() ([]byte, error) { +func (w fakeResponseWrapper) DoRaw(context.Context) ([]byte, error) { return w.raw, nil } -func (w fakeResponseWrapper) Stream() (io.ReadCloser, error) { +func (w fakeResponseWrapper) Stream(context.Context) (io.ReadCloser, error) { return nil, nil } diff --git a/plugin/pkg/admission/imagepolicy/admission.go b/plugin/pkg/admission/imagepolicy/admission.go index 03d0b6dd317..50921fc8cee 100644 --- a/plugin/pkg/admission/imagepolicy/admission.go +++ b/plugin/pkg/admission/imagepolicy/admission.go @@ -174,7 +174,7 @@ func (a *Plugin) admitPod(ctx context.Context, pod *api.Pod, attributes admissio review.Status = entry.(v1alpha1.ImageReviewStatus) } else { result := a.webhook.WithExponentialBackoff(ctx, func() rest.Result { - return a.webhook.RestClient.Post().Context(ctx).Body(review).Do(context.TODO()) + return a.webhook.RestClient.Post().Body(review).Do(ctx) }) if err := result.Error(); err != nil { diff --git a/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/conversion/webhook_converter.go b/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/conversion/webhook_converter.go index d7302030dbf..0651f411a95 100644 --- a/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/conversion/webhook_converter.go +++ b/staging/src/k8s.io/apiextensions-apiserver/pkg/apiserver/conversion/webhook_converter.go @@ -271,7 +271,7 @@ func (c *webhookConverter) Convert(in runtime.Object, toGV schema.GroupVersion) // TODO: Figure out if adding one second timeout make sense here. ctx := context.TODO() - r := c.restClient.Post().Context(ctx).Body(request).Do(context.TODO()) + r := c.restClient.Post().Body(request).Do(ctx) if err := r.Into(response); err != nil { // TODO: Return a webhook specific error to be able to convert it to meta.Status return nil, fmt.Errorf("conversion webhook for %v failed: %v", in.GetObjectKind().GroupVersionKind(), err) diff --git a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go index 19257ff769a..1d337fb435a 100644 --- a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go +++ b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/mutating/dispatcher.go @@ -236,7 +236,7 @@ func (a *mutatingDispatcher) callAttrMutatingHook(ctx context.Context, h *admiss defer cancel() } - r := client.Post().Context(ctx).Body(request) + r := client.Post().Body(request) // if the context has a deadline, set it as a parameter to inform the backend if deadline, hasDeadline := ctx.Deadline(); hasDeadline { @@ -251,7 +251,7 @@ func (a *mutatingDispatcher) callAttrMutatingHook(ctx context.Context, h *admiss } } - if err := r.Do(context.TODO()).Into(response); err != nil { + if err := r.Do(ctx).Into(response); err != nil { return false, &webhookutil.ErrCallingWebhook{WebhookName: h.Name, Reason: err} } trace.Step("Request completed") diff --git a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go index e0011a29c15..ab6b0392487 100644 --- a/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go +++ b/staging/src/k8s.io/apiserver/pkg/admission/plugin/webhook/validating/dispatcher.go @@ -196,7 +196,7 @@ func (d *validatingDispatcher) callHook(ctx context.Context, h *v1.ValidatingWeb defer cancel() } - r := client.Post().Context(ctx).Body(request) + r := client.Post().Body(request) // if the context has a deadline, set it as a parameter to inform the backend if deadline, hasDeadline := ctx.Deadline(); hasDeadline { @@ -211,7 +211,7 @@ func (d *validatingDispatcher) callHook(ctx context.Context, h *v1.ValidatingWeb } } - if err := r.Do(context.TODO()).Into(response); err != nil { + if err := r.Do(ctx).Into(response); err != nil { return &webhookutil.ErrCallingWebhook{WebhookName: h.Name, Reason: err} } trace.Step("Request completed") diff --git a/staging/src/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook/webhook.go b/staging/src/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook/webhook.go index 0eb56e37fd8..1912959e5ae 100644 --- a/staging/src/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook/webhook.go +++ b/staging/src/k8s.io/apiserver/plugin/pkg/authenticator/token/webhook/webhook.go @@ -198,7 +198,7 @@ type tokenReviewV1Client struct { func (t *tokenReviewV1Client) CreateContext(ctx context.Context, review *authenticationv1.TokenReview) (*authenticationv1.TokenReview, error) { result := &authenticationv1.TokenReview{} - err := t.w.RestClient.Post().Context(ctx).Body(review).Do(context.TODO()).Into(result) + err := t.w.RestClient.Post().Body(review).Do(ctx).Into(result) return result, err } @@ -209,7 +209,7 @@ type tokenReviewV1beta1Client struct { func (t *tokenReviewV1beta1Client) CreateContext(ctx context.Context, review *authenticationv1.TokenReview) (*authenticationv1.TokenReview, error) { v1beta1Review := &authenticationv1beta1.TokenReview{Spec: v1SpecToV1beta1Spec(&review.Spec)} v1beta1Result := &authenticationv1beta1.TokenReview{} - err := t.w.RestClient.Post().Context(ctx).Body(v1beta1Review).Do(context.TODO()).Into(v1beta1Result) + err := t.w.RestClient.Post().Body(v1beta1Review).Do(ctx).Into(v1beta1Result) if err != nil { return nil, err } diff --git a/staging/src/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go b/staging/src/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go index 7a4c5b17202..fecf7aab8e8 100644 --- a/staging/src/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go +++ b/staging/src/k8s.io/apiserver/plugin/pkg/authorizer/webhook/webhook.go @@ -289,7 +289,7 @@ type subjectAccessReviewV1Client struct { func (t *subjectAccessReviewV1Client) CreateContext(ctx context.Context, subjectAccessReview *authorizationv1.SubjectAccessReview) (*authorizationv1.SubjectAccessReview, error) { result := &authorizationv1.SubjectAccessReview{} - err := t.w.RestClient.Post().Context(ctx).Body(subjectAccessReview).Do(context.TODO()).Into(result) + err := t.w.RestClient.Post().Body(subjectAccessReview).Do(ctx).Into(result) return result, err } @@ -300,7 +300,7 @@ type subjectAccessReviewV1beta1Client struct { func (t *subjectAccessReviewV1beta1Client) CreateContext(ctx context.Context, subjectAccessReview *authorizationv1.SubjectAccessReview) (*authorizationv1.SubjectAccessReview, error) { v1beta1Review := &authorizationv1beta1.SubjectAccessReview{Spec: v1SpecToV1beta1Spec(&subjectAccessReview.Spec)} v1beta1Result := &authorizationv1beta1.SubjectAccessReview{} - err := t.w.RestClient.Post().Context(ctx).Body(v1beta1Review).Do(context.TODO()).Into(v1beta1Result) + err := t.w.RestClient.Post().Body(v1beta1Review).Do(ctx).Into(v1beta1Result) if err == nil { subjectAccessReview.Status = v1beta1StatusToV1Status(&v1beta1Result.Status) } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go index 3f6d39a319d..b930d2837f3 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1/tokenreview_expansion.go @@ -34,10 +34,9 @@ func (c *tokenReviews) Create(tokenReview *authenticationapi.TokenReview) (resul func (c *tokenReviews) CreateContext(ctx context.Context, tokenReview *authenticationapi.TokenReview) (result *authenticationapi.TokenReview, err error) { result = &authenticationapi.TokenReview{} err = c.client.Post(). - Context(ctx). Resource("tokenreviews"). Body(tokenReview). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1beta1/tokenreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1beta1/tokenreview_expansion.go index 0a45799e243..624c6156254 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1beta1/tokenreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authentication/v1beta1/tokenreview_expansion.go @@ -34,10 +34,9 @@ func (c *tokenReviews) Create(tokenReview *authenticationapi.TokenReview) (resul func (c *tokenReviews) CreateContext(ctx context.Context, tokenReview *authenticationapi.TokenReview) (result *authenticationapi.TokenReview, err error) { result = &authenticationapi.TokenReview{} err = c.client.Post(). - Context(ctx). Resource("tokenreviews"). Body(tokenReview). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go index 9b8cb28d357..5601c86fdef 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/localsubjectaccessreview_expansion.go @@ -34,11 +34,10 @@ func (c *localSubjectAccessReviews) Create(sar *authorizationapi.LocalSubjectAcc func (c *localSubjectAccessReviews) CreateContext(ctx context.Context, sar *authorizationapi.LocalSubjectAccessReview) (result *authorizationapi.LocalSubjectAccessReview, err error) { result = &authorizationapi.LocalSubjectAccessReview{} err = c.client.Post(). - Context(ctx). Namespace(c.ns). Resource("localsubjectaccessreviews"). Body(sar). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go index 74cb2d4a1fc..62e79366232 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectaccessreview_expansion.go @@ -34,10 +34,9 @@ func (c *selfSubjectAccessReviews) Create(sar *authorizationapi.SelfSubjectAcces func (c *selfSubjectAccessReviews) CreateContext(ctx context.Context, sar *authorizationapi.SelfSubjectAccessReview) (result *authorizationapi.SelfSubjectAccessReview, err error) { result = &authorizationapi.SelfSubjectAccessReview{} err = c.client.Post(). - Context(ctx). Resource("selfsubjectaccessreviews"). Body(sar). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectrulesreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectrulesreview_expansion.go index 4b09b1d68ca..775abaec6ee 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectrulesreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/selfsubjectrulesreview_expansion.go @@ -34,10 +34,9 @@ func (c *selfSubjectRulesReviews) Create(srr *authorizationapi.SelfSubjectRulesR func (c *selfSubjectRulesReviews) CreateContext(ctx context.Context, srr *authorizationapi.SelfSubjectRulesReview) (result *authorizationapi.SelfSubjectRulesReview, err error) { result = &authorizationapi.SelfSubjectRulesReview{} err = c.client.Post(). - Context(ctx). Resource("selfsubjectrulesreviews"). Body(srr). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go index 1e55b880a6b..6a9a8ba9c1b 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1/subjectaccessreview_expansion.go @@ -35,10 +35,9 @@ func (c *subjectAccessReviews) Create(sar *authorizationapi.SubjectAccessReview) func (c *subjectAccessReviews) CreateContext(ctx context.Context, sar *authorizationapi.SubjectAccessReview) (result *authorizationapi.SubjectAccessReview, err error) { result = &authorizationapi.SubjectAccessReview{} err = c.client.Post(). - Context(ctx). Resource("subjectaccessreviews"). Body(sar). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/localsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/localsubjectaccessreview_expansion.go index 9c74505b1d8..86e8acdbe09 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/localsubjectaccessreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/localsubjectaccessreview_expansion.go @@ -34,11 +34,10 @@ func (c *localSubjectAccessReviews) Create(sar *authorizationapi.LocalSubjectAcc func (c *localSubjectAccessReviews) CreateContext(ctx context.Context, sar *authorizationapi.LocalSubjectAccessReview) (result *authorizationapi.LocalSubjectAccessReview, err error) { result = &authorizationapi.LocalSubjectAccessReview{} err = c.client.Post(). - Context(ctx). Namespace(c.ns). Resource("localsubjectaccessreviews"). Body(sar). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectaccessreview_expansion.go index 5c4b36119da..fa717f349ad 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectaccessreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectaccessreview_expansion.go @@ -34,10 +34,9 @@ func (c *selfSubjectAccessReviews) Create(sar *authorizationapi.SelfSubjectAcces func (c *selfSubjectAccessReviews) CreateContext(ctx context.Context, sar *authorizationapi.SelfSubjectAccessReview) (result *authorizationapi.SelfSubjectAccessReview, err error) { result = &authorizationapi.SelfSubjectAccessReview{} err = c.client.Post(). - Context(ctx). Resource("selfsubjectaccessreviews"). Body(sar). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectrulesreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectrulesreview_expansion.go index a8d3a41d1f4..8137e30eac2 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectrulesreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/selfsubjectrulesreview_expansion.go @@ -34,10 +34,9 @@ func (c *selfSubjectRulesReviews) Create(srr *authorizationapi.SelfSubjectRulesR func (c *selfSubjectRulesReviews) CreateContext(ctx context.Context, srr *authorizationapi.SelfSubjectRulesReview) (result *authorizationapi.SelfSubjectRulesReview, err error) { result = &authorizationapi.SelfSubjectRulesReview{} err = c.client.Post(). - Context(ctx). Resource("selfsubjectrulesreviews"). Body(srr). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/subjectaccessreview_expansion.go b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/subjectaccessreview_expansion.go index 69d7b739d96..b5c7e47caca 100644 --- a/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/subjectaccessreview_expansion.go +++ b/staging/src/k8s.io/client-go/kubernetes/typed/authorization/v1beta1/subjectaccessreview_expansion.go @@ -35,10 +35,9 @@ func (c *subjectAccessReviews) Create(sar *authorizationapi.SubjectAccessReview) func (c *subjectAccessReviews) CreateContext(ctx context.Context, sar *authorizationapi.SubjectAccessReview) (result *authorizationapi.SubjectAccessReview, err error) { result = &authorizationapi.SubjectAccessReview{} err = c.client.Post(). - Context(ctx). Resource("subjectaccessreviews"). Body(sar). - Do(context.TODO()). + Do(ctx). Into(result) return } diff --git a/staging/src/k8s.io/client-go/rest/client_test.go b/staging/src/k8s.io/client-go/rest/client_test.go index 997c8d45f87..a30e79e18ca 100644 --- a/staging/src/k8s.io/client-go/rest/client_test.go +++ b/staging/src/k8s.io/client-go/rest/client_test.go @@ -17,6 +17,7 @@ limitations under the License. package rest import ( + "context" "net/http" "net/http/httptest" "net/url" @@ -79,7 +80,7 @@ func TestDoRequestSuccess(t *testing.T) { if err != nil { t.Fatalf("unexpected error: %v", err) } - body, err := c.Get().Prefix("test").Do().Raw() + body, err := c.Get().Prefix("test").Do(context.Background()).Raw() testParam := TestParam{actualError: err, expectingError: false, expCreated: true, expStatus: status, testBody: true, testBodyErrorIsNotNil: false} @@ -107,7 +108,7 @@ func TestDoRequestFailed(t *testing.T) { if err != nil { t.Fatalf("unexpected error: %v", err) } - err = c.Get().Do().Error() + err = c.Get().Do(context.Background()).Error() if err == nil { t.Errorf("unexpected non-error") } @@ -146,7 +147,7 @@ func TestDoRawRequestFailed(t *testing.T) { if err != nil { t.Fatalf("unexpected error: %v", err) } - body, err := c.Get().Do().Raw() + body, err := c.Get().Do(context.Background()).Raw() if err == nil || body == nil { t.Errorf("unexpected non-error: %#v", body) @@ -170,7 +171,7 @@ func TestDoRequestCreated(t *testing.T) { t.Fatalf("unexpected error: %v", err) } created := false - body, err := c.Get().Prefix("test").Do().WasCreated(&created).Raw() + body, err := c.Get().Prefix("test").Do(context.Background()).WasCreated(&created).Raw() testParam := TestParam{actualError: err, expectingError: false, expCreated: true, expStatus: status, testBody: false} @@ -185,7 +186,7 @@ func TestDoRequestNotCreated(t *testing.T) { t.Fatalf("unexpected error: %v", err) } created := false - body, err := c.Get().Prefix("test").Do().WasCreated(&created).Raw() + body, err := c.Get().Prefix("test").Do(context.Background()).WasCreated(&created).Raw() testParam := TestParam{actualError: err, expectingError: false, expCreated: false, expStatus: expectedStatus, testBody: false} validate(testParam, t, body, fakeHandler) @@ -200,7 +201,7 @@ func TestDoRequestAcceptedNoContentReturned(t *testing.T) { t.Fatalf("unexpected error: %v", err) } created := false - body, err := c.Get().Prefix("test").Do().WasCreated(&created).Raw() + body, err := c.Get().Prefix("test").Do(context.Background()).WasCreated(&created).Raw() testParam := TestParam{actualError: err, expectingError: false, expCreated: false, testBody: false} validate(testParam, t, body, fakeHandler) @@ -214,7 +215,7 @@ func TestBadRequest(t *testing.T) { t.Fatalf("unexpected error: %v", err) } created := false - body, err := c.Get().Prefix("test").Do().WasCreated(&created).Raw() + body, err := c.Get().Prefix("test").Do(context.Background()).WasCreated(&created).Raw() testParam := TestParam{actualError: err, expectingError: true, expCreated: false, testBody: true} validate(testParam, t, body, fakeHandler) diff --git a/staging/src/k8s.io/client-go/rest/request_test.go b/staging/src/k8s.io/client-go/rest/request_test.go index 0c8efe66719..5d9fbc4ae99 100644 --- a/staging/src/k8s.io/client-go/rest/request_test.go +++ b/staging/src/k8s.io/client-go/rest/request_test.go @@ -94,9 +94,9 @@ func TestRequestSetsHeaders(t *testing.T) { r.c.Client = server // Check if all "issue" methods are setting headers. - _ = r.Do() - _, _ = r.Watch() - _, _ = r.Stream() + _ = r.Do(context.Background()) + _, _ = r.Watch(context.Background()) + _, _ = r.Stream(context.Background()) } func TestRequestWithErrorWontChange(t *testing.T) { @@ -1059,7 +1059,7 @@ func TestRequestWatch(t *testing.T) { for _, testCase := range testCases { t.Run("", func(t *testing.T) { testCase.Request.backoff = &NoBackoff{} - watch, err := testCase.Request.Watch() + watch, err := testCase.Request.Watch(context.Background()) hasErr := err != nil if hasErr != testCase.Err { t.Fatalf("expected %t, got %t: %v", testCase.Err, hasErr, err) @@ -1162,7 +1162,7 @@ func TestRequestStream(t *testing.T) { } for i, testCase := range testCases { testCase.Request.backoff = &NoBackoff{} - body, err := testCase.Request.Stream() + body, err := testCase.Request.Stream(context.Background()) hasErr := err != nil if hasErr != testCase.Err { t.Errorf("%d: expected %t, got %t: %v", i, testCase.Err, hasErr, err) @@ -1240,7 +1240,7 @@ func TestRequestDo(t *testing.T) { } for i, testCase := range testCases { testCase.Request.backoff = &NoBackoff{} - body, err := testCase.Request.Do().Raw() + body, err := testCase.Request.Do(context.Background()).Raw() hasErr := err != nil if hasErr != testCase.Err { t.Errorf("%d: expected %t, got %t: %v", i, testCase.Err, hasErr, err) @@ -1272,7 +1272,7 @@ func TestDoRequestNewWay(t *testing.T) { Suffix("baz"). Timeout(time.Second). Body([]byte(reqBody)). - Do().Get() + Do(context.Background()).Get() if err != nil { t.Errorf("Unexpected error: %v %#v", err, err) return @@ -1323,7 +1323,7 @@ func TestBackoffLifecycle(t *testing.T) { t.Errorf("Backoff is %v instead of %v", thisBackoff, sec) } now := clock.Now() - request.DoRaw() + request.DoRaw(context.Background()) elapsed := clock.Since(now) if clock.Since(now) != thisBackoff { t.Errorf("CalculatedBackoff not honored by clock: Expected time of %v, but got %v ", thisBackoff, elapsed) @@ -1372,7 +1372,7 @@ func TestCheckRetryClosesBody(t *testing.T) { Suffix("baz"). Timeout(time.Second). Body([]byte(strings.Repeat("abcd", 1000))). - DoRaw() + DoRaw(context.Background()) if err != nil { t.Fatalf("Unexpected error: %v %#v", err, err) } @@ -1405,7 +1405,7 @@ func TestConnectionResetByPeerIsRetried(t *testing.T) { backoff: backoff, } // We expect two retries of "connection reset by peer" and the success. - _, err := req.Do().Raw() + _, err := req.Do(context.Background()).Raw() if err != nil { t.Errorf("Unexpected error: %v", err) } @@ -1445,7 +1445,7 @@ func TestCheckRetryHandles429And5xx(t *testing.T) { Suffix("baz"). Timeout(time.Second). Body([]byte(strings.Repeat("abcd", 1000))). - DoRaw() + DoRaw(context.Background()) if err != nil { t.Fatalf("Unexpected error: %v %#v", err, err) } @@ -1481,7 +1481,7 @@ func BenchmarkCheckRetryClosesBody(b *testing.B) { b.ResetTimer() for i := 0; i < b.N; i++ { - if _, err := requests[i].DoRaw(); err != nil { + if _, err := requests[i].DoRaw(context.Background()); err != nil { b.Fatalf("Unexpected error (%d/%d): %v", i, b.N, err) } } @@ -1510,7 +1510,7 @@ func TestDoRequestNewWayReader(t *testing.T) { Prefix("foo"). Timeout(time.Second). Body(bytes.NewBuffer(reqBodyExpected)). - Do().Get() + Do(context.Background()).Get() if err != nil { t.Errorf("Unexpected error: %v %#v", err, err) return @@ -1549,7 +1549,7 @@ func TestDoRequestNewWayObj(t *testing.T) { Resource("foo"). Timeout(time.Second). Body(reqObj). - Do().Get() + Do(context.Background()).Get() if err != nil { t.Errorf("Unexpected error: %v %#v", err, err) return @@ -1603,7 +1603,7 @@ func TestDoRequestNewWayFile(t *testing.T) { Prefix("foo/bar", "baz"). Timeout(time.Second). Body(file.Name()). - Do().WasCreated(&wasCreated).Get() + Do(context.Background()).WasCreated(&wasCreated).Get() if err != nil { t.Errorf("Unexpected error: %v %#v", err, err) return @@ -1648,7 +1648,7 @@ func TestWasCreated(t *testing.T) { Prefix("foo/bar", "baz"). Timeout(time.Second). Body(reqBodyExpected). - Do().WasCreated(&wasCreated).Get() + Do(context.Background()).WasCreated(&wasCreated).Get() if err != nil { t.Errorf("Unexpected error: %v %#v", err, err) return @@ -1831,7 +1831,7 @@ func TestWatch(t *testing.T) { defer testServer.Close() s := testRESTClient(t, testServer) - watching, err := s.Get().Prefix("path/to/watch/thing").Watch() + watching, err := s.Get().Prefix("path/to/watch/thing").Watch(context.Background()) if err != nil { t.Fatalf("Unexpected error: %v", err) } @@ -1891,7 +1891,7 @@ func TestWatchNonDefaultContentType(t *testing.T) { contentConfig := defaultContentConfig() contentConfig.ContentType = "application/vnd.kubernetes.protobuf" s := testRESTClientWithConfig(t, testServer, contentConfig) - watching, err := s.Get().Prefix("path/to/watch/thing").Watch() + watching, err := s.Get().Prefix("path/to/watch/thing").Watch(context.Background()) if err != nil { t.Fatalf("Unexpected error") } @@ -1948,7 +1948,7 @@ func TestWatchUnknownContentType(t *testing.T) { defer testServer.Close() s := testRESTClient(t, testServer) - _, err := s.Get().Prefix("path/to/watch/thing").Watch() + _, err := s.Get().Prefix("path/to/watch/thing").Watch(context.Background()) if err == nil { t.Fatalf("Expected to fail due to lack of known stream serialization for content type") } @@ -1970,7 +1970,7 @@ func TestStream(t *testing.T) { defer testServer.Close() s := testRESTClient(t, testServer) - readCloser, err := s.Get().Prefix("path/to/stream/thing").Stream() + readCloser, err := s.Get().Prefix("path/to/stream/thing").Stream(context.Background()) if err != nil { t.Fatalf("unexpected error: %v", err) } @@ -2028,9 +2028,8 @@ func TestDoContext(t *testing.T) { c := testRESTClient(t, testServer) _, err := c.Verb("GET"). - Context(ctx). Prefix("foo"). - DoRaw() + DoRaw(ctx) if err == nil { t.Fatal("Expected context cancellation error") } diff --git a/staging/src/k8s.io/kubectl/pkg/cmd/clusterinfo/clusterinfo_dump.go b/staging/src/k8s.io/kubectl/pkg/cmd/clusterinfo/clusterinfo_dump.go index 4c0e2822050..cfe5e81582f 100644 --- a/staging/src/k8s.io/kubectl/pkg/cmd/clusterinfo/clusterinfo_dump.go +++ b/staging/src/k8s.io/kubectl/pkg/cmd/clusterinfo/clusterinfo_dump.go @@ -17,6 +17,7 @@ limitations under the License. package clusterinfo import ( + "context" "fmt" "io" "os" @@ -263,7 +264,7 @@ func (o *ClusterInfoDumpOptions) Run() error { } for _, request := range requests { - data, err := request.DoRaw() + data, err := request.DoRaw(context.TODO()) if err != nil { // Print error and return. writer.Write([]byte(fmt.Sprintf("Request log error: %s\n", err.Error()))) diff --git a/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs.go b/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs.go index 2ec7ffa7746..3953a396a7c 100644 --- a/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs.go +++ b/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs.go @@ -18,6 +18,7 @@ package logs import ( "bufio" + "context" "errors" "fmt" "io" @@ -404,7 +405,7 @@ func (o LogsOptions) addPrefixIfNeeded(ref corev1.ObjectReference, writer io.Wri // Because the function is defined to read from request until io.EOF, it does // not treat an io.EOF as an error to be reported. func DefaultConsumeRequest(request rest.ResponseWrapper, out io.Writer) error { - readCloser, err := request.Stream() + readCloser, err := request.Stream(context.TODO()) if err != nil { return err } diff --git a/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs_test.go b/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs_test.go index cab646de570..93cd13cde51 100644 --- a/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs_test.go +++ b/staging/src/k8s.io/kubectl/pkg/cmd/logs/logs_test.go @@ -18,6 +18,7 @@ package logs import ( "bytes" + "context" "errors" "fmt" "io" @@ -667,12 +668,12 @@ type responseWrapperMock struct { err error } -func (r *responseWrapperMock) DoRaw() ([]byte, error) { +func (r *responseWrapperMock) DoRaw(context.Context) ([]byte, error) { data, _ := ioutil.ReadAll(r.data) return data, r.err } -func (r *responseWrapperMock) Stream() (io.ReadCloser, error) { +func (r *responseWrapperMock) Stream(context.Context) (io.ReadCloser, error) { return ioutil.NopCloser(r.data), r.err } @@ -687,7 +688,7 @@ type logTestMock struct { } func (l *logTestMock) mockConsumeRequest(request restclient.ResponseWrapper, out io.Writer) error { - readCloser, err := request.Stream() + readCloser, err := request.Stream(context.Background()) if err != nil { return err } diff --git a/staging/src/k8s.io/kubectl/pkg/metricsutil/metrics_client.go b/staging/src/k8s.io/kubectl/pkg/metricsutil/metrics_client.go index 73399b233b0..55a596edd4d 100644 --- a/staging/src/k8s.io/kubectl/pkg/metricsutil/metrics_client.go +++ b/staging/src/k8s.io/kubectl/pkg/metricsutil/metrics_client.go @@ -17,6 +17,7 @@ limitations under the License. package metricsutil import ( + "context" "encoding/json" "errors" "fmt" @@ -166,5 +167,5 @@ func (cli *HeapsterMetricsClient) GetPodMetrics(namespace string, podName string func GetHeapsterMetrics(cli *HeapsterMetricsClient, path string, params map[string]string) ([]byte, error) { return cli.SVCClient.Services(cli.HeapsterNamespace). ProxyGet(cli.HeapsterScheme, cli.HeapsterService, cli.HeapsterPort, path, params). - DoRaw() + DoRaw(context.TODO()) } diff --git a/test/e2e/framework/autoscaling/autoscaling_utils.go b/test/e2e/framework/autoscaling/autoscaling_utils.go index d65a53d3f57..da152b88242 100644 --- a/test/e2e/framework/autoscaling/autoscaling_utils.go +++ b/test/e2e/framework/autoscaling/autoscaling_utils.go @@ -247,14 +247,13 @@ func (rc *ResourceConsumer) sendConsumeCPURequest(millicores int) { proxyRequest, err := e2eservice.GetServicesProxyRequest(rc.clientSet, rc.clientSet.CoreV1().RESTClient().Post()) framework.ExpectNoError(err) req := proxyRequest.Namespace(rc.nsName). - Context(ctx). Name(rc.controllerName). Suffix("ConsumeCPU"). Param("millicores", strconv.Itoa(millicores)). Param("durationSec", strconv.Itoa(rc.consumptionTimeInSeconds)). Param("requestSizeMillicores", strconv.Itoa(rc.requestSizeInMillicores)) framework.Logf("ConsumeCPU URL: %v", *req.URL()) - _, err = req.DoRaw(context.TODO()) + _, err = req.DoRaw(ctx) if err != nil { framework.Logf("ConsumeCPU failure: %v", err) return false, nil @@ -274,14 +273,13 @@ func (rc *ResourceConsumer) sendConsumeMemRequest(megabytes int) { proxyRequest, err := e2eservice.GetServicesProxyRequest(rc.clientSet, rc.clientSet.CoreV1().RESTClient().Post()) framework.ExpectNoError(err) req := proxyRequest.Namespace(rc.nsName). - Context(ctx). Name(rc.controllerName). Suffix("ConsumeMem"). Param("megabytes", strconv.Itoa(megabytes)). Param("durationSec", strconv.Itoa(rc.consumptionTimeInSeconds)). Param("requestSizeMegabytes", strconv.Itoa(rc.requestSizeInMegabytes)) framework.Logf("ConsumeMem URL: %v", *req.URL()) - _, err = req.DoRaw(context.TODO()) + _, err = req.DoRaw(ctx) if err != nil { framework.Logf("ConsumeMem failure: %v", err) return false, nil @@ -301,7 +299,6 @@ func (rc *ResourceConsumer) sendConsumeCustomMetric(delta int) { proxyRequest, err := e2eservice.GetServicesProxyRequest(rc.clientSet, rc.clientSet.CoreV1().RESTClient().Post()) framework.ExpectNoError(err) req := proxyRequest.Namespace(rc.nsName). - Context(ctx). Name(rc.controllerName). Suffix("BumpMetric"). Param("metric", customMetricName). @@ -309,7 +306,7 @@ func (rc *ResourceConsumer) sendConsumeCustomMetric(delta int) { Param("durationSec", strconv.Itoa(rc.consumptionTimeInSeconds)). Param("requestSizeMetrics", strconv.Itoa(rc.requestSizeCustomMetric)) framework.Logf("ConsumeCustomMetric URL: %v", *req.URL()) - _, err = req.DoRaw(context.TODO()) + _, err = req.DoRaw(ctx) if err != nil { framework.Logf("ConsumeCustomMetric failure: %v", err) return false, nil diff --git a/test/e2e/framework/kubelet/stats.go b/test/e2e/framework/kubelet/stats.go index 2158e28ef1c..fb5a1879df2 100644 --- a/test/e2e/framework/kubelet/stats.go +++ b/test/e2e/framework/kubelet/stats.go @@ -220,12 +220,11 @@ func GetStatsSummary(c clientset.Interface, nodeName string) (*kubeletstatsv1alp defer cancel() data, err := c.CoreV1().RESTClient().Get(). - Context(ctx). Resource("nodes"). SubResource("proxy"). Name(fmt.Sprintf("%v:%v", nodeName, ports.KubeletPort)). Suffix("stats/summary"). - Do(context.TODO()).Raw() + Do(ctx).Raw() if err != nil { return nil, err diff --git a/test/e2e/framework/pod/resource.go b/test/e2e/framework/pod/resource.go index 032aaf05779..bdf72aec5a7 100644 --- a/test/e2e/framework/pod/resource.go +++ b/test/e2e/framework/pod/resource.go @@ -98,12 +98,11 @@ func (r ProxyResponseChecker) CheckAllResponses() (done bool, err error) { defer cancel() body, err := r.c.CoreV1().RESTClient().Get(). - Context(ctx). Namespace(r.ns). Resource("pods"). SubResource("proxy"). Name(string(pod.Name)). - Do(context.TODO()). + Do(ctx). Raw() if err != nil { diff --git a/test/e2e/framework/podlogs/podlogs.go b/test/e2e/framework/podlogs/podlogs.go index 2cf6014e0a8..039ea50455d 100644 --- a/test/e2e/framework/podlogs/podlogs.go +++ b/test/e2e/framework/podlogs/podlogs.go @@ -47,8 +47,7 @@ import ( // rpc error: code = Unknown desc = Error: No such container: 41a... // when the pod gets deleted while streaming. func LogsForPod(ctx context.Context, cs clientset.Interface, ns, pod string, opts *v1.PodLogOptions) (io.ReadCloser, error) { - req := cs.CoreV1().Pods(ns).GetLogs(pod, opts) - return req.Context(ctx).Stream(context.TODO()) + return cs.CoreV1().Pods(ns).GetLogs(pod, opts).Stream(ctx) } // LogOutput determines where output from CopyAllLogs goes. diff --git a/test/e2e/framework/resource_usage_gatherer.go b/test/e2e/framework/resource_usage_gatherer.go index dea5c7497b8..eabc38b5cde 100644 --- a/test/e2e/framework/resource_usage_gatherer.go +++ b/test/e2e/framework/resource_usage_gatherer.go @@ -294,12 +294,11 @@ func getStatsSummary(c clientset.Interface, nodeName string) (*kubeletstatsv1alp defer cancel() data, err := c.CoreV1().RESTClient().Get(). - Context(ctx). Resource("nodes"). SubResource("proxy"). Name(fmt.Sprintf("%v:%v", nodeName, ports.KubeletPort)). Suffix("stats/summary"). - Do(context.TODO()).Raw() + Do(ctx).Raw() if err != nil { return nil, err diff --git a/test/e2e/instrumentation/logging/elasticsearch/kibana.go b/test/e2e/instrumentation/logging/elasticsearch/kibana.go index 85fb0551a64..4e598a58768 100644 --- a/test/e2e/instrumentation/logging/elasticsearch/kibana.go +++ b/test/e2e/instrumentation/logging/elasticsearch/kibana.go @@ -94,9 +94,8 @@ func ClusterLevelLoggingWithKibana(f *framework.Framework) { defer cancel() _, err = req.Namespace(metav1.NamespaceSystem). - Context(ctx). Name("kibana-logging"). - DoRaw(context.TODO()) + DoRaw(ctx) if err != nil { framework.Logf("Proxy call to kibana-logging failed: %v", err) return false, nil diff --git a/test/e2e/kubectl/kubectl.go b/test/e2e/kubectl/kubectl.go index ebf75c5adaa..cd61bdee059 100644 --- a/test/e2e/kubectl/kubectl.go +++ b/test/e2e/kubectl/kubectl.go @@ -2368,13 +2368,12 @@ func makeRequestToGuestbook(c clientset.Interface, cmd, value string, ns string) defer cancel() result, err := proxyRequest.Namespace(ns). - Context(ctx). Name("frontend"). Suffix("/guestbook"). Param("cmd", cmd). Param("key", "messages"). Param("value", value). - Do(context.TODO()). + Do(ctx). Raw() return string(result), err } diff --git a/test/e2e/network/dns_common.go b/test/e2e/network/dns_common.go index d0fd94f7fd7..3f10b440542 100644 --- a/test/e2e/network/dns_common.go +++ b/test/e2e/network/dns_common.go @@ -528,13 +528,12 @@ func assertFilesContain(fileNames []string, fileDir string, pod *v1.Pod, client for _, fileName := range fileNames { contents, err := client.CoreV1().RESTClient().Get(). - Context(ctx). Namespace(pod.Namespace). Resource("pods"). SubResource("proxy"). Name(pod.Name). Suffix(fileDir, fileName). - Do(context.TODO()).Raw() + Do(ctx).Raw() if err != nil { if ctx.Err() != nil { diff --git a/test/e2e/network/example_cluster_dns.go b/test/e2e/network/example_cluster_dns.go index 01a7f97abc0..04358a6e198 100644 --- a/test/e2e/network/example_cluster_dns.go +++ b/test/e2e/network/example_cluster_dns.go @@ -193,9 +193,8 @@ func waitForServiceResponding(c clientset.Interface, ns, name string) error { defer cancel() body, err := proxyRequest.Namespace(ns). - Context(ctx). Name(name). - Do(context.TODO()). + Do(ctx). Raw() if err != nil { if ctx.Err() != nil { diff --git a/test/e2e/node/pre_stop.go b/test/e2e/node/pre_stop.go index fe08102560b..f7c60c94654 100644 --- a/test/e2e/node/pre_stop.go +++ b/test/e2e/node/pre_stop.go @@ -135,13 +135,12 @@ func testPreStop(c clientset.Interface, ns string) { var body []byte body, err = c.CoreV1().RESTClient().Get(). - Context(ctx). Namespace(ns). Resource("pods"). SubResource("proxy"). Name(podDescr.Name). Suffix("read"). - DoRaw(context.TODO()) + DoRaw(ctx) if err != nil { if ctx.Err() != nil { diff --git a/test/e2e/ui/dashboard.go b/test/e2e/ui/dashboard.go index 5bc67b72eaa..e81c7b68b0f 100644 --- a/test/e2e/ui/dashboard.go +++ b/test/e2e/ui/dashboard.go @@ -72,10 +72,9 @@ var _ = SIGDescribe("Kubernetes Dashboard [Feature:Dashboard]", func() { // Query against the proxy URL for the kubernetes-dashboard service. err := proxyRequest.Namespace(uiNamespace). - Context(ctx). Name(utilnet.JoinSchemeNamePort("https", uiServiceName, "")). Timeout(framework.SingleCallTimeout). - Do(context.TODO()). + Do(ctx). StatusCode(&status). Error() if err != nil {