summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2023-03-31 11:54:38 +0200
committerFlorian Dold <florian@dold.me>2023-03-31 12:33:54 +0200
commitd274f454974c55f631248fc6b1c2d32d4123c435 (patch)
tree770a779d30d956636406b465540da562a933ca98
parent800a92e316f54751066aa978abfd41673acc4606 (diff)
downloaddeployment-d274f454974c55f631248fc6b1c2d32d4123c435.tar.gz
deployment-d274f454974c55f631248fc6b1c2d32d4123c435.tar.bz2
deployment-d274f454974c55f631248fc6b1c2d32d4123c435.zip
sandcastle: move config
-rw-r--r--sandcastle/config/exchange/taler.conf (renamed from sandcastle/images/exchange/taler.conf)0
-rw-r--r--sandcastle/config/merchant/taler.conf (renamed from sandcastle/images/merchant/taler.conf)11
-rw-r--r--sandcastle/docker-compose.yml8
-rw-r--r--sandcastle/images/base/Dockerfile2
-rw-r--r--sandcastle/images/exchange/Dockerfile1
-rw-r--r--sandcastle/images/exchange/startup.sh42
-rw-r--r--sandcastle/images/merchant/Dockerfile1
-rw-r--r--sandcastle/images/merchant/startup.sh69
8 files changed, 44 insertions, 90 deletions
diff --git a/sandcastle/images/exchange/taler.conf b/sandcastle/config/exchange/taler.conf
index 54d9755..54d9755 100644
--- a/sandcastle/images/exchange/taler.conf
+++ b/sandcastle/config/exchange/taler.conf
diff --git a/sandcastle/images/merchant/taler.conf b/sandcastle/config/merchant/taler.conf
index 72b25e6..bf1eb0f 100644
--- a/sandcastle/images/merchant/taler.conf
+++ b/sandcastle/config/merchant/taler.conf
@@ -22,14 +22,3 @@ serve = tcp
[frontends]
backend = __BACKEND_URL__
backend_apikey = __BACKEND_APIKEY__
-
-[sync]
-serve = tcp
-port = 8084
-apikey = __BACKEND_APIKEY__
-annual_fee = __CURRENCY__:0.01
-fulfillment_url = __SYNC_FULFILLMENT_URL__
-payment_backend_url = __BACKEND_URL__
-
-[syncdb-postgres]
-config = postgres://root:__DB_PASSWORD__@talerdb/taler
diff --git a/sandcastle/docker-compose.yml b/sandcastle/docker-compose.yml
index 17ee54f..cfe6ea9 100644
--- a/sandcastle/docker-compose.yml
+++ b/sandcastle/docker-compose.yml
@@ -13,7 +13,7 @@ services:
volumes:
- talerlogs:/logs
- talerdata:/var/lib/postgresql/data/
- - ${TALER_DEPLOYMENT_CONFIG:-./config/deployment.conf}:/config/deployment.conf
+ - ${TALER_SANDCASTLE_CONFIG:-./config}:/config:ro
environment:
# root is the only role existing in the DBMS. That
# matches the role used by other containers when
@@ -39,7 +39,7 @@ services:
volumes:
- talerlogs:/logs
- talerdata:/data
- - ${TALER_DEPLOYMENT_CONFIG:-./config/deployment.conf}:/config/deployment.conf
+ - ${TALER_SANDCASTLE_CONFIG:-./config}:/config:ro
restart: always
merchant:
@@ -56,7 +56,7 @@ services:
- ${TALER_SYNC_PORT:-5563}:8084 # sync
volumes:
- talerlogs:/logs
- - ${TALER_DEPLOYMENT_CONFIG:-./config/deployment.conf}:/config/deployment.conf
+ - ${TALER_SANDCASTLE_CONFIG:-./config}:/config:ro
restart: always
bank:
@@ -68,5 +68,5 @@ services:
volumes:
- talerlogs:/logs
- talerdata:/data
- - ${TALER_DEPLOYMENT_CONFIG:-./config/deployment.conf}:/config/deployment.conf
+ - ${TALER_SANDCASTLE_CONFIG:-./config}:/config:ro
restart: always
diff --git a/sandcastle/images/base/Dockerfile b/sandcastle/images/base/Dockerfile
index 6f8964f..6d687f6 100644
--- a/sandcastle/images/base/Dockerfile
+++ b/sandcastle/images/base/Dockerfile
@@ -106,7 +106,7 @@ RUN ./bootstrap
RUN ./configure
RUN make install
-RUN npm install -g pnpm
+RUN npm install -g pnpm@^7.0.0
WORKDIR /wallet-core
RUN ./bootstrap
diff --git a/sandcastle/images/exchange/Dockerfile b/sandcastle/images/exchange/Dockerfile
index 4f744a5..992c9a1 100644
--- a/sandcastle/images/exchange/Dockerfile
+++ b/sandcastle/images/exchange/Dockerfile
@@ -1,6 +1,5 @@
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/sandcastle/images/exchange/startup.sh b/sandcastle/images/exchange/startup.sh
index 97f2444..aec8204 100644
--- a/sandcastle/images/exchange/startup.sh
+++ b/sandcastle/images/exchange/startup.sh
@@ -6,6 +6,10 @@ set -eu
export LD_LIBRARY_PATH=/usr/local/lib
export GNUNET_FORCE_LOG=";;;;WARNING"
+mkdir -p /etc/taler
+TALERCONF=/etc/taler/taler.conf
+cp /config/exchange/taler.conf $TALERCONF
+
# Values from config file mounted at run time:
CURRENCY=`taler-config -c /config/deployment.conf -s taler-deployment -o currency`
EXCHANGE_URL=`taler-config -c /config/deployment.conf -s taler-deployment -o default-exchange`
@@ -17,14 +21,14 @@ EXCHANGE_NEXUS_PASSWORD=`taler-config -c /config/deployment.conf -s taler-deploy
EXCHANGE_IBAN=DE159593
TALER_FACADE_NAME=taler-facade
DB_PASSWORD=`taler-config -c /config/deployment.conf -s taler-deployment -o db-password`
-sed -i "s;__EXCHANGE_URL__;${EXCHANGE_URL};" /config/taler.conf
-sed -i "s;__DB_PASSWORD__;${DB_PASSWORD};" /config/taler.conf
-sed -i "s/__CURRENCY__/${CURRENCY}/" /config/taler.conf
-sed -i "s/__EXCHANGE_NEXUS_USERNAME__/${EXCHANGE_NEXUS_USERNAME}/" /config/taler.conf
-sed -i "s/__EXCHANGE_NEXUS_PASSWORD__/${EXCHANGE_NEXUS_PASSWORD}/" /config/taler.conf
-sed -i "s/__EXCHANGE_IBAN__/${EXCHANGE_IBAN}/" /config/taler.conf
-sed -i "s/__TALER_FACADE_NAME__/${TALER_FACADE_NAME}/" /config/taler.conf
-sed -i "s;__NEXUS_URL__;http://bank:15001;" /config/taler.conf
+sed -i "s;__EXCHANGE_URL__;${EXCHANGE_URL};" $TALERCONF
+sed -i "s;__DB_PASSWORD__;${DB_PASSWORD};" $TALERCONF
+sed -i "s/__CURRENCY__/${CURRENCY}/" $TALERCONF
+sed -i "s/__EXCHANGE_NEXUS_USERNAME__/${EXCHANGE_NEXUS_USERNAME}/" $TALERCONF
+sed -i "s/__EXCHANGE_NEXUS_PASSWORD__/${EXCHANGE_NEXUS_PASSWORD}/" $TALERCONF
+sed -i "s/__EXCHANGE_IBAN__/${EXCHANGE_IBAN}/" $TALERCONF
+sed -i "s/__TALER_FACADE_NAME__/${TALER_FACADE_NAME}/" $TALERCONF
+sed -i "s;__NEXUS_URL__;http://bank:15001;" $TALERCONF
while ! pg_isready -h talerdb -d taler; do
echo DB not ready yet.
@@ -33,29 +37,29 @@ done
echo Now DB is ready.
echo -n "Init database... "
-taler-exchange-dbinit -L WARNING -c /config/taler.conf
+taler-exchange-dbinit -L WARNING -c $TALERCONF
echo DONE
echo -n "Starting EDDSA helper..."
taler-exchange-secmod-eddsa -L WARNING \
- -c /config/taler.conf 2>&1 | \
+ -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-secmod-eddsa-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Starting RSA helper..."
taler-exchange-secmod-rsa -L WARNING \
- -c /config/taler.conf 2>&1 | \
+ -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-secmod-rsa-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Starting CS helper..."
taler-exchange-secmod-cs -L WARNING \
- -c /config/taler.conf 2>&1 | \
+ -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-secmod-cs-%Y-%m-%d.log 86400 &
echo DONE
-EXCHANGE_MASTER_PUB=$(taler-exchange-offline -c /config/taler.conf setup)
+EXCHANGE_MASTER_PUB=$(taler-exchange-offline -c $TALERCONF setup)
-sed -i "s/__EXCHANGE_MASTER_PUB__/$EXCHANGE_MASTER_PUB/" /config/taler.conf
+sed -i "s/__EXCHANGE_MASTER_PUB__/$EXCHANGE_MASTER_PUB/" $TALERCONF
echo -n "Launching exchange HTTPD..."
-taler-exchange-httpd -L WARNING -c /config/taler.conf 2>&1 | \
+taler-exchange-httpd -L WARNING -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-httpd-%Y-%m-%d.log 86400 &
for n in `seq 1 50`
do
@@ -73,20 +77,20 @@ for n in `seq 1 50`
echo DONE
echo -n "Launching wirewatch..."
-taler-exchange-wirewatch -L WARNING --longpoll-timeout=2s -c /config/taler.conf 2>&1 | \
+taler-exchange-wirewatch -L WARNING --longpoll-timeout=2s -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-wirewatch-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Launching transfer service..."
-taler-exchange-transfer -L WARNING -c /config/taler.conf 2>&1 | \
+taler-exchange-transfer -L WARNING -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-transfer-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Launching aggregator service..."
-taler-exchange-aggregator -L WARNING -c /config/taler.conf 2>&1 | \
+taler-exchange-aggregator -L WARNING -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-exchange-aggregator-%Y-%m-%d.log 86400 &
echo DONE
echo
echo -n "Setup keys and fees with taler-exchange-offline..."
-taler-exchange-offline -L WARNING -c /config/taler.conf \
+taler-exchange-offline -L WARNING -c $TALERCONF \
download sign \
enable-account "payto://iban/SANDBOXX/${EXCHANGE_IBAN}?receiver-name=Exchange+Company" \
wire-fee now iban ${CURRENCY}:0.01 ${CURRENCY}:0.01 \
diff --git a/sandcastle/images/merchant/Dockerfile b/sandcastle/images/merchant/Dockerfile
index 7618081..feffada 100644
--- a/sandcastle/images/merchant/Dockerfile
+++ b/sandcastle/images/merchant/Dockerfile
@@ -1,6 +1,5 @@
FROM taler_local/taler_base
-COPY taler.conf /config/taler.conf
COPY startup.sh /
COPY create_instances.sh /
COPY update_instances_auth.sh /
diff --git a/sandcastle/images/merchant/startup.sh b/sandcastle/images/merchant/startup.sh
index 63cf9f5..c33121a 100644
--- a/sandcastle/images/merchant/startup.sh
+++ b/sandcastle/images/merchant/startup.sh
@@ -6,6 +6,10 @@ set -eu
export LD_LIBRARY_PATH=/usr/local/lib
export GNUNET_FORCE_LOG=";;;;WARNING"
+mkdir -p /etc/taler
+TALERCONF=/etc/taler/taler.conf
+cp /config/merchant/taler.conf $TALERCONF
+
# Values from config file mounted at run time:
CURRENCY=`taler-config -c /config/deployment.conf -s taler-deployment -o currency`
BACKEND_APIKEY=`taler-config -c /config/deployment.conf -s taler-deployment -o merchant-apikey`
@@ -80,18 +84,18 @@ is_serving ${EXCHANGE_URL}
EXCHANGE_MASTER_PUB=$(curl -s ${EXCHANGE_URL}keys | jq -r .master_public_key)
echo Found Exchange Pub: $EXCHANGE_MASTER_PUB
-sed -i "s;__EXCHANGE_URL__;${EXCHANGE_URL};" /config/taler.conf
-sed -i "s/__EXCHANGE_PUB__/${EXCHANGE_MASTER_PUB}/" /config/taler.conf
-sed -i "s/__CURRENCY__/${CURRENCY}/" /config/taler.conf
-sed -i "s/__BACKEND_APIKEY__/${BACKEND_APIKEY}/" /config/taler.conf
-sed -i "s;__BACKEND_URL__;${BACKEND_URL};" /config/taler.conf
-sed -i "s;__DB_PASSWORD__;${DB_PASSWORD};" /config/taler.conf
+sed -i "s;__EXCHANGE_URL__;${EXCHANGE_URL};" $TALERCONF
+sed -i "s/__EXCHANGE_PUB__/${EXCHANGE_MASTER_PUB}/" $TALERCONF
+sed -i "s/__CURRENCY__/${CURRENCY}/" $TALERCONF
+sed -i "s/__BACKEND_APIKEY__/${BACKEND_APIKEY}/" $TALERCONF
+sed -i "s;__BACKEND_URL__;${BACKEND_URL};" $TALERCONF
+sed -i "s;__DB_PASSWORD__;${DB_PASSWORD};" $TALERCONF
echo "Init database... "
-taler-merchant-dbinit -L WARNING -c /config/taler.conf
+taler-merchant-dbinit -L WARNING -c $TALERCONF
echo DONE
echo -n "Launch merchant backend..."
-taler-merchant-httpd -L WARNING -a $BACKEND_APIKEY -c /config/taler.conf 2>&1 | \
+taler-merchant-httpd -L WARNING -a $BACKEND_APIKEY -c $TALERCONF 2>&1 | \
rotatelogs -e /logs/taler-merchant-httpd-%Y-%m-%d.log 86400 &
echo DONE
sleep 1
@@ -127,57 +131,16 @@ export TALER_ENV_URL_INTRO=`taler-config -c /config/deployment.conf -s taler-dep
export TALER_ENV_URL_BANK=`taler-config -c /config/deployment.conf -s taler-deployment -o bank-url`
echo -n "Launch blog..."
-taler-merchant-demos -c /config/taler.conf --http-port 8080 blog 2>&1 | rotatelogs -e /logs/blog-%Y-%m-%d.log 86400 &
+taler-merchant-demos -c $TALERCONF --http-port 8080 blog 2>&1 | rotatelogs -e /logs/blog-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Launch donations..."
-taler-merchant-demos -c /config/taler.conf --http-port 8081 donations 2>&1 | rotatelogs -e /logs/donations-%Y-%m-%d.log 86400 &
+taler-merchant-demos -c $TALERCONF --http-port 8081 donations 2>&1 | rotatelogs -e /logs/donations-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Launch Survey..."
-taler-merchant-demos -c /config/taler.conf --http-port 8082 survey 2>&1 | rotatelogs -e /logs/survey-%Y-%m-%d.log 86400 &
+taler-merchant-demos -c $TALERCONF --http-port 8082 survey 2>&1 | rotatelogs -e /logs/survey-%Y-%m-%d.log 86400 &
echo DONE
echo -n "Launch Landing..."
-taler-merchant-demos -c /config/taler.conf --http-port 8083 landing 2>&1 | rotatelogs -e /logs/landing-%Y-%m-%d.log 86400 &
+taler-merchant-demos -c $TALERCONF --http-port 8083 landing 2>&1 | rotatelogs -e /logs/landing-%Y-%m-%d.log 86400 &
echo DONE
-# Skip tipping for now until https://bugs.taler.net/n/7575 is resolved.
-##echo -n Creating a reserve for tips...
-##PAYTO_RESERVE=$(
-## taler-merchant-setup-reserve \
-## --amount ${CURRENCY}:20 \
-## --exchange-url ${EXCHANGE_URL} \
-## --merchant-url http://localhost/instances/survey/ \
-## --apikey "Bearer ${BACKEND_APIKEY}" \
-## --wire-method iban
-##)
-##
-##SANDBOX_URL="http://bank:15000"
-##is_serving "${SANDBOX_URL}/demobanks/default/integration-api/config"
-##SURVEY_USERNAME=`taler-config -c /config/deployment.conf -s taler-deployment -o survey-sandbox-username`
-##SURVEY_PASSWORD=`taler-config -c /config/deployment.conf -s taler-deployment -o survey-sandbox-password`
-### Check/wait that the Survey site got its bank account.
-##curl "${SANDBOX_URL}/demobanks/default/access-api/public-accounts"
-##is_serving "${SANDBOX_URL}/demobanks/default/access-api/accounts/${SURVEY_USERNAME}" \
-## "Authorization: Basic $(echo -n $SURVEY_USERNAME:$SURVEY_PASSWORD | base64)"
-##export LIBEUFIN_SANDBOX_USERNAME=${SURVEY_USERNAME}
-##export LIBEUFIN_SANDBOX_PASSWORD=${SURVEY_PASSWORD}
-##libeufin-cli sandbox \
-## --sandbox-url ${SANDBOX_URL} \
-## demobank new-transaction --bank-account ${LIBEUFIN_SANDBOX_USERNAME} \
-## --payto-with-subject ${PAYTO_RESERVE} --amount 20
-##unset LIBEUFIN_SANDBOX_USERNAME
-##unset LIBEUFIN_SANDBOX_PASSWORD
-##echo DONE
-
-# Sync should be put into a separate container: https://bugs.gnunet.org/view.php?id=7605
-#echo -n "Init sync database..."
-#sync-dbinit -L WARNING -c /config/taler.conf
-#echo DONE
-#
-#echo -n "Launching sync..."
-#sync-httpd -L WARNING -c /config/taler.conf 2>&1 | \
-# rotatelogs -e /logs/sync-httpd-%Y-%m-%d.log 86400 &
-#echo DONE
-#
-#is_serving $SYNC_URL
-
wait -n