21230: Clean up directory state in arvbox doc service
[arvados.git] / tools / arvbox / lib / arvbox / docker / service / doc / run-service
index 66a4a28ec5ad24e6f8fb0dcb786491f0007c80fd..640f652c40ee0568330681e3ba989a2ad3e6ed23 100755 (executable)
@@ -8,20 +8,23 @@ set -ex -o pipefail
 
 . /usr/local/lib/arvbox/common.sh
 
+if test "$1" != "--only-deps" ; then
+  while [ ! -f $ARVADOS_CONTAINER_PATH/api.ready ]; do
+    sleep 1
+  done
+fi
 
 cd /usr/src/arvados/doc
 run_bundler --without=development
 
-# Generating the R docs is expensive, so for development if the file
-# "no-sdk" exists then skip the R stuff.
-if [[ ! -f /usr/src/arvados/doc/no-sdk ]] ; then
-    cd /usr/src/arvados/sdk/R
-    R --quiet --vanilla --file=install_deps.R
+# Generating the Python and R docs is expensive, so for development if the file
+# "no-sdk" exists then skip installing R stuff.
+if [[ ! -f no-sdk ]] ; then
+    env -C ../sdk/R R --quiet --vanilla --file=install_deps.R
 fi
 
 if test "$1" = "--only-deps" ; then
     exit
 fi
 
-cd /usr/src/arvados/doc
-bundle exec rake generate baseurl=http://$localip:${services[doc]} arvados_api_host=$localip:${services[controller-ssl]} arvados_workbench_host=http://$localip
+flock $GEMLOCK bundle exec rake generate baseurl=http://$localip:${services[doc]} arvados_api_host=$localip:${services[controller-ssl]} arvados_workbench_host=http://$localip