From 5507477cb8ceb9cfcfd4afb9ec8ef6976c146a93 Mon Sep 17 00:00:00 2001 From: Tristan Cacqueray Date: Feb 14 2022 20:51:19 +0000 Subject: Skip sudo on rootless system This change looks for available userns to use rootless container. --- diff --git a/k1s/api.py b/k1s/api.py index 31d39a2..f90ca64 100644 --- a/k1s/api.py +++ b/k1s/api.py @@ -34,7 +34,18 @@ NsEnter = ["nsenter"] TZFormat = "%Y-%m-%dT%H:%M:%S" -if os.getuid(): +def has_rootless() -> bool: + try: + return open("/proc/sys/user/max_user_namespaces").read().strip() != "0" + except: + return False + + +def is_user() -> bool: + return os.getuid() != 0 + + +if is_user() and not has_rootless(): Podman.insert(0, "sudo") NsEnter.insert(0, "sudo")