Merge pull request #31391 from ronnielai/container-gc
Automatic merge from submit-queue Avoid disk eviction node e2e test using up all the disk space
This commit is contained in:
@@ -17,7 +17,15 @@ limitations under the License.
|
||||
package e2e_node
|
||||
|
||||
import (
|
||||
"encoding/json"
|
||||
"flag"
|
||||
"io/ioutil"
|
||||
"net/http"
|
||||
"strings"
|
||||
|
||||
"github.com/golang/glog"
|
||||
|
||||
"k8s.io/kubernetes/pkg/kubelet/api/v1alpha1/stats"
|
||||
)
|
||||
|
||||
// TODO(random-liu): Get this automatically from kubelet flag.
|
||||
@@ -25,3 +33,35 @@ var kubeletAddress = flag.String("kubelet-address", "http://127.0.0.1:10255", "H
|
||||
|
||||
var startServices = flag.Bool("start-services", true, "If true, start local node services")
|
||||
var stopServices = flag.Bool("stop-services", true, "If true, stop local node services after running tests")
|
||||
|
||||
func getNodeSummary() (*stats.Summary, error) {
|
||||
req, err := http.NewRequest("GET", *kubeletAddress+"/stats/summary", nil)
|
||||
if err != nil {
|
||||
glog.Warningf("Failed to build http request: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
req.Header.Add("Accept", "application/json")
|
||||
|
||||
client := &http.Client{}
|
||||
resp, err := client.Do(req)
|
||||
if err != nil {
|
||||
glog.Warningf("Failed to get /stats/summary: %v", err)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
defer resp.Body.Close()
|
||||
contentsBytes, err := ioutil.ReadAll(resp.Body)
|
||||
if err != nil {
|
||||
glog.Warningf("Failed to read /stats/summary: %+v", resp)
|
||||
return nil, err
|
||||
}
|
||||
|
||||
decoder := json.NewDecoder(strings.NewReader(string(contentsBytes)))
|
||||
summary := stats.Summary{}
|
||||
err = decoder.Decode(&summary)
|
||||
if err != nil {
|
||||
glog.Warningf("Failed to parse /stats/summary to go struct: %+v", resp)
|
||||
return nil, err
|
||||
}
|
||||
return &summary, nil
|
||||
}
|
||||
|
Reference in New Issue
Block a user