gnunet-svn
[Top][All Lists]
Advanced

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

[taler-exchange] branch master updated: work on cleaning up benchmark lo


From: gnunet
Subject: [taler-exchange] branch master updated: work on cleaning up benchmark logic
Date: Mon, 05 Jun 2023 00:24:06 +0200

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

grothoff pushed a commit to branch master
in repository exchange.

The following commit(s) were added to refs/heads/master by this push:
     new 8cc1edfe work on cleaning up benchmark logic
8cc1edfe is described below

commit 8cc1edfe0aa77d3091f19aa87d06bb45c74b0128
Author: Christian Grothoff <christian@grothoff.org>
AuthorDate: Mon Jun 5 00:24:01 2023 +0200

    work on cleaning up benchmark logic
---
 src/benchmark/Makefile.am              |   5 ++
 src/benchmark/bank-benchmark-cs.conf   | 123 ++------------------------
 src/benchmark/bank-benchmark-rsa.conf  | 130 ++--------------------------
 src/benchmark/benchmark-common.conf    |  59 +++++++++++++
 src/benchmark/benchmark-cs.conf        | 116 +------------------------
 src/benchmark/benchmark-rsa.conf       | 121 +-------------------------
 src/benchmark/coins-cs.conf            |  58 +++++++++++++
 src/benchmark/coins-rsa.conf           |  63 ++++++++++++++
 src/benchmark/taler-benchmark-setup.sh | 152 ++++++++++++++++++++++-----------
 src/util/paths.conf                    |   6 +-
 10 files changed, 307 insertions(+), 526 deletions(-)

diff --git a/src/benchmark/Makefile.am b/src/benchmark/Makefile.am
index 764aef4d..de93cc74 100644
--- a/src/benchmark/Makefile.am
+++ b/src/benchmark/Makefile.am
@@ -68,7 +68,12 @@ taler_exchange_benchmark_LDADD = \
   $(XLIB)
 
 EXTRA_DIST = \
+  benchmark-common.conf \
   benchmark-cs.conf \
   benchmark-rsa.conf \
+  bank-benchmark-cs.conf \
+  bank-benchmark-rsa.conf \
+  coins-cs.conf \
+  coins-rsa.conf \
   $(bin_SCRIPTS) \
   exchange_benchmark_home/.local/share/taler/exchange/offline-keys/master.priv
diff --git a/src/benchmark/bank-benchmark-cs.conf 
b/src/benchmark/bank-benchmark-cs.conf
index e32370f8..d1d75d74 100644
--- a/src/benchmark/bank-benchmark-cs.conf
+++ b/src/benchmark/bank-benchmark-cs.conf
@@ -1,128 +1,17 @@
 # This file is in the public domain.
-#
-[paths]
-# Persistent data storage for the testcase
-# This value is a default for `taler_config_home'
-taler_test_home = exchange_benchmark_home/
-
-[taler]
-# Currency supported by the exchange (can only be one)
-currency = EUR
-CURRENCY_ROUND_UNIT = EUR:0.01
-
-[exchange]
-# how long is one signkey valid?
-signkey_duration = 4 weeks
-signkey_legal_duration = 2 years
-# how long do we provide to clients denomination and signing keys
-# ahead of time?
-# Keep it short so the test runs fast.
-lookahead_sign = 12h
-# HTTP port the exchange listens to
-port = 8081
-# Master public key used to sign the exchange's various keys
-master_public_key = 98NJW3CQHZQGQXTY3K85K531XKPAPAVV4Q5V8PYYRR00NJGZWNVG
-# How to access our database
-DB = postgres
-# Base URL of the exchange. Must be set to a URL where the
-# exchange (or the twister) is actually listening.
-base_url = "http://localhost:8081/";
-
-WIREWATCH_IDLE_SLEEP_INTERVAL = 500 ms
-
-[exchange-offline]
-MASTER_PRIV_FILE = ${TALER_DATA_HOME}/exchange/offline-keys/master.priv
-
-[auditor]
-BASE_URL = "http://localhost:8083/";
-
-[exchangedb-postgres]
-config = "postgres:///talercheck"
-
-[benchmark-remote-exchange]
-host = localhost
-# Adjust $HOME to match remote target!
-dir = $HOME/repos/taler/exchange/src/benchmark
-
-[bank]
-HTTP_PORT = 8082
-SERVE = http
-MAX_DEBT = EUR:100000000000.0
-MAX_DEBT_BANK = EUR:1000000000000000.0
-
-[benchmark]
-USER_PAYTO_URI = payto://x-taler-bank/localhost:8082/42?receiver-name=user42
+@INLINE@ benchmark-common.conf
+@INLINE@ coins-cs.conf
 
 [exchange-account-2]
 # What is the payto://-URL of the exchange (to generate wire response)
 PAYTO_URI = 
