]> git.ipfire.org Git - thirdparty/libcgroup.git/commitdiff
cgroup.py: Add support for cgclear
authorTom Hromatka <tom.hromatka@oracle.com>
Tue, 23 Mar 2021 16:08:26 +0000 (16:08 +0000)
committerTom Hromatka <tom.hromatka@oracle.com>
Tue, 23 Mar 2021 16:58:15 +0000 (16:58 +0000)
Add support for cgclear to the Cgroup class.

Signed-off-by: Tom Hromatka <tom.hromatka@oracle.com>
ftests/cgroup.py

index f5ec2471b344f17573b84becb643b318a6839d48..50a8856fd31785ff29440b7d0e22b5aebbb11dbb 100644 (file)
@@ -628,3 +628,30 @@ class Cgroup(object):
             return Cgroup.__get_controller_mount_point_v2(ctrl_name)
         else:
             raise ValueError("Unsupported cgroup version")
+
+    @staticmethod
+    def clear(config, empty=False, cghelp=False, load_file=None, load_dir=None):
+        cmd = list()
+
+        if not config.args.container:
+            cmd.append('sudo')
+        cmd.append(Cgroup.build_cmd_path('cgclear'))
+
+        if empty:
+            cmd.append('-e')
+
+        if cghelp:
+            cmd.append('-h')
+
+        if load_file is not None:
+            cmd.append('-l')
+            cmd.append(load_file)
+
+        if load_dir is not None:
+            cmd.append('-L')
+            cmd.append(load_dir)
+
+        if config.args.container:
+            return config.container.run(cmd)
+        else:
+            return Run.run(cmd)