Merge pull request #1 from arvados/master
[arvados.git] / sdk / cwl / tests / federation / arvbox / start.cwl
index f69775a530000ab6b1da15c043d59ba191023957..57b348973d2ef7a8e7856f1bfbc69744f9485b92 100644 (file)
@@ -10,6 +10,10 @@ $namespaces:
 inputs:
   container_name: string
   arvbox_data: Directory
+  arvbox_bin: File
+  branch:
+    type: string
+    default: master
 outputs:
   cluster_id:
     type: string
@@ -66,7 +70,25 @@ requirements:
 arguments:
   - shellQuote: false
     valueFrom: |
-      set -e
-      arvbox start dev
-      arvbox status > status.txt
-      arvbox cat /var/lib/arvados/superuser_token > superuser_token.txt
\ No newline at end of file
+      set -ex
+      mkdir -p $ARVBOX_DATA
+      if ! test -d $ARVBOX_DATA/arvados ; then
+        cd $ARVBOX_DATA
+        git clone https://github.com/arvados/arvados.git
+      fi
+      cd $ARVBOX_DATA/arvados
+      gitver=`git rev-parse HEAD`
+      git fetch
+      git checkout -f $(inputs.branch)
+      git pull
+      pulled=`git rev-parse HEAD`
+      git --no-pager log -n1 $pulled
+
+      cd $(runtime.outdir)
+      if test "$gitver" = "$pulled" ; then
+        $(inputs.arvbox_bin.path) start dev
+      else
+        $(inputs.arvbox_bin.path) restart dev
+      fi
+      $(inputs.arvbox_bin.path) status > status.txt
+      $(inputs.arvbox_bin.path) cat /var/lib/arvados/superuser_token > superuser_token.txt