"payto://x-taler-bank/localhost:8082/Exchange?receiver-name=Exchange"
-enable_debit = YES
-enable_credit = YES
+ENABLE_DEBIT = YES
+ENABLE_CREDIT = YES
 
 [exchange-accountcredentials-2]
 # What is the bank account (with the "Taler Bank" demo system)? Must end with 
"/".
 WIRE_GATEWAY_URL = http://localhost:8082/Exchange/
 # Authentication information for basic authentication
 WIRE_GATEWAY_AUTH_METHOD = "basic"
-username = Exchange
-password = x
-
-
-
-
-# Sections starting with "coin_" specify which denominations
-# the exchange should support (and their respective fee structure)
-[coin_eur_ct_1]
-value = EUR:0.01
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.00
-fee_deposit = EUR:0.00
-fee_refresh = EUR:0.01
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_ct_10]
-value = EUR:0.10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_1]
-value = EUR:1
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_5]
-value = EUR:5
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_10]
-value = EUR:10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
+USERNAME = Exchange
+PASSWORD = x
diff --git a/src/benchmark/bank-benchmark-rsa.conf 
b/src/benchmark/bank-benchmark-rsa.conf
index 41934b08..d1d75d74 100644
--- a/src/benchmark/bank-benchmark-rsa.conf
+++ b/src/benchmark/bank-benchmark-rsa.conf
@@ -1,133 +1,17 @@
 # This file is in the public domain.
-#
-[paths]
-# Persistent data storage for the testcase
-# This value is a default for `taler_config_home'
-taler_test_home = exchange_benchmark_home/
-
-[taler]
-# Currency supported by the exchange (can only be one)
-currency = EUR
-CURRENCY_ROUND_UNIT = EUR:0.01
-
-[exchange]
-# how long is one signkey valid?
-signkey_duration = 4 weeks
-signkey_legal_duration = 2 years
-# how long do we provide to clients denomination and signing keys
-# ahead of time?
-# Keep it short so the test runs fast.
-lookahead_sign = 12h
-# HTTP port the exchange listens to
-port = 8081
-# Master public key used to sign the exchange's various keys
-master_public_key = 98NJW3CQHZQGQXTY3K85K531XKPAPAVV4Q5V8PYYRR00NJGZWNVG
-# How to access our database
-DB = postgres
-# Base URL of the exchange. Must be set to a URL where the
-# exchange (or the twister) is actually listening.
-base_url = "http://localhost:8081/";
-
-WIREWATCH_IDLE_SLEEP_INTERVAL = 1500 ms
-
-[exchange-offline]
-MASTER_PRIV_FILE = ${TALER_DATA_HOME}/exchange/offline-keys/master.priv
-
-[auditor]
-BASE_URL = "http://localhost:8083/";
-
-[exchangedb-postgres]
-config = "postgres://exchange:taler@192.168.42.42/exchange"
-
-[benchmark-remote-exchange]
-host = localhost
-# Adjust $HOME to match remote target!
-dir = $HOME/repos/taler/exchange/src/benchmark
-
-[bank]
-HTTP_PORT = 8082
-SERVE = http
-MAX_DEBT = EUR:100000000000.0
-MAX_DEBT_BANK = EUR:1000000000000000.0
-
-[benchmark]
-USER_PAYTO_URI = payto://x-taler-bank/localhost:8082/42
+@INLINE@ benchmark-common.conf
+@INLINE@ coins-cs.conf
 
 [exchange-account-2]
 # What is the payto://-URL of the exchange (to generate wire response)
-PAYTO_URI = "payto://x-taler-bank/localhost:8082/Exchange"
-enable_debit = YES
-enable_credit = YES
+PAYTO_URI = 
"payto://x-taler-bank/localhost:8082/Exchange?receiver-name=Exchange"
+ENABLE_DEBIT = YES
+ENABLE_CREDIT = YES
 
 [exchange-accountcredentials-2]
 # What is the bank account (with the "Taler Bank" demo system)? Must end with 
"/".
 WIRE_GATEWAY_URL = http://localhost:8082/Exchange/
 # Authentication information for basic authentication
 WIRE_GATEWAY_AUTH_METHOD = "basic"
