...
1
18
19 package faas_openfaas
20
21
22 func GenGetCurrentLoad(host string) (*CurrentLoad, error) {
23 services, _, err := GenFunctionsGet(host)
24 if err != nil {
25 return nil, err
26 }
27
28 replicas := uint(0)
29 avReplicas := uint(0)
30 nServices := uint(0)
31 for _, service := range services {
32 replicas += service.Replicas
33 avReplicas += service.AvailableReplicas
34 nServices += uint(1)
35 }
36
37 load := CurrentLoad{
38 TotalReplicas: replicas,
39 TotalAvailableReplicas: avReplicas,
40 NumberOfServices: nServices,
41 }
42
43 return &load, nil
44 }
45
46 func GenFunctionGetAvailableReplicas(host string, serviceName string) (uint, error) {
47 service, _, err := GenFunctionGet(host, serviceName)
48 if err != nil {
49 return 0, err
50 }
51 return service.AvailableReplicas, nil
52 }
53
54 func GenFunctionGetReplicas(host string, serviceName string) (uint, error) {
55 service, _, err := GenFunctionGet(host, serviceName)
56 if err != nil {
57 return 0, err
58 }
59 return service.Replicas, nil
60 }
61
View as plain text