Merge pull request #91691 from liggitt/kubectl-csr-v1beta1

Make kubectl tolerate other versions of the CSR API
This commit is contained in:
Kubernetes Prow Robot 2020-06-02 18:12:08 -07:00 committed by GitHub
commit eda662b2fd
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -222,7 +222,7 @@ func (o *CertificateOptions) modifyCertificateCondition(builder *resource.Builde
WithScheme(scheme.Scheme, scheme.Scheme.PrioritizedVersionsAllGroups()...).
ContinueOnError().
FilenameParam(false, &o.FilenameOptions).
ResourceNames("certificatesigningrequest", o.csrNames...).
ResourceNames("certificatesigningrequests.v1beta1.certificates.k8s.io", o.csrNames...).
RequireObject(true).
Flatten().
Latest().
@ -232,7 +232,10 @@ func (o *CertificateOptions) modifyCertificateCondition(builder *resource.Builde
return err
}
for i := 0; ; i++ {
csr := info.Object.(*certificatesv1beta1.CertificateSigningRequest)
csr, ok := info.Object.(*certificatesv1beta1.CertificateSigningRequest)
if !ok {
return fmt.Errorf("can only handle certificates.k8s.io/v1beta1 certificate signing requests")
}
csr, hasCondition := modify(csr)
if !hasCondition || force {
_, err = clientSet.CertificateSigningRequests().UpdateApproval(context.TODO(), csr, metav1.UpdateOptions{})