-username = Exchange
-password = x
-
-
-
-
-# Sections starting with "coin_" specify which denominations
-# the exchange should support (and their respective fee structure)
-[coin_eur_ct_1]
-value = EUR:0.01
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.00
-fee_deposit = EUR:0.00
-fee_refresh = EUR:0.01
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_ct_10]
-value = EUR:0.10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_1]
-value = EUR:1
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_5]
-value = EUR:5
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_10]
-value = EUR:10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
+USERNAME = Exchange
+PASSWORD = x
diff --git a/src/benchmark/benchmark-common.conf 
b/src/benchmark/benchmark-common.conf
new file mode 100644
index 00000000..1cd28d62
--- /dev/null
+++ b/src/benchmark/benchmark-common.conf
@@ -0,0 +1,59 @@
+# This file is in the public domain.
+[paths]
+TALER_TEST_HOME=exchange_benchmark_home/
+
+[taler]
+CURRENCY=EUR
+CURRENCY_ROUND_UNIT=EUR:0.01
+
+[exchange]
+AML_THRESHOLD=EUR:99999999
+SIGNKEY_LEGAL_DURATION=2 years
+PORT=8081
+MASTER_PUBLIC_KEY=98NJW3CQHZQGQXTY3K85K531XKPAPAVV4Q5V8PYYRR00NJGZWNVG
+DB=postgres
+BASE_URL="http://localhost:8081/";
+AGGREGATOR_SHARD_SIZE=67108864
+WIREWATCH_IDLE_SLEEP_INTERVAL=5 ms
+
+[taler-exchange-secmod-rsa]
+LOOKAHEAD_SIGN="1 d"
+
+[taler-exchange-secmod-cs]
+LOOKAHEAD_SIGN="1 d"
+
+[taler-exchange-secmod-eddsa]
+DURATION="2 d"
+LOOKAHEAD_SIGN="1 d"
+
+[exchangedb-postgres]
+CONFIG="postgres:///talercheck"
+
+[exchange-offline]
+MASTER_PRIV_FILE=${TALER_DATA_HOME}/exchange/offline-keys/master.priv
+
+[bank]
+HTTP_PORT=8082
+SERVE=http
+MAX_DEBT=EUR:100000000000.0
+MAX_DEBT_BANK=EUR:1000000000000000.0
+DATABASE=bank-db.sqlite3
+
+[libeufin-nexus]
+DB_CONNECTION="jdbc:postgresql://localhost/talercheck?socketFactory=org.newsclub.net.unix."
+#DB_CONNECTION="jdbc:sqlite:libeufin-nexus.sqlite3"
+
+[libeufin-sandbox]
+DB_CONNECTION="jdbc:postgresql://localhost/talercheck?socketFactory=org.newsclub.net.unix."
+#DB_CONNECTION="jdbc:sqlite:libeufin-sandbox.sqlite3"
+
+[auditor]
+BASE_URL="http://localhost:8083/";
+
+[benchmark-remote-exchange]
+HOST=localhost
+# Adjust $HOME to match remote target!
+DIR=$HOME/repos/taler/exchange/src/benchmark
+
+[benchmark]
+USER_PAYTO_URI="payto://x-taler-bank/localhost:8082/42?receiver-name=user42"
diff --git a/src/benchmark/benchmark-cs.conf b/src/benchmark/benchmark-cs.conf
index 79721be1..db44e4d1 100644
--- a/src/benchmark/benchmark-cs.conf
+++ b/src/benchmark/benchmark-cs.conf
@@ -1,60 +1,6 @@
 # This file is in the public domain.
-#
-[paths]
-# Persistent data storage for the testcase
-# This value is a default for `taler_config_home'
-TALER_TEST_HOME = exchange_benchmark_home/
-
-[taler]
-# Currency supported by the exchange (can only be one)
-CURRENCY = EUR
-CURRENCY_ROUND_UNIT = EUR:0.01
-
-[exchange]
-
-AML_THRESHOLD = EUR:99999999
-SIGNKEY_LEGAL_DURATION = 2 years
-
-# HTTP port the exchange listens to
-PORT = 8081
-# Master public key used to sign the exchange's various keys
-MASTER_PUBLIC_KEY = 98NJW3CQHZQGQXTY3K85K531XKPAPAVV4Q5V8PYYRR00NJGZWNVG
-# How to access our database
-DB = postgres
-# Base URL of the exchange. Must be set to a URL where the
-# exchange (or the twister) is actually listening.
-BASE_URL = "http://localhost:8081/";
-
-AGGREGATOR_SHARD_SIZE = 67108864
-#AGGREGATOR_SHARD_SIZE = 2147483648
-
-
-
-WIREWATCH_IDLE_SLEEP_INTERVAL = 5 ms
-
-[exchange-offline]
-MASTER_PRIV_FILE = ${TALER_DATA_HOME}/exchange/offline-keys/master.priv
-
-[auditor]
-BASE_URL = "http://localhost:8083/";
-
-[exchangedb-postgres]
-CONFIG = "postgres:///talercheck"
-
-[benchmark-remote-exchange]
-HOST = localhost
-# Adjust $HOME to match remote target!
-DIR = $HOME/repos/taler/exchange/src/benchmark
-
-[bank]
-HTTP_PORT = 8082
-SERVE = http
-MAX_DEBT = EUR:100000000000.0
-MAX_DEBT_BANK = EUR:1000000000000000.0
-DATABASE = bank-db.sqlite3
-
-[benchmark]
-USER_PAYTO_URI = payto://x-taler-bank/localhost:8082/42
+@INLINE@ benchmark-common.conf
+@INLINE@ coins-cs.conf
 
 [exchange-account-test]
 # What is the bank account (with the "Taler Bank" demo system)? Must end with 
