()
| 254 | } |
| 255 | |
| 256 | func GetAPIs() ([]schema.APIResponse, error) { |
| 257 | var deployments []kapps.Deployment |
| 258 | var k8sTaskJobs []kbatch.Job |
| 259 | var taskAPIPods []kcore.Pod |
| 260 | var virtualServices []istioclientnetworking.VirtualService |
| 261 | var batchJobList batch.BatchJobList |
| 262 | |
| 263 | err := parallel.RunFirstErr( |
| 264 | func() error { |
| 265 | var err error |
| 266 | deployments, err = config.K8s.ListDeploymentsWithLabelKeys("apiName") |
| 267 | return err |
| 268 | }, |
| 269 | func() error { |
| 270 | var err error |
| 271 | taskAPIPods, err = config.K8s.ListPodsByLabel("apiKind", userconfig.TaskAPIKind.String()) |
| 272 | return err |
| 273 | }, |
| 274 | func() error { |
| 275 | var err error |
| 276 | k8sTaskJobs, err = config.K8s.ListJobs( |
| 277 | &kmeta.ListOptions{ |
| 278 | LabelSelector: klabels.SelectorFromSet( |
| 279 | map[string]string{ |
| 280 | "apiKind": userconfig.TaskAPIKind.String(), |
| 281 | }, |
| 282 | ).String(), |
| 283 | }, |
| 284 | ) |
| 285 | return err |
| 286 | }, |
| 287 | func() error { |
| 288 | var err error |
| 289 | virtualServices, err = config.K8s.ListVirtualServicesWithLabelKeys("apiName") |
| 290 | return err |
| 291 | }, |
| 292 | func() error { |
| 293 | return config.K8s.List(context.Background(), &batchJobList) |
| 294 | }, |
| 295 | ) |
| 296 | if err != nil { |
| 297 | return nil, err |
| 298 | } |
| 299 | |
| 300 | var realtimeAPIDeployments []kapps.Deployment |
| 301 | var asyncAPIDeployments []kapps.Deployment |
| 302 | for _, deployment := range deployments { |
| 303 | switch deployment.Labels["apiKind"] { |
| 304 | case userconfig.RealtimeAPIKind.String(): |
| 305 | realtimeAPIDeployments = append(realtimeAPIDeployments, deployment) |
| 306 | case userconfig.AsyncAPIKind.String(): |
| 307 | asyncAPIDeployments = append(asyncAPIDeployments, deployment) |
| 308 | } |
| 309 | } |
| 310 | |
| 311 | var batchAPIVirtualServices []istioclientnetworking.VirtualService |
| 312 | var taskAPIVirtualServices []istioclientnetworking.VirtualService |
| 313 | var trafficSplitterVirtualServices []istioclientnetworking.VirtualService |
no test coverage detected