diff options
author | MS <ms@taler.net> | 2023-12-04 22:37:35 +0100 |
---|---|---|
committer | MS <ms@taler.net> | 2023-12-04 22:37:35 +0100 |
commit | aba4f327bdc869013dc15d3c35500f8279911bb9 (patch) | |
tree | 9cf6d4643c3655e4a23dbfe7a7e768daaac53fbf | |
parent | adc9750b9f3673aaafb80a14a05b27196cd86f03 (diff) | |
download | deployment-aba4f327bdc869013dc15d3c35500f8279911bb9.tar.gz deployment-aba4f327bdc869013dc15d3c35500f8279911bb9.tar.bz2 deployment-aba4f327bdc869013dc15d3c35500f8279911bb9.zip |
config generation
avoid echo in favor of taler-config and cat << EOF: no
escaping required now.
-rwxr-xr-x | netzbon/config_libeufin_bank.sh | 49 | ||||
-rwxr-xr-x | netzbon/setup-exchange.sh | 71 |
2 files changed, 55 insertions, 65 deletions
diff --git a/netzbon/config_libeufin_bank.sh b/netzbon/config_libeufin_bank.sh index 2adba40..7e3ac34 100755 --- a/netzbon/config_libeufin_bank.sh +++ b/netzbon/config_libeufin_bank.sh @@ -48,41 +48,32 @@ say "Configure the bank with ${CURRENCY}..." # TODO is 20000000 big enough for admin dbt limit -if ! taler-config -s "libeufin-bank" -o code &> /dev/null -then cat << EOF >> /etc/libeufin/libeufin-bank.conf -[libeufin-bank] -CURRENCY = ${CURRENCY} -DEFAULT_EXCHANGE = ${PROTO}://exchange.${DOMAIN_NAME} -DEFAULT_ADMIN_DEBT_LIMIT = ${CURRENCY}:20000000 -DEFAULT_CUSTOMER_DEBT_LIMIT = ${CURRENCY}:0 -SERVE = tcp -PORT = ${BANK_PORT} -ALLOW_CONVERSION = yes -FIAT_CURRENCY = ${FIAT_CURRENCY} -TAN_SMS = libeufin-tan-sms.sh -TAN_EMAIL = libeufin-tan-email.sh -EOF -fi +bank_cfg () { + taler-config -c /etc/libeufin/libeufin-bank.conf -s libeufin-bank -o $1 -V $2 +} -if ! taler-config -s "currency-netzbon" -o code &> /dev/null -then cat << EOF >> /etc/libeufin/libeufin-bank.conf -[currency-netzbon] -ENABLED = YES -name = "NetzBon" -code = "NETZBON" -fractional_input_digits = 2 -fractional_normal_digits = 2 -fractional_trailing_zero_digits = 2 -alt_unit_names = {"0":"NETZBON"} -EOF -fi +bank_cfg -o CURRENCY ${CURRENCY} +bank_cfg -o DEFAULT_EXCHANGE ${PROTO}://exchange.${DOMAIN_NAME} +bank_cfg -o DEFAULT_ADMIN_DEBT_LIMIT ${CURRENCY}:20000000 +bank_cfg -o DEFAULT_CUSTOMER_DEBT_LIMIT ${CURRENCY}:0 +bank_cfg -o SERVE tcp +bank_cfg -o PORT ${BANK_PORT} +bank_cfg -o ALLOW_CONVERSION yes +bank_cfg -o FIAT_CURRENCY ${FIAT_CURRENCY} +bank_cfg -o TAN_SMS libeufin-tan-sms.sh +bank_cfg -o TAN_EMAIL libeufin-tan-email.sh + +taler-config \ + -c /etc/libeufin/libeufin-bank.conf \ + -s libeufin-bankdb-postgres \ + -o config \ + -V postgres:///libeufin say "Setting up libeufin-bank admin account" sudo -u "libeufin-bank" libeufin-bank passwd admin "${BANK_ADMIN_PASSWORD}" say "Setting up SPA configuration..." -echo "settings = { bankName: \"${BANK_NAME}\" }" - >/etc/libeufin/settings.js +echo "settings = { bankName: \"${BANK_NAME}\" }" >/etc/libeufin/settings.js say "DONE" say "Create exchange account..." diff --git a/netzbon/setup-exchange.sh b/netzbon/setup-exchange.sh index 614766e..afbf8df 100755 --- a/netzbon/setup-exchange.sh +++ b/netzbon/setup-exchange.sh @@ -102,45 +102,44 @@ say "Configuring exchange" export EXCHANGE_BASE_URL="$PROTO://exchange.${DOMAIN_NAME}/" -# Generate /etc/taler/conf.d/setup.conf -echo -e "[taler]\n"\ - "CURRENCY=${CURRENCY}\n"\ - "CURRENCY_ROUND_UNIT=${CURRENCY}:0.01\n"\ - "\n[exchange]\n"\ - "AML_THRESHOLD=${CURRENCY}:1000000\n"\ - "MASTER_PUBLIC_KEY=${MASTER_PUBLIC_KEY}\n"\ - "BASE_URL=${EXCHANGE_BASE_URL}\n"\ - "\n[merchant-exchange-${DOMAIN_NAME}]\n"\ - "MASTER_KEY=${MASTER_PUBLIC_KEY}\n"\ - "CURRENCY=${CURRENCY}\n"\ - "EXCHANGE_BASE_URL=${EXCHANGE_BASE_URL}\n"\ - "\n[exchange-account-default]\n"\ - "PAYTO_URI=${EXCHANGE_PAYTO}\n"\ - "ENABLE_DEBIT=YES\n"\ - "ENABLE_CREDIT=YES\n"\ - "@inline-secret@ exchange-accountcredentials-default ../secrets/exchange-accountcredentials-default.secret.conf\n"\ - "\n[currency-netzbon]\n"\ - "ENABLED=YES\n"\ - "name=NetzBon\n"\ - "code=NETZBON\n"\ - "fractional_input_digits=2\n"\ - "fractional_normal_digits=2\n"\ - "fractional_trailing_zero_digits=2\n"\ - "alt_unit_names = {\"0\":\"NETZBON\"}\n"\ - >/etc/taler/conf.d/setup.conf - -echo -e "[exchangedb-postgres]\n" \ - "CONFIG=postgres:///exchange\n" \ - >/etc/taler/secrets/exchange-db.secret.conf +cat << EOF > /etc/taler/conf.d/setup.conf +[taler] +CURRENCY=${CURRENCY} +CURRENCY_ROUND_UNIT=${CURRENCY}:0.01 + +[exchange] +AML_THRESHOLD=${CURRENCY}:1000000 +MASTER_PUBLIC_KEY=${MASTER_PUBLIC_KEY} +BASE_URL=${EXCHANGE_BASE_URL} + +[merchant-exchange-${DOMAIN_NAME}] +MASTER_KEY=${MASTER_PUBLIC_KEY} +CURRENCY=${CURRENCY} +EXCHANGE_BASE_URL=${EXCHANGE_BASE_URL} + +[exchange-account-default] +PAYTO_URI=${EXCHANGE_PAYTO} +ENABLE_DEBIT=YES +ENABLE_CREDIT=YES +@inline-secret@ exchange-accountcredentials-default ../secrets/exchange-accountcredentials-default.secret.conf +EOF + +cat << EOF > /etc/taler/secrets/exchange-db.secret.conf +[exchangedb-postgres] +CONFIG=postgres:///exchange +EOF + chmod 440 /etc/taler/secrets/exchange-db.secret.conf chown root:taler-exchange-db /etc/taler/secrets/exchange-db.secret.conf -echo -e "[exchange-accountcredentials-default]\n"\ - "WIRE_GATEWAY_URL=${EXCHANGE_WIRE_GATEWAY_URL}\n"\ - "WIRE_GATEWAY_AUTH_METHOD=basic\n"\ - "USERNAME=Exchange\n"\ - "PASSWORD=${BANK_EXCHANGE_PASSWORD}\n"\ - >/etc/taler/secrets/exchange-accountcredentials-default.secret.conf +cat << EOF > /etc/taler/secrets/exchange-accountcredentials-default.secret.conf + +[exchange-accountcredentials-default] +WIRE_GATEWAY_URL=${EXCHANGE_WIRE_GATEWAY_URL} +WIRE_GATEWAY_AUTH_METHOD=basic +USERNAME=Exchange +PASSWORD=${BANK_EXCHANGE_PASSWORD} +EOF chmod 400 /etc/taler/secrets/exchange-accountcredentials-default.secret.conf chown taler-exchange-wire:taler-exchange-db /etc/taler/secrets/exchange-accountcredentials-default.secret.conf |