"/".
@@ -68,61 +14,3 @@ WIRE_GATEWAY_URL = http://localhost:8082/Exchange/
 WIRE_GATEWAY_AUTH_METHOD = "basic"
 USERNAME = Exchange
 PASSWORD = x
-
-
-# Sections starting with "coin_" specify which denominations
-# the exchange should support (and their respective fee structure)
-[coin_eur_ct_1]
-value = EUR:0.01
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.00
-fee_deposit = EUR:0.00
-fee_refresh = EUR:0.01
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_ct_10]
-value = EUR:0.10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_1]
-value = EUR:1
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_5]
-value = EUR:5
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
-
-[coin_eur_10]
-value = EUR:10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = CS
diff --git a/src/benchmark/benchmark-rsa.conf b/src/benchmark/benchmark-rsa.conf
index 5e44781d..bd4a90cf 100644
--- a/src/benchmark/benchmark-rsa.conf
+++ b/src/benchmark/benchmark-rsa.conf
@@ -1,60 +1,6 @@
 # This file is in the public domain.
-#
-[paths]
-# Persistent data storage for the testcase
-# This value is a default for `taler_config_home'
-TALER_TEST_HOME = exchange_benchmark_home/
-
-[taler]
-# Currency supported by the exchange (can only be one)
-CURRENCY = EUR
-CURRENCY_ROUND_UNIT = EUR:0.01
-
-[exchange]
-
-AML_THRESHOLD = EUR:99999999
-SIGNKEY_LEGAL_DURATION = 2 years
-
-# HTTP port the exchange listens to
-PORT = 8081
-# Master public key used to sign the exchange's various keys
-MASTER_PUBLIC_KEY = 98NJW3CQHZQGQXTY3K85K531XKPAPAVV4Q5V8PYYRR00NJGZWNVG
-# How to access our database
-DB = postgres
-# Base URL of the exchange. Must be set to a URL where the
-# exchange (or the twister) is actually listening.
-BASE_URL = "http://localhost:8081/";
-
-AGGREGATOR_SHARD_SIZE = 67108864
-#AGGREGATOR_SHARD_SIZE = 2147483648
-
-
-
-WIREWATCH_IDLE_SLEEP_INTERVAL = 5 ms
-
-[exchange-offline]
-MASTER_PRIV_FILE = ${TALER_DATA_HOME}/exchange/offline-keys/master.priv
-
-[auditor]
-BASE_URL = "http://localhost:8083/";
-
-[exchangedb-postgres]
-CONFIG = "postgres:///talercheck"
-
-[benchmark-remote-exchange]
-HOST = localhost
-# Adjust $HOME to match remote target!
-DIR = $HOME/repos/taler/exchange/src/benchmark
-
-[bank]
-HTTP_PORT = 8082
-SERVE = http
-MAX_DEBT = EUR:100000000000.0
-MAX_DEBT_BANK = EUR:1000000000000000.0
-DATABASE = bank-db.sqlite3
-
-[benchmark]
-USER_PAYTO_URI = payto://x-taler-bank/localhost:8082/42
+@INLINE@ benchmark-common.conf
+@INLINE@ coins-rsa.conf
 
 [exchange-account-test]
 # What is the bank account (with the "Taler Bank" demo system)? Must end with 
"/".
@@ -68,66 +14,3 @@ WIRE_GATEWAY_URL = http://localhost:8082/Exchange/
 WIRE_GATEWAY_AUTH_METHOD = "basic"
 USERNAME = Exchange
 PASSWORD = x
