Merge pull request #640 from Garrybest/pr_cleanup

reuse AddPodRequest in detector.go
This commit is contained in:
karmada-bot 2021-08-23 09:52:38 +08:00 committed by GitHub
commit 51233e5408
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 8 additions and 18 deletions

View File

@ -510,7 +510,7 @@ func getAllocatingResource(podList []*corev1.Pod) corev1.ResourceList {
allocating := util.EmptyResource()
for _, pod := range podList {
if len(pod.Spec.NodeName) == 0 {
allocating.AddPodRequest(pod)
allocating.AddPodRequest(&pod.Spec)
}
}
@ -522,7 +522,7 @@ func getAllocatedResource(podList []*corev1.Pod) corev1.ResourceList {
for _, pod := range podList {
// When the phase of a pod is Succeeded or Failed, kube-scheduler would not consider its resource occupation.
if len(pod.Spec.NodeName) != 0 && pod.Status.Phase != corev1.PodSucceeded && pod.Status.Phase != corev1.PodFailed {
allocated.AddPodRequest(pod)
allocated.AddPodRequest(&pod.Spec)
}
}

View File

@ -672,22 +672,11 @@ func (d *ResourceDetector) getReplicaResourceRequirements(object map[string]inte
if err != nil {
return nil, err
}
resPtr := d.calculateResource(&podTemplateSpec.Spec)
replicaResourceRequirements := resPtr.ResourceList()
res := util.EmptyResource().AddPodRequest(&podTemplateSpec.Spec)
replicaResourceRequirements := res.ResourceList()
return replicaResourceRequirements, nil
}
func (d *ResourceDetector) calculateResource(podSpec *corev1.PodSpec) (res util.Resource) {
resPtr := &res
for _, c := range podSpec.Containers {
resPtr.Add(c.Resources.Requests)
}
for _, c := range podSpec.InitContainers {
resPtr.SetMaxResource(c.Resources.Requests)
}
return
}
// AddWaiting adds object's key to waiting list.
func (d *ResourceDetector) AddWaiting(objectKey keys.ClusterWideKey) {
d.waitingLock.Lock()

View File

@ -102,11 +102,12 @@ func (r *Resource) ResourceList() corev1.ResourceList {
// - the sum of all app containers(spec.Containers) request for a resource.
// - the effective init containers(spec.InitContainers) request for a resource.
// The effective init containers request is the highest request on all init containers.
func (r *Resource) AddPodRequest(pod *corev1.Pod) {
for _, container := range pod.Spec.Containers {
func (r *Resource) AddPodRequest(podSpec *corev1.PodSpec) *Resource {
for _, container := range podSpec.Containers {
r.Add(container.Resources.Requests)
}
for _, container := range pod.Spec.InitContainers {
for _, container := range podSpec.InitContainers {
r.SetMaxResource(container.Resources.Requests)
}
return r
}