mirror of
https://github.com/certimate-go/certimate.git
synced 2026-09-24 23:10:13 +08:00
fix: #861
This commit is contained in:
@@ -300,6 +300,33 @@ func (d *SSLDeployerProvider) deployToRuleDomain(ctx context.Context, cloudCertI
|
||||
return fmt.Errorf("failed to execute sdk request 'clb.ModifyDomainAttributes': %w", err)
|
||||
}
|
||||
|
||||
// 循环查询异步任务状态,等待任务状态变更
|
||||
// REF: https://cloud.tencent.com/document/product/214/30683
|
||||
for {
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
return ctx.Err()
|
||||
default:
|
||||
}
|
||||
|
||||
describeTaskStatusReq := tcclb.NewDescribeTaskStatusRequest()
|
||||
describeTaskStatusReq.TaskId = modifyDomainAttributesResp.Response.RequestId
|
||||
describeTaskStatusResp, err := d.sdkClients.CLB.DescribeTaskStatus(describeTaskStatusReq)
|
||||
d.logger.Debug("sdk request 'clb.DescribeTaskStatus'", slog.Any("request", describeTaskStatusReq), slog.Any("response", describeTaskStatusResp))
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to execute sdk request 'clb.DescribeTaskStatus': %w", err)
|
||||
}
|
||||
|
||||
if describeTaskStatusResp.Response.Status == nil || *describeTaskStatusResp.Response.Status == 1 {
|
||||
return errors.New("unexpected task status")
|
||||
} else if *describeTaskStatusResp.Response.Status == 0 {
|
||||
break
|
||||
}
|
||||
|
||||
d.logger.Info("waiting for task completion ...")
|
||||
time.Sleep(time.Second * 5)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
@@ -335,6 +362,33 @@ func (d *SSLDeployerProvider) modifyListenerCertificate(ctx context.Context, clo
|
||||
return fmt.Errorf("failed to execute sdk request 'clb.ModifyListener': %w", err)
|
||||
}
|
||||
|
||||
// 循环查询异步任务状态,等待任务状态变更
|
||||
// REF: https://cloud.tencent.com/document/product/214/30683
|
||||
for {
|
||||
select {
|
||||
case <-ctx.Done():
|
||||
return ctx.Err()
|
||||
default:
|
||||
}
|
||||
|
||||
describeTaskStatusReq := tcclb.NewDescribeTaskStatusRequest()
|
||||
describeTaskStatusReq.TaskId = modifyListenerResp.Response.RequestId
|
||||
describeTaskStatusResp, err := d.sdkClients.CLB.DescribeTaskStatus(describeTaskStatusReq)
|
||||
d.logger.Debug("sdk request 'clb.DescribeTaskStatus'", slog.Any("request", describeTaskStatusReq), slog.Any("response", describeTaskStatusResp))
|
||||
if err != nil {
|
||||
return fmt.Errorf("failed to execute sdk request 'clb.DescribeTaskStatus': %w", err)
|
||||
}
|
||||
|
||||
if describeTaskStatusResp.Response.Status == nil || *describeTaskStatusResp.Response.Status == 1 {
|
||||
return errors.New("unexpected task status")
|
||||
} else if *describeTaskStatusResp.Response.Status == 0 {
|
||||
break
|
||||
}
|
||||
|
||||
d.logger.Info("waiting for task completion ...")
|
||||
time.Sleep(time.Second * 5)
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user