-
-
-# Sections starting with "coin_" specify which denominations
-# the exchange should support (and their respective fee structure)
-[coin_eur_ct_1]
-value = EUR:0.01
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.00
-fee_deposit = EUR:0.00
-fee_refresh = EUR:0.01
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_ct_10]
-value = EUR:0.10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_1]
-value = EUR:1
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_5]
-value = EUR:5
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
-
-[coin_eur_10]
-value = EUR:10
-duration_withdraw = 7 days
-duration_spend = 2 years
-duration_legal = 3 years
-fee_withdraw = EUR:0.01
-fee_deposit = EUR:0.01
-fee_refresh = EUR:0.03
-fee_refund = EUR:0.01
-CIPHER = RSA
-rsa_keysize = 2048
diff --git a/src/benchmark/coins-cs.conf b/src/benchmark/coins-cs.conf
new file mode 100644
index 00000000..c4b5a45c
--- /dev/null
+++ b/src/benchmark/coins-cs.conf
@@ -0,0 +1,58 @@
+# This file is in the public domain.
+#
+# Sections starting with "coin_" specify which denominations
+# the exchange should support (and their respective fee structure)
+[coin_eur_ct_1]
+value = EUR:0.01
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.00
+fee_deposit = EUR:0.00
+fee_refresh = EUR:0.01
+fee_refund = EUR:0.01
+CIPHER = CS
+
+[coin_eur_ct_10]
+value = EUR:0.10
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = CS
+
+[coin_eur_1]
+value = EUR:1
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = CS
+
+[coin_eur_5]
+value = EUR:5
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = CS
+
+[coin_eur_10]
+value = EUR:10
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = CS
diff --git a/src/benchmark/coins-rsa.conf b/src/benchmark/coins-rsa.conf
new file mode 100644
index 00000000..42eb8acf
--- /dev/null
+++ b/src/benchmark/coins-rsa.conf
@@ -0,0 +1,63 @@
+# This file is in the public domain.
+#
+# Sections starting with "coin_" specify which denominations
+# the exchange should support (and their respective fee structure)
+[coin_eur_ct_1]
+value = EUR:0.01
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.00
+fee_deposit = EUR:0.00
+fee_refresh = EUR:0.01
+fee_refund = EUR:0.01
+CIPHER = RSA
+rsa_keysize = 2048
+
+[coin_eur_ct_10]
+value = EUR:0.10
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = RSA
+rsa_keysize = 2048
+
+[coin_eur_1]
+value = EUR:1
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = RSA
+rsa_keysize = 2048
+
+[coin_eur_5]
+value = EUR:5
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = RSA
+rsa_keysize = 2048
+
+[coin_eur_10]
+value = EUR:10
+duration_withdraw = 7 days
+duration_spend = 2 years
+duration_legal = 3 years
+fee_withdraw = EUR:0.01
+fee_deposit = EUR:0.01
+fee_refresh = EUR:0.03
+fee_refund = EUR:0.01
+CIPHER = RSA
+rsa_keysize = 2048
diff --git a/src/benchmark/taler-benchmark-setup.sh 
b/src/benchmark/taler-benchmark-setup.sh
index cd915371..52e0e08b 100755
--- a/src/benchmark/taler-benchmark-setup.sh
+++ b/src/benchmark/taler-benchmark-setup.sh
@@ -51,17 +51,17 @@ START_FAKEBANK=0
 START_MERCHANT=0
 START_NEXUS=0
 START_SANDBOX=0
-CONF="~/.config/taler.conf"
+CONF_ORIG="~/.config/taler.conf"
 LOGLEVEL="DEBUG"
 
 # Parse command-line options
-while getopts ':abc:efl:ms' OPTION; do
+while getopts ':abc:efhl:ms' OPTION; do
     case "$OPTION" in
         a)
             START_AUDITOR="1"
             ;;
         c)
-            CONF="$OPTARG"
+            CONF_ORIG="$OPTARG"
             ;;
         e)
             START_EXCHANGE="1"
@@ -69,6 +69,19 @@ while getopts ':abc:efl:ms' OPTION; do
         f)
             START_FAKEBANK="1"
             ;;
+        h)
+            echo 'Supported options:'
+            echo '  -a           -- start auditor'
+            echo '  -c $CONF     -- set configuration'
+            echo '  -e           -- start exchange'
+            echo '  -f           -- start fakebank'
+            echo '  -h           -- print this help'
+            echo '  -l $LOGLEVEL -- set log level'
+            echo '  -m           -- start merchant'
+            echo '  -n           -- start nexus'
+            echo '  -s           -- start sandbox'
+            exit 0
+            ;;
         l)
             LOGLEVEL="$OPTARG"
             ;;
@@ -87,26 +100,29 @@ while getopts ':abc:efl:ms' OPTION; do
     esac
 done
 
+echo "Starting with configuration file at: $CONF_ORIG"
+CONF="$CONF_ORIG.edited"
+cp "${CONF_ORIG}" "${CONF}"
 
 echo -n "Testing for jq"
 jq -h > /dev/null || exit_skip " jq required"
 echo " FOUND"
 
-if ["1" = "$START_EXCHANGE"]
+if [ "1" = "$START_EXCHANGE" ]
 then
     echo -n "Testing for Taler exchange"
     taler-exchange-httpd -h > /dev/null || exit_skip " taler-exchange-httpd 
required"
     echo " FOUND"
 fi
 
-if ["1" = "$START_MERCHANT"]
+if [ "1" = "$START_MERCHANT" ]
 then
     echo -n "Testing for Taler merchant"
     taler-merchant-httpd -h > /dev/null || exit_skip " taler-merchant-httpd 
required"
     echo " FOUND"
 fi
 
