Skip to content

Commit b30c9a3

Browse files
authored
Merge pull request kubernetes#88929 from liggitt/expansions
client-go: plumb context to expansions methods
2 parents 988982a + d8abacb commit b30c9a3

File tree

24 files changed

+71
-47
lines changed

24 files changed

+71
-47
lines changed

pkg/controller/certificates/approver/sarapprove.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -100,7 +100,7 @@ func (a *sarApprover) handle(csr *capi.CertificateSigningRequest) error {
100100
}
101101
if approved {
102102
appendApprovalCondition(csr, r.successMessage)
103-
_, err = a.client.CertificatesV1beta1().CertificateSigningRequests().UpdateApproval(csr)
103+
_, err = a.client.CertificatesV1beta1().CertificateSigningRequests().UpdateApproval(context.Background(), csr, metav1.UpdateOptions{})
104104
if err != nil {
105105
return fmt.Errorf("error updating approval for csr: %v", err)
106106
}

pkg/controller/certificates/certificate_controller_test.go

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,6 +17,7 @@ limitations under the License.
1717
package certificates
1818

1919
import (
20+
"context"
2021
"testing"
2122
"time"
2223

@@ -47,7 +48,7 @@ func TestCertificateController(t *testing.T) {
4748
Reason: "test reason",
4849
Message: "test message",
4950
})
50-
_, err := client.CertificatesV1beta1().CertificateSigningRequests().UpdateApproval(csr)
51+
_, err := client.CertificatesV1beta1().CertificateSigningRequests().UpdateApproval(context.TODO(), csr, metav1.UpdateOptions{})
5152
if err != nil {
5253
return err
5354
}

pkg/controller/namespace/deletion/namespaced_resources_deleter.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -292,7 +292,7 @@ func (d *namespacedResourcesDeleter) finalizeNamespace(namespace *v1.Namespace)
292292
for _, value := range finalizerSet.List() {
293293
namespaceFinalize.Spec.Finalizers = append(namespaceFinalize.Spec.Finalizers, v1.FinalizerName(value))
294294
}
295-
namespace, err := d.nsClient.Finalize(&namespaceFinalize)
295+
namespace, err := d.nsClient.Finalize(context.Background(), &namespaceFinalize, metav1.UpdateOptions{})
296296
if err != nil {
297297
// it was removed already, so life is good
298298
if errors.IsNotFound(err) {

pkg/scheduler/framework/plugins/defaultbinder/default_binder.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ func (b DefaultBinder) Bind(ctx context.Context, state *framework.CycleState, p
5353
ObjectMeta: metav1.ObjectMeta{Namespace: p.Namespace, Name: p.Name, UID: p.UID},
5454
Target: v1.ObjectReference{Kind: "Node", Name: nodeName},
5555
}
56-
err := b.handle.ClientSet().CoreV1().Pods(binding.Namespace).Bind(binding)
56+
err := b.handle.ClientSet().CoreV1().Pods(binding.Namespace).Bind(context.TODO(), binding, metav1.CreateOptions{})
5757
if err != nil {
5858
return framework.NewStatus(framework.Error, err.Error())
5959
}

staging/src/k8s.io/client-go/kubernetes/typed/certificates/v1beta1/certificatesigningrequest_expansion.go

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,20 +20,23 @@ import (
2020
"context"
2121

2222
certificates "k8s.io/api/certificates/v1beta1"
23+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
24+
scheme "k8s.io/client-go/kubernetes/scheme"
2325
)
2426

2527
type CertificateSigningRequestExpansion interface {
26-
UpdateApproval(certificateSigningRequest *certificates.CertificateSigningRequest) (result *certificates.CertificateSigningRequest, err error)
28+
UpdateApproval(ctx context.Context, certificateSigningRequest *certificates.CertificateSigningRequest, opts metav1.UpdateOptions) (result *certificates.CertificateSigningRequest, err error)
2729
}
2830

29-
func (c *certificateSigningRequests) UpdateApproval(certificateSigningRequest *certificates.CertificateSigningRequest) (result *certificates.CertificateSigningRequest, err error) {
31+
func (c *certificateSigningRequests) UpdateApproval(ctx context.Context, certificateSigningRequest *certificates.CertificateSigningRequest, opts metav1.UpdateOptions) (result *certificates.CertificateSigningRequest, err error) {
3032
result = &certificates.CertificateSigningRequest{}
3133
err = c.client.Put().
3234
Resource("certificatesigningrequests").
3335
Name(certificateSigningRequest.Name).
36+
VersionedParams(&opts, scheme.ParameterCodec).
3437
Body(certificateSigningRequest).
3538
SubResource("approval").
36-
Do(context.TODO()).
39+
Do(ctx).
3740
Into(result)
3841
return
3942
}

staging/src/k8s.io/client-go/kubernetes/typed/certificates/v1beta1/fake/fake_certificatesigningrequest_expansion.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,14 @@ limitations under the License.
1717
package fake
1818

1919
import (
20+
"context"
21+
2022
certificates "k8s.io/api/certificates/v1beta1"
23+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2124
core "k8s.io/client-go/testing"
2225
)
2326

24-
func (c *FakeCertificateSigningRequests) UpdateApproval(certificateSigningRequest *certificates.CertificateSigningRequest) (result *certificates.CertificateSigningRequest, err error) {
27+
func (c *FakeCertificateSigningRequests) UpdateApproval(ctx context.Context, certificateSigningRequest *certificates.CertificateSigningRequest, opts metav1.UpdateOptions) (result *certificates.CertificateSigningRequest, err error) {
2528
obj, err := c.Fake.
2629
Invokes(core.NewRootUpdateSubresourceAction(certificatesigningrequestsResource, "approval", certificateSigningRequest), &certificates.CertificateSigningRequest{})
2730
if obj == nil {

staging/src/k8s.io/client-go/kubernetes/typed/core/v1/fake/fake_namespace_expansion.go

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,11 +17,14 @@ limitations under the License.
1717
package fake
1818

1919
import (
20+
"context"
21+
2022
"k8s.io/api/core/v1"
23+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2124
core "k8s.io/client-go/testing"
2225
)
2326

24-
func (c *FakeNamespaces) Finalize(namespace *v1.Namespace) (*v1.Namespace, error) {
27+
func (c *FakeNamespaces) Finalize(ctx context.Context, namespace *v1.Namespace, opts metav1.UpdateOptions) (*v1.Namespace, error) {
2528
action := core.CreateActionImpl{}
2629
action.Verb = "create"
2730
action.Resource = namespacesResource

staging/src/k8s.io/client-go/kubernetes/typed/core/v1/fake/fake_pod_expansion.go

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -17,13 +17,16 @@ limitations under the License.
1717
package fake
1818

1919
import (
20+
"context"
21+
2022
"k8s.io/api/core/v1"
2123
policy "k8s.io/api/policy/v1beta1"
24+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2225
restclient "k8s.io/client-go/rest"
2326
core "k8s.io/client-go/testing"
2427
)
2528

26-
func (c *FakePods) Bind(binding *v1.Binding) error {
29+
func (c *FakePods) Bind(ctx context.Context, binding *v1.Binding, opts metav1.CreateOptions) error {
2730
action := core.CreateActionImpl{}
2831
action.Verb = "create"
2932
action.Namespace = binding.Namespace
@@ -57,7 +60,7 @@ func (c *FakePods) GetLogs(name string, opts *v1.PodLogOptions) *restclient.Requ
5760
return &restclient.Request{}
5861
}
5962

60-
func (c *FakePods) Evict(eviction *policy.Eviction) error {
63+
func (c *FakePods) Evict(ctx context.Context, eviction *policy.Eviction) error {
6164
action := core.CreateActionImpl{}
6265
action.Verb = "create"
6366
action.Namespace = c.ns

staging/src/k8s.io/client-go/kubernetes/typed/core/v1/namespace_expansion.go

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -20,16 +20,18 @@ import (
2020
"context"
2121

2222
v1 "k8s.io/api/core/v1"
23+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
24+
scheme "k8s.io/client-go/kubernetes/scheme"
2325
)
2426

2527
// The NamespaceExpansion interface allows manually adding extra methods to the NamespaceInterface.
2628
type NamespaceExpansion interface {
27-
Finalize(item *v1.Namespace) (*v1.Namespace, error)
29+
Finalize(ctx context.Context, item *v1.Namespace, opts metav1.UpdateOptions) (*v1.Namespace, error)
2830
}
2931

3032
// Finalize takes the representation of a namespace to update. Returns the server's representation of the namespace, and an error, if it occurs.
31-
func (c *namespaces) Finalize(namespace *v1.Namespace) (result *v1.Namespace, err error) {
33+
func (c *namespaces) Finalize(ctx context.Context, namespace *v1.Namespace, opts metav1.UpdateOptions) (result *v1.Namespace, err error) {
3234
result = &v1.Namespace{}
33-
err = c.client.Put().Resource("namespaces").Name(namespace.Name).SubResource("finalize").Body(namespace).Do(context.TODO()).Into(result)
35+
err = c.client.Put().Resource("namespaces").Name(namespace.Name).VersionedParams(&opts, scheme.ParameterCodec).SubResource("finalize").Body(namespace).Do(ctx).Into(result)
3436
return
3537
}

staging/src/k8s.io/client-go/kubernetes/typed/core/v1/pod_expansion.go

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -21,24 +21,25 @@ import (
2121

2222
v1 "k8s.io/api/core/v1"
2323
policy "k8s.io/api/policy/v1beta1"
24+
metav1 "k8s.io/apimachinery/pkg/apis/meta/v1"
2425
"k8s.io/client-go/kubernetes/scheme"
2526
restclient "k8s.io/client-go/rest"
2627
)
2728

2829
// The PodExpansion interface allows manually adding extra methods to the PodInterface.
2930
type PodExpansion interface {
30-
Bind(binding *v1.Binding) error
31-
Evict(eviction *policy.Eviction) error
31+
Bind(ctx context.Context, binding *v1.Binding, opts metav1.CreateOptions) error
32+
Evict(ctx context.Context, eviction *policy.Eviction) error
3233
GetLogs(name string, opts *v1.PodLogOptions) *restclient.Request
3334
}
3435

3536
// Bind applies the provided binding to the named pod in the current namespace (binding.Namespace is ignored).
36-
func (c *pods) Bind(binding *v1.Binding) error {
37-
return c.client.Post().Namespace(c.ns).Resource("pods").Name(binding.Name).SubResource("binding").Body(binding).Do(context.TODO()).Error()
37+
func (c *pods) Bind(ctx context.Context, binding *v1.Binding, opts metav1.CreateOptions) error {
38+
return c.client.Post().Namespace(c.ns).Resource("pods").Name(binding.Name).VersionedParams(&opts, scheme.ParameterCodec).SubResource("binding").Body(binding).Do(ctx).Error()
3839
}
3940

40-
func (c *pods) Evict(eviction *policy.Eviction) error {
41-
return c.client.Post().Namespace(c.ns).Resource("pods").Name(eviction.Name).SubResource("eviction").Body(eviction).Do(context.TODO()).Error()
41+
func (c *pods) Evict(ctx context.Context, eviction *policy.Eviction) error {
42+
return c.client.Post().Namespace(c.ns).Resource("pods").Name(eviction.Name).SubResource("eviction").Body(eviction).Do(ctx).Error()
4243
}
4344

4445
// Get constructs a request for getting the logs for a pod

0 commit comments

Comments
 (0)