Check CRD creation error instead of doing return directly (#897)

This commit is contained in:
Ta-Ching Chen
2018-09-18 16:30:56 +08:00
committed by GitHub
parent 6f60f3eef8
commit a86c9431d3
+4 -7
View File
@@ -38,17 +38,14 @@ func ensureCRD(clientset *apiextensionsclient.Clientset, crd *apiextensionsv1bet
maxRetries := 5 maxRetries := 5
for i := 0; i < maxRetries; i++ { for i := 0; i < maxRetries; i++ {
_, err = clientset.ApiextensionsV1beta1().CustomResourceDefinitions().Get(crd.ObjectMeta.Name, metav1.GetOptions{}) _, err = clientset.ApiextensionsV1beta1().CustomResourceDefinitions().Create(crd)
if err == nil { if err == nil {
return nil return nil
} }
if errors.IsNotFound(err) { // return if the resource already exists
// crd resource not found error if errors.IsAlreadyExists(err) {
_, err = clientset.ApiextensionsV1beta1().CustomResourceDefinitions().Create(crd) return nil
if err != nil {
return err
}
} else { } else {
// The requests fail to connect to k8s api server before // The requests fail to connect to k8s api server before
// istio-prxoy is ready to serve traffic. Retry again. // istio-prxoy is ready to serve traffic. Retry again.