Skip to content

Commit

Permalink
feat(tke-installer): add retry for register apiservices
Browse files Browse the repository at this point in the history
  • Loading branch information
QianChenglong committed Apr 22, 2020
1 parent 2a8c08d commit dc54a05
Showing 1 changed file with 15 additions and 9 deletions.
24 changes: 15 additions & 9 deletions cmd/tke-installer/app/installer/installer.go
Original file line number Diff line number Diff line change
Expand Up @@ -1739,17 +1739,23 @@ func (t *TKE) registerAPI() error {
},
}

_, err := client.ApiregistrationV1().APIServices().Get(apiService.Name, metav1.GetOptions{})
if err == nil {
err := client.ApiregistrationV1().APIServices().Delete(apiService.Name, &metav1.DeleteOptions{})
if err != nil {
return err
err = wait.PollImmediate(5*time.Second, 10*time.Minute, func() (bool, error) {
_, err := client.ApiregistrationV1().APIServices().Get(apiService.Name, metav1.GetOptions{})
if err == nil {
err := client.ApiregistrationV1().APIServices().Delete(apiService.Name, &metav1.DeleteOptions{})
if err != nil {
return false, nil
}
}
}
if _, err := client.ApiregistrationV1().APIServices().Create(apiService); err != nil {
if !errors.IsAlreadyExists(err) {
return err
if _, err := client.ApiregistrationV1().APIServices().Create(apiService); err != nil {
if !errors.IsAlreadyExists(err) {
return false, nil
}
}
return true, nil
})
if err != nil {
return pkgerrors.Wrapf(err, "register apiservice %v error", one)
}

err = wait.PollImmediate(5*time.Second, 10*time.Minute, func() (bool, error) {
Expand Down

0 comments on commit dc54a05

Please sign in to comment.