2 # Copyright (C) The Arvados Authors. All rights reserved.
4 # SPDX-License-Identifier: AGPL-3.0
9 . /usr/local/lib/arvbox/common.sh
11 cd /usr/src/arvados/apps/workbench
13 if test -s /var/lib/arvados/workbench_rails_env ; then
14 export RAILS_ENV=$(cat /var/lib/arvados/workbench_rails_env)
16 export RAILS_ENV=development
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
25 if test "$1" = "--only-deps" ; then
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
34 secret_token=$(cat /var/lib/arvados/workbench_secret_token)
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'
40 cat >config/application.yml <<EOF
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]}/
50 composer_url: http://$localip:${services[composer]}
53 bundle exec rake assets:precompile
55 (cd config && /usr/local/lib/arvbox/yml_override.py application.yml)