gnunet-svn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[taler-deployment] branch master updated: Docker: merchant starts


From: gnunet
Subject: [taler-deployment] branch master updated: Docker: merchant starts
Date: Wed, 28 Sep 2022 10:49:34 +0200

This is an automated email from the git hooks/post-receive script.

ms pushed a commit to branch master
in repository deployment.

The following commit(s) were added to refs/heads/master by this push:
     new 697e9cc  Docker: merchant starts
697e9cc is described below

commit 697e9cc5c3bd0d5450788aee375445da84e3343c
Author: MS <ms@taler.net>
AuthorDate: Wed Sep 28 10:43:37 2022 +0200

    Docker: merchant starts
---
 docker/hybrid/docker-compose.yml         |  8 ++++++++
 docker/hybrid/images/base/Dockerfile     | 16 ++++++++++++++--
 docker/hybrid/images/exchange/Dockerfile |  7 -------
 docker/hybrid/images/exchange/startup.sh | 33 ++++++++++++++++++++++++--------
 docker/hybrid/images/exchange/taler.conf |  7 ++++++-
 docker/hybrid/images/merchant/Dockerfile |  6 ++++++
 docker/hybrid/images/merchant/startup.sh | 32 +++++++++++++++++++++++++++++++
 docker/hybrid/images/merchant/taler.conf | 24 +++++++++++++++++++++++
 8 files changed, 115 insertions(+), 18 deletions(-)

diff --git a/docker/hybrid/docker-compose.yml b/docker/hybrid/docker-compose.yml
index 9d6fc94..ede1dc5 100644
--- a/docker/hybrid/docker-compose.yml
+++ b/docker/hybrid/docker-compose.yml
@@ -10,3 +10,11 @@ services:
     build: ./images/exchange
     depends_on:
       - talerdb
+    ports:
+      - 5555:80
+  merchant:
+    build: ./images/merchant
+    depends_on:
+      - talerdb
+    ports:
+      - 5556:80
diff --git a/docker/hybrid/images/base/Dockerfile 
b/docker/hybrid/images/base/Dockerfile
index 5b8b94d..9e4d487 100644
--- a/docker/hybrid/images/base/Dockerfile
+++ b/docker/hybrid/images/base/Dockerfile
@@ -6,10 +6,12 @@ RUN apt-get install -y autoconf autopoint libtool texinfo \
   libjansson-dev python3-pip git recutils libsqlite3-dev \
   libpq-dev postgresql libcurl4-openssl-dev libsodium-dev git \
   libqrencode-dev zip jq nodejs npm openjdk-17-jre nginx procps \
-  curl python3-jinja2
+  curl python3-jinja2 wget curl
 
 RUN git clone git://git.gnunet.org/libmicrohttpd
 RUN git clone git://git.gnunet.org/gnunet
+RUN git clone git://git.taler.net/exchange /exchange
+RUN git clone git://git.taler.net/merchant /merchant
 
 WORKDIR /libmicrohttpd
 RUN ./bootstrap
@@ -21,4 +23,14 @@ RUN ./bootstrap
 RUN ./configure --enable-logging=verbose --disable-documentation
 RUN make install
 
-RUN dpkg -L python3-jinja2
+WORKDIR /exchange
+RUN ./bootstrap
+RUN ./configure CFLAGS="-ggdb -O0" --enable-logging=verbose --disable-doc
+RUN make install
+
+WORKDIR /merchant
+RUN ./bootstrap
+RUN ./configure CFLAGS="-ggdb -O0" \
+  --enable-logging=verbose \
+  --disable-doc
+RUN make install
diff --git a/docker/hybrid/images/exchange/Dockerfile 
b/docker/hybrid/images/exchange/Dockerfile
index 0289729..4f744a5 100644
--- a/docker/hybrid/images/exchange/Dockerfile
+++ b/docker/hybrid/images/exchange/Dockerfile
@@ -1,13 +1,6 @@
 FROM taler_local/taler_base
-RUN git clone git://git.taler.net/exchange /exchange
-
-WORKDIR /exchange
-RUN ./bootstrap
-RUN ./configure CFLAGS="-ggdb -O0" --enable-logging=verbose --disable-doc
-RUN make install
 
 COPY taler.conf /config/taler.conf
 COPY startup.sh /
 RUN chmod +x /startup.sh
-
 ENTRYPOINT /startup.sh
diff --git a/docker/hybrid/images/exchange/startup.sh 
b/docker/hybrid/images/exchange/startup.sh
index 6d26550..9fe4052 100644
--- a/docker/hybrid/images/exchange/startup.sh
+++ b/docker/hybrid/images/exchange/startup.sh
@@ -3,7 +3,8 @@
 set -eu
 export LD_LIBRARY_PATH=/usr/local/lib
 
-sed -i 's/\${EXCHANGE_URL}/http:\/\/exchange.example.com\//' /config/taler.conf
+sed -i 's/\${EXCHANGE_URL}/http:\/\/exchange:80\//' /config/taler.conf
+sed -i 's/\${CURRENCY}/EUR/' /config/taler.conf
 
 while ! pg_isready -h talerdb -d taler; do
   echo DB not ready yet.
@@ -14,12 +15,28 @@ echo Now DB is ready.
 # Make sure we have the right to connect
 echo "" | psql -h talerdb -d taler
 
-taler-exchange-dbinit -L DEBUG -c /config/taler.conf # --reset # &> /dev/null
+taler-exchange-dbinit -c /config/taler.conf --reset # &> /dev/null
 
