From 8f175ec326c526b9b712a7ad86dcddfd44f3b21c Mon Sep 17 00:00:00 2001 From: tangbin Date: Wed, 19 Feb 2020 17:09:53 +0800 Subject: [PATCH] aws listener sync fix --- pkg/multicloud/aws/loadbalancerlistener.go | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkg/multicloud/aws/loadbalancerlistener.go b/pkg/multicloud/aws/loadbalancerlistener.go index 6c50fb593b..4c5b56d2b4 100644 --- a/pkg/multicloud/aws/loadbalancerlistener.go +++ b/pkg/multicloud/aws/loadbalancerlistener.go @@ -691,7 +691,16 @@ func (self *SRegion) SyncElbListener(listener *SElbListener, config *cloudprovid _, err = client.ModifyListener(params) if err != nil { - return err + if strings.Contains(err.Error(), "CertificateNotFound") { + // aws 比较诡异,证书能查询到,但是如果立即创建会报错,这里只能等待一会重试 + time.Sleep(10*time.Second) + _, err = client.ModifyListener(params) + if err != nil { + return errors.Wrap(err, "SRegion.SyncElbListener.ModifyListener.Retry") + } + } + + return errors.Wrap(err, "SRegion.SyncElbListener.ModifyListener") } hc := &cloudprovider.SLoadbalancerHealthCheck{