go.mod: bump dependencies

Signed-off-by: Damien Grisonnet <dgrisonn@redhat.com>
This commit is contained in:
Damien Grisonnet 2021-05-25 18:05:54 +02:00
parent dd7a263002
commit c67e8f5956
6 changed files with 445 additions and 242 deletions

View file

@ -119,10 +119,10 @@ type nsQueryResults struct {
err error
}
// GetContainerMetrics implements the api.MetricsProvider interface. It may return nil, nil, nil.
func (p *resourceProvider) GetContainerMetrics(pods ...apitypes.NamespacedName) ([]api.TimeInfo, [][]metrics.ContainerMetrics) {
// GetPodMetrics implements the api.MetricsProvider interface. It may return nil, nil, nil.
func (p *resourceProvider) GetPodMetrics(pods ...apitypes.NamespacedName) ([]api.TimeInfo, [][]metrics.ContainerMetrics, error) {
if len(pods) == 0 {
return nil, nil
return nil, nil, nil
}
// TODO(directxman12): figure out how well this scales if we go to list 1000+ pods
@ -168,7 +168,7 @@ func (p *resourceProvider) GetContainerMetrics(pods ...apitypes.NamespacedName)
p.assignForPod(pod, resultsByNs, &resMetrics[i], &resTimes[i])
}
return resTimes, resMetrics
return resTimes, resMetrics, nil
}
// assignForPod takes the resource metrics for all containers in the given pod
@ -252,9 +252,9 @@ func (p *resourceProvider) assignForPod(pod apitypes.NamespacedName, resultsByNs
}
// GetNodeMetrics implements the api.MetricsProvider interface. It may return nil, nil.
func (p *resourceProvider) GetNodeMetrics(nodes ...string) ([]api.TimeInfo, []corev1.ResourceList) {
func (p *resourceProvider) GetNodeMetrics(nodes ...string) ([]api.TimeInfo, []corev1.ResourceList, error) {
if len(nodes) == 0 {
return nil, nil
return nil, nil, nil
}
now := pmodel.Now()
@ -263,7 +263,7 @@ func (p *resourceProvider) GetNodeMetrics(nodes ...string) ([]api.TimeInfo, []co
qRes := p.queryBoth(now, nodeResource, "", nodes...)
if qRes.err != nil {
klog.Errorf("failed querying node metrics: %v", qRes.err)
return nil, nil
return nil, nil, nil
}
resTimes := make([]api.TimeInfo, len(nodes))
@ -307,7 +307,7 @@ func (p *resourceProvider) GetNodeMetrics(nodes ...string) ([]api.TimeInfo, []co
}
}
return resTimes, resMetrics
return resTimes, resMetrics, nil
}
// queryBoth queries for both CPU and memory metrics on the given

View file

@ -146,7 +146,8 @@ var _ = Describe("Resource Metrics Provider", func() {
}
By("querying for metrics for some pods")
times, metricVals := prov.GetContainerMetrics(pods...)
times, metricVals, err := prov.GetPodMetrics(pods...)
Expect(err).NotTo(HaveOccurred())
By("verifying that the reported times for each are the earliest times for each pod")
Expect(times).To(Equal([]api.TimeInfo{
@ -184,10 +185,11 @@ var _ = Describe("Resource Metrics Provider", func() {
}
By("querying for metrics for some pods, one of which is missing")
times, metricVals := prov.GetContainerMetrics(
times, metricVals, err := prov.GetPodMetrics(
types.NamespacedName{Namespace: "some-ns", Name: "pod1"},
types.NamespacedName{Namespace: "some-ns", Name: "pod-nonexistant"},
)
Expect(err).NotTo(HaveOccurred())
By("verifying that the missing pod had nil metrics")
Expect(metricVals).To(HaveLen(2))
@ -214,7 +216,8 @@ var _ = Describe("Resource Metrics Provider", func() {
),
}
By("querying for metrics for some nodes")
times, metricVals := prov.GetNodeMetrics("node1", "node2")
times, metricVals, err := prov.GetNodeMetrics("node1", "node2")
Expect(err).NotTo(HaveOccurred())
By("verifying that the reported times for each are the earliest times for each pod")
Expect(times).To(Equal([]api.TimeInfo{
@ -241,7 +244,8 @@ var _ = Describe("Resource Metrics Provider", func() {
),
}
By("querying for metrics for some nodes, one of which is missing")
times, metricVals := prov.GetNodeMetrics("node1", "node2", "node3")
times, metricVals, err := prov.GetNodeMetrics("node1", "node2", "node3")
Expect(err).NotTo(HaveOccurred())
By("verifying that the missing pod had nil metrics")
Expect(metricVals).To(HaveLen(3))