Arvbox won't create application.yml if arvados_config.rb exists.
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Mon, 8 Jul 2019 20:40:42 +0000 (16:40 -0400)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Tue, 9 Jul 2019 14:00:58 +0000 (10:00 -0400)
refs #14812

Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

tools/arvbox/lib/arvbox/docker/api-setup.sh
tools/arvbox/lib/arvbox/docker/service/controller/run
tools/arvbox/lib/arvbox/docker/service/workbench/run-service

index a64f2f928e62f23a868d81b2fa9ed7952eef901d..f6191d63f429300b4d9c590dad78cf7eea5e3c68 100755 (executable)
@@ -45,6 +45,19 @@ else
     echo $vm_uuid > /var/lib/arvados/vm-uuid
 fi
 
+if ! test -f /var/lib/arvados/api_database_pw ; then
+    ruby -e 'puts rand(2**128).to_s(36)' > /var/lib/arvados/api_database_pw
+fi
+database_pw=$(cat /var/lib/arvados/api_database_pw)
+
+if ! (psql postgres -c "\du" | grep "^ arvados ") >/dev/null ; then
+    psql postgres -c "create user arvados with password '$database_pw'"
+fi
+psql postgres -c "ALTER USER arvados WITH SUPERUSER;"
+
+if test -a /usr/src/arvados/services/api/config/arvados_config.rb ; then
+    rm -f config/application.yml config/database.yml
+else
 cat >config/application.yml <<EOF
 $RAILS_ENV:
   uuid_prefix: $uuid_prefix
@@ -70,18 +83,8 @@ $RAILS_ENV:
 EOF
 
 (cd config && /usr/local/lib/arvbox/yml_override.py application.yml)
-
-if ! test -f /var/lib/arvados/api_database_pw ; then
-    ruby -e 'puts rand(2**128).to_s(36)' > /var/lib/arvados/api_database_pw
-fi
-database_pw=$(cat /var/lib/arvados/api_database_pw)
-
-if ! (psql postgres -c "\du" | grep "^ arvados ") >/dev/null ; then
-    psql postgres -c "create user arvados with password '$database_pw'"
-fi
-psql postgres -c "ALTER USER arvados WITH SUPERUSER;"
-
 sed "s/password:.*/password: $database_pw/" <config/database.yml.example >config/database.yml
+fi
 
 if ! test -f /var/lib/arvados/api_database_setup ; then
    bundle exec rake db:setup
index 799fc63e1c02e13d500a31a67f59b9a0611f0f54..bf288dc0c93bed8ca01f4a3e019d20dc66f0a43c 100755 (executable)
@@ -23,6 +23,8 @@ sso_app_secret=$(cat /var/lib/arvados/sso_app_secret)
 vm_uuid=$(cat /var/lib/arvados/vm-uuid)
 database_pw=$(cat /var/lib/arvados/api_database_pw)
 
+workbench_secret_key_base=$(cat /var/lib/arvados/workbench_secret_token)
+
 if test -s /var/lib/arvados/api_rails_env ; then
   database_env=$(cat /var/lib/arvados/api_rails_env)
 else
@@ -50,6 +52,9 @@ Clusters:
         ExternalURL: "http://$localip:${services[arv-git-httpd]}/"
       WebDAV:
         ExternalURL: "https://$localip:${services[keep-web-ssl]}/"
+      Composer:
+        ExternalURL: "http://$localip:${services[composer]}"
+
     NodeProfiles:  # to be deprecated in favor of "Services" section
       "*":
         arvados-controller:
@@ -82,6 +87,9 @@ Clusters:
       AutoSetupNewUsers: true
       AutoSetupNewUsersWithVmUUID: $vm_uuid
       AutoSetupNewUsersWithRepository: true
+    Workbench:
+      SecretKeyBase: $workbench_secret_key_base
+      ArvadosDocsite: http://$localip:${services[doc]}/
 EOF
 
 /usr/local/lib/arvbox/yml_override.py /var/lib/arvados/cluster_config.yml
index 6f13ee0278f8c67c333b03f338c998c741a8d9a8..1f989f63d6bc15236395dc09590d65dee6850f73 100755 (executable)
@@ -33,6 +33,9 @@ if ! test -s /var/lib/arvados/workbench_secret_token ; then
 fi
 secret_token=$(cat /var/lib/arvados/workbench_secret_token)
 
+if test -a /usr/src/arvados/apps/workbench/config/arvados_config.rb ; then
+    rm -f config/application.yml
+else
 cat >config/application.yml <<EOF
 $RAILS_ENV:
   secret_token: $secret_token
@@ -47,6 +50,7 @@ $RAILS_ENV:
   workbench2_url: https://$localip:${services[workbench2-ssl]}
 EOF
 
-bundle exec rake assets:precompile
-
 (cd config && /usr/local/lib/arvbox/yml_override.py application.yml)
+fi
+
+bundle exec rake assets:precompile