-#taler-exchange-secmod-eddsa -c /config/taler.conf &
-#taler-exchange-secmod-rsa -c /config/taler.conf &
-#taler-exchange-secmod-cs -c /config/taler.conf &
+taler-exchange-secmod-eddsa -c /config/taler.conf &
+taler-exchange-secmod-rsa -c /config/taler.conf &
+taler-exchange-secmod-cs -c /config/taler.conf &
+echo "Crypto helpers started.."
+EXCHANGE_MASTER_PUB=$(taler-exchange-offline -c /config/taler.conf setup)
+sed -i "s/\${EXCHANGE_MASTER_PUB}/$EXCHANGE_MASTER_PUB/" /config/taler.conf
+taler-exchange-httpd -c /config/taler.conf &
+for n in `seq 1 80`
+  do
+    echo "."
+    sleep 0.1
+    OK=1
+    wget http://exchange/ -o /dev/null -O /dev/null >/dev/null && break
+    OK=0
+  done
+  if [ 1 != $OK ]
+  then
+      echo "Failed to launch Exchange"
+  fi
+echo Echange launched.
 
-#EXCHANGE_MASTER_PUB=$(taler-exchange-offline -c /config/taler.conf setup)
-#sed -i "s/\${EXCHANGE_MASTER_PUB}/$EXCHANGE_MASTER_PUB/" /config/taler.conf
-#taler-exchange-httpd -c /config/taler.conf
+taler-exchange-offline -c /config/taler.conf download sign upload
+wait
diff --git a/docker/hybrid/images/exchange/taler.conf 
b/docker/hybrid/images/exchange/taler.conf
index ca78bf6..dd93b3d 100644
--- a/docker/hybrid/images/exchange/taler.conf
+++ b/docker/hybrid/images/exchange/taler.conf
@@ -5,6 +5,9 @@
 # CURRENCY
 # EXCHANGE_MASTER_PUB
 
+[taler]
+currency = ${CURRENCY}
+
 [paths]
 taler_data_home = /data
 
@@ -36,7 +39,9 @@ privacy_dir = /usr/local/share/taler/exchange/pp
 terms_dir = /usr/local/share/taler/exchange/tos
 base_url = ${EXCHANGE_URL}
 unixpath = /sockets/exchange.sock
-serve = unix
+serve = tcp
+port = 80
+# serve = unix
 
 [exchangedb-postgres]
 config = postgres://talerdb/taler
diff --git a/docker/hybrid/images/merchant/Dockerfile 
b/docker/hybrid/images/merchant/Dockerfile
new file mode 100644
index 0000000..4f744a5
--- /dev/null
+++ b/docker/hybrid/images/merchant/Dockerfile
@@ -0,0 +1,6 @@
+FROM taler_local/taler_base
+
+COPY taler.conf /config/taler.conf
+COPY startup.sh /
+RUN chmod +x /startup.sh
+ENTRYPOINT /startup.sh
diff --git a/docker/hybrid/images/merchant/startup.sh 
b/docker/hybrid/images/merchant/startup.sh
new file mode 100644
index 0000000..eade50f
--- /dev/null
+++ b/docker/hybrid/images/merchant/startup.sh
@@ -0,0 +1,32 @@
+#!/bin/bash
+
+set -eu
+export LD_LIBRARY_PATH=/usr/local/lib
+
+while ! pg_isready -h talerdb -d taler; do
+  echo DB not ready yet.
+  sleep 2
+done
+echo Now DB is ready.
+
+for n in `seq 1 80`
+  do
+    echo "."
+    sleep 0.1
+    OK=1
+    wget http://exchange/ -o /dev/null -O /dev/null >/dev/null && break
+    OK=0
+  done
+  if [ 1 != $OK ]
+  then
+      echo "Exchange unreachable."
+  fi
+echo Echange reachable.
+
+EXCHANGE_MASTER_PUB=$(curl -s http://exchange/keys | jq -r .master_public_key)
+echo Found Exchange Pub: $EXCHANGE_MASTER_PUB
+sed -i 's/\${EXCHANGE_URL}/http:\/\/exchange\//' /config/taler.conf
+sed -i "s/\${EXCHANGE_PUB}/${EXCHANGE_MASTER_PUB}/" /config/taler.conf
+sed -i 's/\${CURRENCY}/EUR/' /config/taler.conf
+taler-merchant-dbinit -c /config/taler.conf --reset
+taler-merchant-httpd -c /config/taler.conf
diff --git a/docker/hybrid/images/merchant/taler.conf 
b/docker/hybrid/images/merchant/taler.conf
new file mode 100644
index 0000000..cd50bba
--- /dev/null
+++ b/docker/hybrid/images/merchant/taler.conf
@@ -0,0 +1,24 @@
+[taler]
+currency = ${CURRENCY}
+
+[paths]
+TALER_DATA_HOME = /data
+
+[merchant-exchange-${CURRENCY}]
+currency = ${CURRENCY}
+exchange_base_url = http://exchange/
+master_key = ${EXCHANGE_PUB}
+
+[merchantdb-postgres]
+config = postgres://talerdb/taler
+
+[merchant]
+default_max_deposit_fee = ${CURRENCY}:0.05
+default_max_wire_fee = ${CURRENCY}:0.01
+wire_transfer_delay = 0 s
+port = 80
+serve = tcp
+
+[merchant-account-merchant]
+wire_file_mode = 770
+wire_response = ${TALER_DATA_HOME}/merchant/wire/merchant.json

-- 
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.



reply via email to

[Prev in Thread] Current Thread [Next in Thread]