13558: Merge branch 'master' into wtsi-hgi-13558-debug-log-tag-req-id
[arvados.git] / tools / arvbox / lib / arvbox / docker / service / workbench / run-service
1 #!/bin/bash
2 # Copyright (C) The Arvados Authors. All rights reserved.
3 #
4 # SPDX-License-Identifier: AGPL-3.0
5
6 exec 2>&1
7 set -ex -o pipefail
8
9 .  /usr/local/lib/arvbox/common.sh
10
11 cd /usr/src/arvados/apps/workbench
12
13 if test -s /var/lib/arvados/workbench_rails_env ; then
14   export RAILS_ENV=$(cat /var/lib/arvados/workbench_rails_env)
15 else
16   export RAILS_ENV=development
17 fi
18
19 run_bundler --without=development
20 bundle exec passenger-config build-native-support
21 bundle exec passenger-config install-standalone-runtime
22 mkdir -p /usr/src/arvados/apps/workbench/tmp
23 RAILS_GROUPS=assets bundle exec rake npm:install
24
25 if test "$1" = "--only-deps" ; then
26     exit
27 fi
28
29 set -u
30
31 if ! test -s /var/lib/arvados/workbench_secret_token ; then
32   ruby -e 'puts rand(2**400).to_s(36)' > /var/lib/arvados/workbench_secret_token
33 fi
34 secret_token=$(cat /var/lib/arvados/workbench_secret_token)
35
36 if ! test -s self-signed.key ; then
37   openssl req -new -x509 -nodes -out self-signed.pem -keyout self-signed.key -days 365 -subj '/CN=localhost'
38 fi
39
40 cat >config/application.yml <<EOF
41 $RAILS_ENV:
42   secret_token: $secret_token
43   arvados_login_base: https://$localip:${services[controller-ssl]}/login
44   arvados_v1_base: https://$localip:${services[controller-ssl]}/arvados/v1
45   arvados_insecure_https: true
46   keep_web_download_url: http://$localip:${services[keep-web]}/c=%{uuid_or_pdh}
47   keep_web_url: http://$localip:${services[keep-web]}/c=%{uuid_or_pdh}
48   arvados_docsite: http://$localip:${services[doc]}/
49   force_ssl: false
50   composer_url: http://$localip:${services[composer]}
51 EOF
52
53 bundle exec rake assets:precompile
54
55 (cd config && /usr/local/lib/arvbox/yml_override.py application.yml)