2 # Copyright (C) The Arvados Authors. All rights reserved.
4 # SPDX-License-Identifier: AGPL-3.0
8 if ! grep "^arvbox:" /etc/passwd >/dev/null 2>/dev/null ; then
9 HOSTUID=$(ls -nd /usr/src/arvados | sed 's/ */ /' | cut -d' ' -f4)
10 HOSTGID=$(ls -nd /usr/src/arvados | sed 's/ */ /' | cut -d' ' -f5)
12 mkdir -p /var/lib/arvados/git /var/lib/gems \
13 /var/lib/passenger /var/lib/gopath \
14 /var/lib/pip /var/lib/npm
16 groupadd --gid $HOSTGID --non-unique arvbox
17 groupadd --gid $HOSTGID --non-unique git
18 useradd --home-dir /var/lib/arvados \
19 --uid $HOSTUID --gid $HOSTGID \
23 useradd --home-dir /var/lib/arvados/git --uid $HOSTUID --gid $HOSTGID --non-unique git
24 useradd --groups docker crunch
26 chown arvbox:arvbox -R /usr/local /var/lib/arvados /var/lib/gems \
27 /var/lib/passenger /var/lib/postgresql \
28 /var/lib/nginx /var/log/nginx /etc/ssl/private \
29 /var/lib/gopath /var/lib/pip /var/lib/npm
31 mkdir -p /var/lib/gems/ruby
32 chown arvbox:arvbox -R /var/lib/gems/ruby
34 mkdir -p /tmp/crunch0 /tmp/crunch1
35 chown crunch:crunch -R /tmp/crunch0 /tmp/crunch1
37 echo "arvbox ALL=(crunch) NOPASSWD: ALL" >> /etc/sudoers
40 if ! grep "^fuse:" /etc/group >/dev/null 2>/dev/null ; then
41 if test -c /dev/fuse ; then
42 FUSEGID=$(ls -nd /dev/fuse | sed 's/ */ /' | cut -d' ' -f5)
43 groupadd --gid $FUSEGID --non-unique fuse