From 490f393fb7147e839c00ae1731f67a04ebc29daa Mon Sep 17 00:00:00 2001 From: Mahmood Ali Date: Mon, 10 May 2021 14:33:47 -0400 Subject: [PATCH] e2e: enable memory oversubscription (#10557) Enable memory oversubscription for the oversubscription tests. --- e2e/oversubscription/oversubscription.go | 27 +++++++++++++++++++++++- 1 file changed, 26 insertions(+), 1 deletion(-) diff --git a/e2e/oversubscription/oversubscription.go b/e2e/oversubscription/oversubscription.go index 6c830cb4d88..e2c082beed3 100644 --- a/e2e/oversubscription/oversubscription.go +++ b/e2e/oversubscription/oversubscription.go @@ -11,7 +11,8 @@ import ( type OversubscriptionTest struct { framework.TC - jobIDs []string + jobIDs []string + initialSchedulerConfig *api.SchedulerConfiguration } func init() { @@ -29,6 +30,30 @@ func (tc *OversubscriptionTest) BeforeAll(f *framework.F) { e2eutil.WaitForLeader(f.T(), tc.Nomad()) e2eutil.WaitForNodesReady(f.T(), tc.Nomad(), 1) + tc.enableMemoryOversubscription(f) +} + +func (tc *OversubscriptionTest) AfterAll(f *framework.F) { + tc.restoreSchedulerConfig(f) +} + +func (tc *OversubscriptionTest) enableMemoryOversubscription(f *framework.F) { + resp, _, err := tc.Nomad().Operator().SchedulerGetConfiguration(nil) + f.NoError(err) + + tc.initialSchedulerConfig = resp.SchedulerConfig + + conf := *resp.SchedulerConfig + conf.MemoryOversubscriptionEnabled = true + _, _, err = tc.Nomad().Operator().SchedulerSetConfiguration(&conf, nil) + f.NoError(err) +} + +func (tc *OversubscriptionTest) restoreSchedulerConfig(f *framework.F) { + if tc.initialSchedulerConfig != nil { + _, _, err := tc.Nomad().Operator().SchedulerSetConfiguration(tc.initialSchedulerConfig, nil) + f.NoError(err) + } } func (tc *OversubscriptionTest) AfterEach(f *framework.F) {