-if ["1" = "$START_NEXUS"]
+if [ "1" = "$START_NEXUS" ]
 then
     echo -n "Testing for libeufin-cli"
     libeufin-cli --help >/dev/null </dev/null || exit_skip " MISSING"
@@ -114,7 +130,7 @@ then
 fi
 
 EXCHANGE_URL=$(taler-config -c "$CONF" -s "EXCHANGE" -o "BASE_URL")
-
+CURRENCY=$(taler-config -c "$CONF" -s "TALER" -o "CURRENCY")
 
 register_sandbox_account() {
     export LIBEUFIN_SANDBOX_USERNAME="$1"
@@ -128,7 +144,7 @@ register_sandbox_account() {
 
 
 BANK_PORT=$(taler-config -c "$CONF" -s "BANK" -o "HTTP_PORT")
-if ["1" = "$START_NEXUS"]
+if [ "1" = "$START_NEXUS" ]
 then
     NEXUS_PORT="$BANK_PORT"
     SANDBOX_PORT="1$BANK_PORT"
@@ -137,12 +153,11 @@ else
     SANDBOX_PORT="1$BANK_PORT"
 fi
 
-if ["1" = "$START_SANDBOX"]
+if [ "1" = "$START_SANDBOX" ]
 then
     export LIBEUFIN_SANDBOX_DB_CONNECTION=$(taler-config -c "$CONF" -s 
"libeufin-sandbox" -o "DB_CONNECTION")
 
     # Create the default demobank.
-    CURRENCY=$(taler-config -c "$CONF" -s "EXCHANGE" -o "CURRENCY")
     libeufin-sandbox config --currency "$CURRENCY" default
     export LIBEUFIN_SANDBOX_ADMIN_PASSWORD="secret"
     libeufin-sandbox serve \
@@ -152,6 +167,7 @@ then
     echo $! > libeufin-sandbox.pid
     export LIBEUFIN_SANDBOX_URL="http://localhost:$SANDBOX_PORT/";
     set +e
+    OK="0"
     echo -n "Waiting for Sandbox ..."
     for n in $(seq 1 100); do
         echo -n "."
@@ -163,9 +179,14 @@ then
                 -O /dev/null \
                 "$LIBEUFIN_SANDBOX_URL";
         then
+            OK="1"
             break
         fi
     done
+    if [ "1" != "$OK" ]
+    then
+        exit_skip "Failed to launch services (sandbox)"
+    fi
     echo "OK"
     set -e
     echo -n "Register Sandbox users ..."
@@ -208,7 +229,7 @@ then
     unset LIBEUFIN_SANDBOX_PASSWORD
 fi
 
-if ["1" = "$START_NEXUS"]
+if [ "1" = "$START_NEXUS" ]
 then
     echo "Setting up Nexus ..."
 
@@ -228,6 +249,7 @@ then
     export LIBEUFIN_NEXUS_URL="http://localhost:$NEXUS_PORT";
     echo -n "Waiting for Nexus ..."
     set +e
+    OK="0"
     for n in $(seq 1 100); do
         echo -n "."
         sleep 0.2
@@ -238,9 +260,14 @@ then
                 -O /dev/null \
                 "$LIBEUFIN_NEXUS_URL";
         then
+            OK="1"
             break
         fi
     done
+    if [ "1" != "$OK" ]
+    then
+        exit_skip "Failed to launch services (bank)"
+    fi
     set -e
     echo " OK"
 
@@ -296,14 +323,14 @@ then
     # FIXME: set the above URL automatically in the configuration?
 fi
 
-if ["1" = "$START_FAKEBANK"]
+if [ "1" = "$START_FAKEBANK" ]
 then
     echo "Setting up fakebank ..."
     taler-fakebank-run -c "$CONF" -L "$LOGLEVEL" 2> taler-fakebank-run.log &
 fi
 
 
-if ["1" = "$START_EXCHANGE"]
+if [ "1" = "$START_EXCHANGE" ]
 then
     echo -n "Starting exchange ..."
 
@@ -313,9 +340,9 @@ then
     gnunet-ecc -g1 "$MASTER_PRIV_FILE" > /dev/null 2> /dev/null
     MASTER_PUB=$(gnunet-ecc -p "${MASTER_PRIV_FILE}")
     MPUB=$(taler-config -c "$CONF" -s exchange -o MASTER_PUBLIC_KEY)
-    if ["$MPUB" != "$MASTER_PUB"]
+    if [ "$MPUB" != "$MASTER_PUB" ]
     then
-        echo -n " patching master_pub ... "
+        echo -n " patching master_pub ($MASTER_PUB)..."
         taler-config -c $CONF -s exchange -o MASTER_PUBLIC_KEY -V "$MASTER_PUB"
     fi
     taler-exchange-dbinit -c "$CONF"
@@ -329,7 +356,7 @@ then
     echo " DONE"
 fi
 
-if ["1" = "$START_MERCHANT"]
+if [ "1" = "$START_MERCHANT" ]
 then
     echo -n "Starting merchant ..."
     MERCHANT_PORT=$(taler-config -c "$CONF" -s MERCHANT -o PORT)
@@ -340,7 +367,7 @@ then
     echo " DONE"
 fi
 
-if ["1" = "$START_AUDITOR"]
+if [ "1" = "$START_AUDITOR" ]
 then
     echo -n "Starting auditor ..."
     AUDITOR_URL="http://localhost:8083/";
@@ -355,15 +382,15 @@ then
     echo " DONE"
 fi
 
-if ["1" = "$START_NEXUS" || "1" = "$START_FAKEBANK"]
+if [[ "1" = "$START_NEXUS" || "1" = "$START_FAKEBANK" ]]
 then
     echo -n "Waiting for the bank"
     # Wait for bank to be available (usually the slowest)
+    OK="0"
     for n in $(seq 1 300)
     do
         echo -n "."
         sleep 0.1
-        OK=0
         # bank
         wget --tries=1 \
              --waitretry=0 \
@@ -373,34 +400,49 @@ then
              "http://localhost:8082/"; \
              -o /dev/null \
              -O /dev/null >/dev/null || continue
-        OK=1
+        OK="1"
         break
     done
-    if [ 1 != $OK ]
+    if [ "1" != "$OK" ]
     then
         exit_skip "Failed to launch services (bank)"
     fi
     echo " OK"
 fi
 
-echo -n "Waiting for Taler services "
+echo -n "Waiting for Taler services ..."
 # Wait for all other taler services to be available
 for n in $(seq 1 20)
 do
     echo -n "."
     sleep 0.1
     OK="0"
-    if ["1" = "$START_EXCHANGE"]
+    if [ "1" = "$START_EXCHANGE" ]
     then
-        wget --tries=1 --timeout=1 http://localhost:8081/seed -o /dev/null -O 
/dev/null >/dev/null || continue
+        wget \
+            --tries=1 \
+            --timeout=1 \
+            "http://localhost:8081/seed"; \
+            -o /dev/null \
+            -O /dev/null >/dev/null || continue
     fi
-    if ["1" = "$START_MERCHANT"]
+    if [ "1" = "$START_MERCHANT" ]
     then
-        wget --tries=1 --timeout=1 http://localhost:9966/ -o /dev/null -O 
/dev/null >/dev/null || continue
+        wget \
+            --tries=1 \
+            --timeout=1 \
+            "http://localhost:9966/"; \
+            -o /dev/null \
+            -O /dev/null >/dev/null || continue
     fi
-    if ["1" = "$START_AUDITOR"]
+    if [ "1" = "$START_AUDITOR" ]
     then
-        wget --tries=1 --timeout=1 http://localhost:8083/ -o /dev/null -O 
/dev/null >/dev/null || continue
+        wget \
+            --tries=1 \
+            --timeout=1 \
+            "http://localhost:8083/"; \
+            -o /dev/null \
+            -O /dev/null >/dev/null || continue
     fi
     OK="1"
     break
@@ -409,48 +451,55 @@ if [ 1 != "$OK" ]
 then
     exit_skip "Failed to launch (some) Taler services"
 fi
-echo "OK"
+echo " OK"
 
-if ["1" = "$START_EXCHANGE"]
+if [ "1" = "$START_EXCHANGE" ]
 then
     set +e
-    echo -n "Wait exchange /management/keys to be ready "
+    echo -n "Wait for exchange /management/keys to be ready "
+    OK="0"
+    LAST_RESPONSE=$(mktemp tmp-last-response.XXXXXXXX)
     for n in $(seq 1 50)
     do
         echo -n "."
         sleep 0.1
-        OK=0
         # exchange
-        wget --tries=3 --waitretry=0 --timeout=1 
http://localhost:8081/management/keys -o /dev/null -O $LAST_RESPONSE >/dev/null
+        wget \
+            --tries=3 \
+            --waitretry=0 \
+            --timeout=1 \
+            "http://localhost:8081/management/keys"\
+            -o /dev/null \
+            -O "$LAST_RESPONSE" \
+            >/dev/null
         DENOMS_COUNT=$(jq '.future_denoms|length' < $LAST_RESPONSE)
         SIGNKEYS_COUNT=$(jq '.future_signkeys|length' < $LAST_RESPONSE)
         [[ -z "$SIGNKEYS_COUNT" || "$SIGNKEYS_COUNT" == "0" || -z 
"$DENOMS_COUNT" || "$DENOMS_COUNT" == "0" ]] && continue
-        OK=1
+        OK="1"
         break;
     done
     set -e
-    if [ 1 != $OK ]
+    if [ "1" != "$OK" ]
     then
         exit_skip "Failed to setup exchange keys, check secmod logs"
     fi
+    rm "$LAST_RESPONSE"
     echo " OK"
 
     echo -n "Setting up exchange keys ..."
     taler-exchange-offline -c "$CONF" \
       download \
       sign \
-      enable-account "$EXCHANGE_PAYTO_URI" \
-      enable-auditor $AUDITOR_PUB $AUDITOR_URL "TESTKUDOS Auditor" \
-      wire-fee now iban TESTKUDOS:0.01 TESTKUDOS:0.01 \
-      global-fee now TESTKUDOS:0.01 TESTKUDOS:0.01 TESTKUDOS:0.01 1h 1year 5 \
+      wire-fee now iban "$CURRENCY:0.01" "$CURRENCY:0.01" \
+      global-fee now "$CURRENCY:0.01" "$CURRENCY:0.01" "$CURRENCY:0.01" 1h 
1year 5 \
       upload &> taler-exchange-offline.log
     echo "OK"
     for ASEC in $(taler-config -c "$CONF" -S | grep -i "exchange-account-")
     do
         ENABLED=$(taler-config -c "$CONF" -s "$ASEC" -o "ENABLE_CREDIT")
-        if ["YES" = "$ENABLED"]
+        if [ "YES" = "$ENABLED" ]
         then
-            echo -n "Configuring bank account $ASEC"
+            echo -n "Configuring bank account $ASEC ..."
             EXCHANGE_PAYTO_URI=$(taler-config -c "$CONF" -s "$ASEC" -o 
"PAYTO_URI")
             taler-exchange-offline -c "$CONF" \
               enable-account "$EXCHANGE_PAYTO_URI" \
@@ -458,34 +507,37 @@ then
             echo "OK"
         fi
     done
-    if ["1" = "$START_AUDITOR"]
+    if [ "1" = "$START_AUDITOR" ]
     then
         echo -n "Enabling auditor ..."
         taler-exchange-offline -c "$CONF" \
-          enable-auditor $AUDITOR_PUB $AUDITOR_URL "TESTKUDOS Auditor" \
+          enable-auditor $AUDITOR_PUB $AUDITOR_URL "$CURRENCY Auditor" \
           upload &> taler-exchange-offline-auditor.log
         echo "OK"
     fi
 
     echo -n "Checking /keys "
+    OK="0"
     for n in $(seq 1 3)
     do
         echo -n "."
-        OK=0
-        wget --tries=1 --timeout=1 \
-             http://localhost:8081/keys \
-             -o /dev/null -O /dev/null >/dev/null || continue
-        OK=1
+        wget \
+            --tries=1 \
+            --timeout=1 \
+            "http://localhost:8081/keys"; \
+            -o /dev/null \
+            -O /dev/null >/dev/null || continue
+        OK="1"
         break
     done
-    if [ 1 != $OK ]
+    if [ "1" != "$OK" ]
     then
         exit_skip " Failed to setup keys"
     fi
     echo " OK"
 fi
 
-if ["1" = "$START_AUDITOR"]
+if [ "1" = "$START_AUDITOR" ]
 then
     echo -n "Setting up auditor signatures ..."
     taler-auditor-offline -c "$CONF" \
diff --git a/src/util/paths.conf b/src/util/paths.conf
index c1d2194d..3415b709 100644
--- a/src/util/paths.conf
+++ b/src/util/paths.conf
@@ -17,13 +17,13 @@ TALER_HOME = ${TALER_TEST_HOME:-${HOME:-${USERPROFILE}}}
 # for how these should be used.
 
 # Persistent data storage
-TALER_DATA_HOME = ${XDG_DATA_HOME:-$TALER_HOME/.local/share}/taler/
+TALER_DATA_HOME = 
${TALER_TEST_HOME:-${XDG_DATA_HOME:-${TALER_HOME}/.local/share/}/.local/share/}taler/
 
 # Configuration files
-TALER_CONFIG_HOME = ${XDG_CONFIG_HOME:-$TALER_HOME/.config}/taler/
+TALER_CONFIG_HOME = 
${TALER_TEST_HOME:-${XDG_CONFIG_HOME:-${TALER_HOME}/.config/}/.config/}taler/
 
 # Cached data, no big deal if lost
-TALER_CACHE_HOME = ${XDG_CACHE_HOME:-$TALER_HOME/.cache}/taler/
+TALER_CACHE_HOME = 
${TALER_TEST_HOME:-${XDG_CACHE_HOME:-${TALER_HOME}/.cache/}/.cache/}taler/
 
 # Runtime data (always lost on system boot)
 TALER_RUNTIME_DIR = ${TMPDIR:-${TMP:-/tmp}}/taler-system-runtime/

-- 
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]