chore: build
This commit is contained in:
@@ -1451,6 +1451,28 @@ func componentKey(podName string) string {
|
||||
}
|
||||
}
|
||||
|
||||
// podUsage : usage CPU (millicores) et mémoire (Mi) de chaque pod du namespace,
|
||||
// par nom de pod. Best-effort : sans metrics-server la map est vide.
|
||||
func (h *HelmProvisioner) podUsage(ctx context.Context, namespace string) map[string][2]int64 {
|
||||
usage := map[string][2]int64{} // pod name -> [cpuMilli, memMi]
|
||||
if h.metricsClient == nil {
|
||||
return usage
|
||||
}
|
||||
list, err := h.metricsClient.MetricsV1beta1().PodMetricses(namespace).List(ctx, metav1.ListOptions{})
|
||||
if err != nil {
|
||||
return usage
|
||||
}
|
||||
for _, m := range list.Items {
|
||||
var cpu, mem int64
|
||||
for _, c := range m.Containers {
|
||||
cpu += c.Usage.Cpu().MilliValue()
|
||||
mem += c.Usage.Memory().Value() / (1024 * 1024)
|
||||
}
|
||||
usage[m.Name] = [2]int64{cpu, mem}
|
||||
}
|
||||
return usage
|
||||
}
|
||||
|
||||
// GetResourceState : phase + usage CPU/mémoire live de chaque pod d'une démo.
|
||||
// L'usage (metrics-server) est best-effort : s'il est indisponible, seule la
|
||||
// phase du pod est renseignée plutôt que de faire échouer tout l'appel.
|
||||
@@ -1467,19 +1489,7 @@ func (h *HelmProvisioner) GetResourceState(
|
||||
return ResourceState{}, err
|
||||
}
|
||||
|
||||
usage := map[string][2]int64{} // pod name -> [cpuMilli, memMi]
|
||||
if h.metricsClient != nil {
|
||||
if list, err := h.metricsClient.MetricsV1beta1().PodMetricses(namespace).List(ctx, metav1.ListOptions{}); err == nil {
|
||||
for _, m := range list.Items {
|
||||
var cpu, mem int64
|
||||
for _, c := range m.Containers {
|
||||
cpu += c.Usage.Cpu().MilliValue()
|
||||
mem += c.Usage.Memory().Value() / (1024 * 1024)
|
||||
}
|
||||
usage[m.Name] = [2]int64{cpu, mem}
|
||||
}
|
||||
}
|
||||
}
|
||||
usage := h.podUsage(ctx, namespace)
|
||||
|
||||
var state ResourceState
|
||||
|
||||
|
||||
Reference in New Issue
Block a user