Bug 1465181 - [run-task] Remove requirement to run as root on POSIX systems, r?gps
There is a superficial check in the run-task script which requires root. Simply
removing this check allows a native-engine task (which isn't running as root)
to proceed.
MozReview-Commit-ID: 44XavXAwxxn
--- a/taskcluster/scripts/run-task
+++ b/taskcluster/scripts/run-task
@@ -501,28 +501,23 @@ def main(args):
# expand ~ in some paths
if args.vcs_checkout:
args.vcs_checkout = os.path.expanduser(args.vcs_checkout)
if args.tools_checkout:
args.tools_checkout = os.path.expanduser(args.tools_checkout)
if 'HG_STORE_PATH' in os.environ:
os.environ['HG_STORE_PATH'] = os.path.expanduser(os.environ['HG_STORE_PATH'])
- if IS_POSIX:
- if running_as_root:
- user, group, gids = get_posix_user_group(args.user, args.group)
- uid = user.pw_uid
- gid = group.gr_gid
- else:
- print('error: run-task must be run as root on POSIX platforms')
- return 1
- else:
- uid = gid = gids = None
+ uid = gid = gids = None
+ if IS_POSIX and running_as_root:
+ user, group, gids = get_posix_user_group(args.user, args.group)
+ uid = user.pw_uid
+ gid = group.gr_gid
- if os.path.exists("/dev/kvm"):
+ if running_as_root and os.path.exists("/dev/kvm"):
# Ensure kvm permissions for worker, required for Android x86
st = os.stat("/dev/kvm")
os.chmod("/dev/kvm", st.st_mode | 0o666)
# Validate caches.
#
# Taskgraph should pass in a list of paths that are caches via an
# environment variable (which we don't want to pass down to child