summaryrefslogtreecommitdiff
path: root/docker/hybrid/images/libeufin/startup.sh
blob: a8d3bf3c5b1a8f0915bebdb20683910851c55af5 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#!/bin/bash

set -eu

## SANDBOX SETUP

# invoke: username password iban name
register_sandbox_account() {
  export LIBEUFIN_SANDBOX_USERNAME=$1
  export LIBEUFIN_SANDBOX_PASSWORD=$2
  libeufin-cli sandbox demobank register --name "$4" --iban $3
  unset LIBEUFIN_SANDBOX_USERNAME
  unset LIBEUFIN_SANDBOX_PASSWORD
}

# takes port and service name
is_serving() {
  for n in `seq 1 80`
    do
      echo "."
      sleep 0.1
      OK=1
      wget http://localhost:$1 -o /dev/null -O /dev/null >/dev/null && break
      OK=0
    done
    if [ 1 != $OK ]
    then
        echo "$2 unreachable."
        exit 1
    fi
  echo $2 reachable.
}

export LIBEUFIN_SANDBOX_DB_CONNECTION="jdbc:sqlite:/libeufin.sqlite3"
export LIBEUFIN_SANDBOX_ADMIN_PASSWORD=secret
export LIBEUFIN_SANDBOX_URL="http://localhost:5000/demobanks/default"
libeufin-sandbox config --currency EUR default
libeufin-sandbox serve --no-localhost-only &
is_serving 5000 Sandbox

EXCHANGE_IBAN=DE159593
EXCHANGE_USERNAME=taler-exchange
EXCHANGE_PASSWORD=x

register_sandbox_account $EXCHANGE_USERNAME $EXCHANGE_PASSWORD $EXCHANGE_IBAN "Exchange Company"

## NEXUS SETUP
export LIBEUFIN_NEXUS_DB_CONNECTION="jdbc:sqlite:/libeufin.sqlite3"
libeufin-nexus superuser exchange --password x
libeufin-nexus serve --no-localhost-only &

is_serving 5001 Nexus

wait