Add 'tools/arvbox/' from commit 'd3d368758db1f4a9fa5b89f77b5ee61d68ef5b72'
[arvados.git] / tools / arvbox / lib / arvbox / docker / common.sh
1
2 if test -s /var/run/localip_override ; then
3     localip=$(cat /var/run/localip_override)
4 else
5     defaultdev=$(/sbin/ip route|awk '/default/ { print $5 }')
6     localip=$(ip addr show $defaultdev | grep 'inet ' | sed 's/ *inet \(.*\)\/.*/\1/')
7 fi
8
9 export GEM_HOME=/var/lib/gems
10 export GEM_PATH=/var/lib/gems
11
12 declare -A services
13 services=(
14   [workbench]=80
15   [api]=8000
16   [sso]=8900
17   [arv-git-httpd]=9001
18   [keep-web]=9002
19   [keepproxy]=25100
20   [keepstore0]=25107
21   [keepstore1]=25108
22   [ssh]=22
23   [doc]=8001
24 )
25
26 if test "$(id arvbox -u 2>/dev/null)" = 0 ; then
27     PGUSER=postgres
28     PGGROUP=postgres
29 else
30     PGUSER=arvbox
31     PGGROUP=arvbox
32 fi
33
34 run_bundler() {
35     if test -f Gemfile.lock ; then
36         frozen=--frozen
37     else
38         frozen=""
39     fi
40     if ! flock /var/lib/arvados/gems.lock bundle install --path $GEM_HOME --local --no-deployment $frozen "$@" ; then
41         flock /var/lib/arvados/gems.lock bundle install --path $GEM_HOME --no-deployment $frozen "$@"
42     fi
43 }
44
45 pip_install() {
46     pushd /var/lib/arvados/pip
47     for p in $(ls http*.tar.gz) ; do
48         if test -f $p ; then
49             ln -sf $p $(echo $p | sed 's/.*%2F\(.*\)/\1/')
50         fi
51     done
52     for p in $(ls http*.whl) ; do
53         if test -f $p ; then
54             ln -sf $p $(echo $p | sed 's/.*%2F\(.*\)/\1/')
55         fi
56     done
57     popd
58
59     if ! pip install --no-index --find-links /var/lib/arvados/pip $1 ; then
60         pip install $1
61     fi
62 }