932ba59818ba2fb604d4b11e744ffba37b622f78
[arvados.git] / tools / arvbox / lib / arvbox / docker / service / vm / 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 sleep 2
8 set -ex -o pipefail
9
10 . /usr/local/lib/arvbox/common.sh
11
12 cd /usr/src/arvados/services/login-sync
13 run_bundler --binstubs=$PWD/binstubs
14 ln -sf /usr/src/arvados/services/login-sync/binstubs/arvados-login-sync /usr/local/bin/arvados-login-sync
15
16 if test "$1" = "--only-deps" ; then
17     exit
18 fi
19
20 set -u
21
22 export ARVADOS_API_HOST=$localip:${services[controller-ssl]}
23 export ARVADOS_API_HOST_INSECURE=1
24 export ARVADOS_API_TOKEN=$(cat /var/lib/arvados/superuser_token)
25 export ARVADOS_VIRTUAL_MACHINE_UUID=$(cat /var/lib/arvados/vm-uuid)
26
27 set +e
28 read -rd $'\000' vm <<EOF
29 {
30  "uuid": "$ARVADOS_VIRTUAL_MACHINE_UUID",
31  "hostname":"$localip"
32 }
33 EOF
34 set -e
35
36 if arv virtual_machine get --uuid $ARVADOS_VIRTUAL_MACHINE_UUID ; then
37     arv virtual_machine update --uuid $ARVADOS_VIRTUAL_MACHINE_UUID --virtual-machine "$vm"
38 else
39     arv virtual_machine create --virtual-machine "$vm"
40 fi