(ctx context.Context, clusterId string, releases []*gateway.DynamicRelease, online bool)
| 230 | } |
| 231 | |
| 232 | func (i *imlBalanceModule) syncGateway(ctx context.Context, clusterId string, releases []*gateway.DynamicRelease, online bool) error { |
| 233 | client, err := i.clusterService.GatewayClient(ctx, clusterId) |
| 234 | if err != nil { |
| 235 | log.Errorf("get apinto client error: %v", err) |
| 236 | return nil |
| 237 | } |
| 238 | defer func() { |
| 239 | err := client.Close(ctx) |
| 240 | if err != nil { |
| 241 | log.Warn("close apinto client:", err) |
| 242 | } |
| 243 | }() |
| 244 | for _, releaseInfo := range releases { |
| 245 | dynamicClient, err := client.Dynamic(releaseInfo.Resource) |
| 246 | if err != nil { |
| 247 | return err |
| 248 | } |
| 249 | if online { |
| 250 | err = dynamicClient.Online(ctx, releaseInfo) |
| 251 | } else { |
| 252 | dynamicClient.Offline(ctx, releaseInfo) |
| 253 | } |
| 254 | if err != nil { |
| 255 | return err |
| 256 | } |
| 257 | } |
| 258 | |
| 259 | return nil |
| 260 | } |
| 261 | |
| 262 | func (i *imlBalanceModule) getLocalBalances(ctx context.Context, v string) ([]*gateway.DynamicRelease, error) { |
| 263 | balances, err := i.balanceService.Search(ctx, "", map[string]interface{}{"provider": ai_provider_local.ProviderLocal}, "priority asc") |
no test coverage detected