mirror of
https://github.com/k3s-io/kubernetes.git
synced 2025-08-03 17:30:00 +00:00
Merge pull request #40571 from jcbsmpsn/close-watch
Automatic merge from submit-queue Release API watch resources when done.
This commit is contained in:
commit
c84f3abca1
@ -64,12 +64,11 @@ func RequestNodeCertificate(client certificatesclient.CertificateSigningRequestI
|
|||||||
})
|
})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("cannot create certificate signing request: %v", err)
|
return nil, fmt.Errorf("cannot create certificate signing request: %v", err)
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Make a default timeout = 3600s.
|
// Make a default timeout = 3600s.
|
||||||
var defaultTimeoutSeconds int64 = 3600
|
var defaultTimeoutSeconds int64 = 3600
|
||||||
resultCh, err := client.Watch(metav1.ListOptions{
|
certWatch, err := client.Watch(metav1.ListOptions{
|
||||||
Watch: true,
|
Watch: true,
|
||||||
TimeoutSeconds: &defaultTimeoutSeconds,
|
TimeoutSeconds: &defaultTimeoutSeconds,
|
||||||
FieldSelector: fields.OneTermEqualSelector("metadata.name", req.Name).String(),
|
FieldSelector: fields.OneTermEqualSelector("metadata.name", req.Name).String(),
|
||||||
@ -77,9 +76,8 @@ func RequestNodeCertificate(client certificatesclient.CertificateSigningRequestI
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("cannot watch on the certificate signing request: %v", err)
|
return nil, fmt.Errorf("cannot watch on the certificate signing request: %v", err)
|
||||||
}
|
}
|
||||||
|
defer certWatch.Stop()
|
||||||
var status certificates.CertificateSigningRequestStatus
|
ch := certWatch.ResultChan()
|
||||||
ch := resultCh.ResultChan()
|
|
||||||
|
|
||||||
for {
|
for {
|
||||||
event, ok := <-ch
|
event, ok := <-ch
|
||||||
@ -91,7 +89,7 @@ func RequestNodeCertificate(client certificatesclient.CertificateSigningRequestI
|
|||||||
if event.Object.(*certificates.CertificateSigningRequest).UID != req.UID {
|
if event.Object.(*certificates.CertificateSigningRequest).UID != req.UID {
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
status = event.Object.(*certificates.CertificateSigningRequest).Status
|
status := event.Object.(*certificates.CertificateSigningRequest).Status
|
||||||
for _, c := range status.Conditions {
|
for _, c := range status.Conditions {
|
||||||
if c.Type == certificates.CertificateDenied {
|
if c.Type == certificates.CertificateDenied {
|
||||||
return nil, fmt.Errorf("certificate signing request is not approved, reason: %v, message: %v", c.Reason, c.Message)
|
return nil, fmt.Errorf("certificate signing request is not approved, reason: %v, message: %v", c.Reason, c.Message)
|
||||||
|
Loading…
Reference in New Issue
Block a user