From 5a5f0eebf8329e7d730335b2df21fa686f74dc97 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 10:59:43 +0800 Subject: [PATCH 1/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 34 ++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index 957767fe28c..eac3d03c04a 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -68,6 +68,40 @@ func TestRunCgroupV2(t *testing.T) { "cat", "cpu.max", "memory.max", "pids.max", "cpu.weight", "cpuset.cpus", "cpuset.mems").AssertOutExactly(expected) } +func TestRunCgroupV1(t *testing.T) { + t.Parallel() + if cgroups.Mode() != cgroups.Legacy { + t.Skip("test requires cgroup v1") + } + base := testutil.NewBase(t) + info := base.Info() + switch info.CgroupDriver { + case "none", "": + t.Skip("test requires cgroup driver") + } + if !info.MemoryLimit { + t.Skip("test requires MemoryLimit") + } + if !info.CPUShares { + t.Skip("test requires CPUShares") + } + if !info.CPUSet { + t.Skip("test requires CPUSet") + } + if !info.PidsLimit { + t.Skip("test requires PidsLimit") + } + quota := "/sys/fs/cgroup/cpu/cpu.cfs_quota_us" + period := "/sys/fs/cgroup/cpu/cpu.cfs_period_us" + cpuset_mems := "/sys/fs/cgroup/cpuset/cpuset.mems" + memory_limit := "/sys/fs/cgroup/memory/memory.limit_in_bytes" + pids_limit := "/sys/fs/cgroup/pids/pids.max" + cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" + cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" + out_cpus, _ := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) + assert.Equal(c, strings.TrimSpace(out_cpus), "50000\n100000\n0\n44040192\n42\n2000\n0-1\n") +} + func TestRunDevice(t *testing.T) { if os.Geteuid() != 0 || sys.RunningInUserNS() { t.Skip("test requires the root in the initial user namespace") From c7dc58323bf47deb8675f4b8e94acd52a679f976 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 11:18:41 +0800 Subject: [PATCH 2/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index eac3d03c04a..618672235d2 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -99,7 +99,7 @@ func TestRunCgroupV1(t *testing.T) { cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" out_cpus, _ := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) - assert.Equal(c, strings.TrimSpace(out_cpus), "50000\n100000\n0\n44040192\n42\n2000\n0-1\n") + assert.Equal(t, strings.TrimSpace(out_cpus), "50000\n100000\n0\n44040192\n42\n2000\n0-1\n") } func TestRunDevice(t *testing.T) { From d6994f5fcdd6d676c6e35b6ef5d225631ec3c384 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 11:29:19 +0800 Subject: [PATCH 3/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index 618672235d2..f157492a027 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -98,7 +98,7 @@ func TestRunCgroupV1(t *testing.T) { pids_limit := "/sys/fs/cgroup/pids/pids.max" cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" - out_cpus, _ := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) + out_cpus:= base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) assert.Equal(t, strings.TrimSpace(out_cpus), "50000\n100000\n0\n44040192\n42\n2000\n0-1\n") } From f0bab1c9763dc918fa6acfccea3e2dbb5c742e96 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 11:39:29 +0800 Subject: [PATCH 4/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index f157492a027..41a201cfd17 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -19,8 +19,11 @@ package main import ( "bytes" "fmt" + "strings" "os" + "testing" + "github.com/containerd/cgroups" "github.com/containerd/containerd/sys" @@ -98,7 +101,7 @@ func TestRunCgroupV1(t *testing.T) { pids_limit := "/sys/fs/cgroup/pids/pids.max" cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" - out_cpus:= base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) + out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) assert.Equal(t, strings.TrimSpace(out_cpus), "50000\n100000\n0\n44040192\n42\n2000\n0-1\n") } From 4c90f32604d1a032ef1f366e58b5fde141305864 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 12:07:25 +0800 Subject: [PATCH 5/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index 41a201cfd17..4e7d8f438c8 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -19,11 +19,8 @@ package main import ( "bytes" "fmt" - "strings" "os" - "testing" - "github.com/containerd/cgroups" "github.com/containerd/containerd/sys" @@ -101,8 +98,9 @@ func TestRunCgroupV1(t *testing.T) { pids_limit := "/sys/fs/cgroup/pids/pids.max" cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" - out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus) - assert.Equal(t, strings.TrimSpace(out_cpus), "50000\n100000\n0\n44040192\n42\n2000\n0-1\n") + + const expected ="50000\n100000\n0\n44040192\n42\n2000\n0-1\n" + out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).Assert(expected) } func TestRunDevice(t *testing.T) { From 6be7f9b8503f0402940567251d31869f3cdf002c Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 12:20:10 +0800 Subject: [PATCH 6/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index 4e7d8f438c8..6b8f5684cf8 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -99,7 +99,7 @@ func TestRunCgroupV1(t *testing.T) { cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" - const expected ="50000\n100000\n0\n44040192\n42\n2000\n0-1\n" + const expected =`50000\n100000\n0\n44040192\n42\n2000\n0-1\n` out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).Assert(expected) } From c59d74f407934b82f8d4fc9eb21c0d6e8f2a03b8 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 12:30:48 +0800 Subject: [PATCH 7/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index 6b8f5684cf8..e2fe93a8ae3 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -100,7 +100,7 @@ func TestRunCgroupV1(t *testing.T) { cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" const expected =`50000\n100000\n0\n44040192\n42\n2000\n0-1\n` - out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).Assert(expected) + out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).AssertOutExactly(expected) } func TestRunDevice(t *testing.T) { From eb30c3dc1c5d2b3cd51a0bfdb6a07ab7aa7dfa85 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 13:01:02 +0800 Subject: [PATCH 8/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index e2fe93a8ae3..5c5b4913e63 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -99,7 +99,7 @@ func TestRunCgroupV1(t *testing.T) { cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" - const expected =`50000\n100000\n0\n44040192\n42\n2000\n0-1\n` + const expected ="50000\n100000\n0\n44040192\n42\n2000\n0-1\n" out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).AssertOutExactly(expected) } From 734c2ff0288fda0152e8768a042efc8958338d08 Mon Sep 17 00:00:00 2001 From: wuxin66 <434490070@qq.com> Date: Sat, 15 Jan 2022 22:17:56 +0800 Subject: [PATCH 9/9] Update run_cgroup_linux_test.go --- cmd/nerdctl/run_cgroup_linux_test.go | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/cmd/nerdctl/run_cgroup_linux_test.go b/cmd/nerdctl/run_cgroup_linux_test.go index 5c5b4913e63..9b4e63a8bcf 100644 --- a/cmd/nerdctl/run_cgroup_linux_test.go +++ b/cmd/nerdctl/run_cgroup_linux_test.go @@ -99,8 +99,9 @@ func TestRunCgroupV1(t *testing.T) { cpu_share := "/sys/fs/cgroup/cpu/cpu.shares" cpuset_cpus := "/sys/fs/cgroup/cpuset/cpuset.cpus" - const expected ="50000\n100000\n0\n44040192\n42\n2000\n0-1\n" - out_cpus := base.Cmd("run", "--rm", "--cpus", "0.5", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).AssertOutExactly(expected) + const expected = "42000\n100000\n0\n44040192\n42\n2000\n0-1\n" + base.Cmd("run", "--rm", "--cpus", "0.42", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).AssertOutExactly(expected) + base.Cmd("run", "--rm", "--cpu-quota", "42000", "--cpu-period", "100000", "--cpuset-mems", "0", "--memory", "42m", "--pids-limit", "42", "--cpu-shares", "2000", "--cpuset-cpus", "0-1", testutil.AlpineImage, "cat", quota, period, cpuset_mems, memory_limit, pids_limit, cpu_share, cpuset_cpus).AssertOutExactly(expected) } func TestRunDevice(t *testing.T) {