From d83171b1fbbb809f7e5ed0daeed4435132817158 Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Tue, 29 Apr 2025 14:20:22 +0200 Subject: move the get_cgroup utility function into the library --- linuxnamespaces/__init__.py | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'linuxnamespaces/__init__.py') diff --git a/linuxnamespaces/__init__.py b/linuxnamespaces/__init__.py index a2c7985..cd30498 100644 --- a/linuxnamespaces/__init__.py +++ b/linuxnamespaces/__init__.py @@ -367,6 +367,17 @@ def bind_mount( mount(srcloc, tgtloc, None, mflags) +def get_cgroup(pid: int = -1) -> pathlib.PurePath: + """Look up the cgroup that the given pid or the current process belongs + to. + """ + return pathlib.PurePath( + pathlib.Path( + f"/proc/{pid}/cgroup" if pid > 0 else "/proc/self/cgroup" + ).read_text().split(":", 2)[2].strip() + ) + + _P = typing.ParamSpec("_P") class _ExceptionExitCallback: -- cgit v1.2.3