mirror of
https://gitee.com/XM-GO/PandaX.git
synced 2026-04-24 03:18:35 +08:00
【修改】k8s 配置
This commit is contained in:
53
apps/devops/services/k8s/common/podinfo.go
Normal file
53
apps/devops/services/k8s/common/podinfo.go
Normal file
@@ -0,0 +1,53 @@
|
||||
package common
|
||||
|
||||
import (
|
||||
api "k8s.io/api/core/v1"
|
||||
)
|
||||
|
||||
// PodInfo represents aggregate information about controller's pods.
|
||||
type PodInfo struct {
|
||||
// Number of pods that are created.
|
||||
Current int32 `json:"current"`
|
||||
|
||||
// Number of pods that are desired.
|
||||
Desired *int32 `json:"desired,omitempty"`
|
||||
|
||||
// Number of pods that are currently running.
|
||||
Running int32 `json:"running"`
|
||||
|
||||
// Number of pods that are currently waiting.
|
||||
Pending int32 `json:"pending"`
|
||||
|
||||
// Number of pods that are failed.
|
||||
Failed int32 `json:"failed"`
|
||||
|
||||
// Number of pods that are succeeded.
|
||||
Succeeded int32 `json:"succeeded"`
|
||||
|
||||
// Unique warning messages related to pods in this resource.
|
||||
Warnings []Event `json:"warnings"`
|
||||
}
|
||||
|
||||
// GetPodInfo returns aggregate information about a group of pods.
|
||||
func GetPodInfo(current int32, desired *int32, pods []api.Pod) PodInfo {
|
||||
result := PodInfo{
|
||||
Current: current,
|
||||
Desired: desired,
|
||||
Warnings: make([]Event, 0),
|
||||
}
|
||||
|
||||
for _, pod := range pods {
|
||||
switch pod.Status.Phase {
|
||||
case api.PodRunning:
|
||||
result.Running++
|
||||
case api.PodPending:
|
||||
result.Pending++
|
||||
case api.PodFailed:
|
||||
result.Failed++
|
||||
case api.PodSucceeded:
|
||||
result.Succeeded++
|
||||
}
|
||||
}
|
||||
|
||||
return result
|
||||
}
|
||||
Reference in New Issue
Block a user