MCPcopy
hub / github.com/cortexlabs/cortex / GetAPIs

Function GetAPIs

pkg/operator/resources/resources.go:256–361  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

254}
255
256func 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

Callers 1

GetAPIsFunction · 0.92

Calls 12

RunFirstErrFunction · 0.92
GetAllAPIsFunction · 0.92
GetAllAPIsFunction · 0.92
GetAllAPIsFunction · 0.92
GetAllAPIsFunction · 0.92
GetAllAPIsFunction · 0.92
ListPodsByLabelMethod · 0.80
ListJobsMethod · 0.80
ListMethod · 0.65
StringMethod · 0.45

Tested by

no test coverage detected