Add support for all of the cgcreate flags.

Signed-off-by: Tom Hromatka <tom.hroma...@oracle.com>
---
 ftests/cgroup.py | 28 ++++++++++++++++++++++++++--
 1 file changed, 26 insertions(+), 2 deletions(-)

diff --git a/ftests/cgroup.py b/ftests/cgroup.py
index 06ca45693ae9..8b8451ef55fb 100644
--- a/ftests/cgroup.py
+++ b/ftests/cgroup.py
@@ -124,9 +124,10 @@ class Cgroup(object):
         return os.path.join(consts.LIBCG_MOUNT_POINT,
                             'src/daemon/{}'.format(cmd))
 
-    # TODO - add support for all of the cgcreate options
     @staticmethod
-    def create(config, controller_list, cgname):
+    def create(config, controller_list, cgname, user_name=None,
+               group_name=None, dperm=None, fperm=None, tperm=None,
+               tasks_user_name=None, tasks_group_name=None, cghelp=False):
         if isinstance(controller_list, str):
             controller_list = [controller_list]
 
@@ -136,6 +137,29 @@ class Cgroup(object):
             cmd.append('sudo')
         cmd.append(Cgroup.build_cmd_path('cgcreate'))
 
+        if user_name is not None and group_name is not None:
+            cmd.append('-a')
+            cmd.append('{}:{}'.format(user_name, group_name))
+
+        if dperm is not None:
+            cmd.append('-d')
+            cmd.append(dperm)
+
+        if fperm is not None:
+            cmd.append('-f')
+            cmd.append(fperm)
+
+        if tperm is not None:
+            cmd.append('-s')
+            cmd.append(tperm)
+
+        if tasks_user_name is not None and taks_group_name is not None:
+            cmd.append('-t')
+            cmd.append('{}:{}'.format(tasks_user_name, tasks_group_name))
+
+        if cghelp:
+            cmd.append('-h')
+
         controllers_and_path = '{}:{}'.format(
             ','.join(controller_list), cgname)
 
-- 
2.31.1



_______________________________________________
Libcg-devel mailing list
Libcg-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/libcg-devel

Reply via email to