diff options
author | Christian Grothoff <christian@grothoff.org> | 2024-01-13 15:44:05 +0100 |
---|---|---|
committer | Christian Grothoff <christian@grothoff.org> | 2024-01-13 15:44:05 +0100 |
commit | 495b10e34d19319186494d83b0dbb5ec3dde4dc9 (patch) | |
tree | b10b808c10bb765ada21c820f9f3271b08a08966 | |
parent | 9afe2f07bf4405aa4645bdaeb294d15c1c3f94a6 (diff) | |
download | taler-mdb-495b10e34d19319186494d83b0dbb5ec3dde4dc9.tar.gz taler-mdb-495b10e34d19319186494d83b0dbb5ec3dde4dc9.tar.bz2 taler-mdb-495b10e34d19319186494d83b0dbb5ec3dde4dc9.zip |
misc improvements for error handling
-rw-r--r-- | .gitignore | 2 | ||||
-rwxr-xr-x | contrib/taler-mdb-network-check.sh | 7 | ||||
-rwxr-xr-x | contrib/taler-mdb.service | 18 | ||||
-rw-r--r-- | debian/changelog | 8 | ||||
-rw-r--r-- | debian/control | 8 | ||||
-rw-r--r-- | debian/etc/taler-mdb.conf | 24 | ||||
-rw-r--r-- | debian/taler-mdb.config | 10 | ||||
-rw-r--r-- | debian/taler-mdb.postinst | 48 | ||||
-rw-r--r-- | debian/taler-mdb.service | 12 |
9 files changed, 41 insertions, 96 deletions
@@ -27,3 +27,5 @@ build uncrustify.cfg debian/taler-mdb/ debian/taler-mdb.debhelper.log +config.guess +config.sub diff --git a/contrib/taler-mdb-network-check.sh b/contrib/taler-mdb-network-check.sh index 1c809e9..90f1471 100755 --- a/contrib/taler-mdb-network-check.sh +++ b/contrib/taler-mdb-network-check.sh @@ -58,9 +58,6 @@ while getopts ':c:f:ht:' OPTION; do # shellcheck disable=SC2016 echo ' -t $HOSTNAME -- target hostname (required)' ;; - t) - BACKEND_HOSTNAME="$OPTARG" - ;; ?) exit_fail "Unrecognized command line option" ;; @@ -117,6 +114,9 @@ trap childdeath SIGCHLD # shellcheck disable=SC2120 function check_network() { + DEF_BACKEND=$(taler-config -c "$CONF" -s "taler-mdb" -o "BACKEND_BASE_URL") + BACKEND_HOSTNAME=$(echo "$DEF_BACKEND" | awk -F/ '{print $3}') + DNS_HOST=$(grep nameserver /etc/resolv.conf | awk '{print $2}') if ! ping -c1 "$DNS_HOST" &> /dev/null then @@ -134,7 +134,6 @@ function check_network() return fi - DEF_BACKEND=$(taler-config -c "$CONF" -s "taler-mdb" -o "BACKEND_BASE_URL") if echo "$DEF_BACKEND" | grep "https://" > /dev/null then if ! wget --no-check-certificate "${DEF_BACKEND}config" -O /dev/null &> /dev/null diff --git a/contrib/taler-mdb.service b/contrib/taler-mdb.service deleted file mode 100755 index 4c78c61..0000000 --- a/contrib/taler-mdb.service +++ /dev/null @@ -1,18 +0,0 @@ -[Unit] -Description=Start the taler-mdb application to communicate with the VMC -#After=taler-mdb.target -After=network-online.target - -[Service] -WorkingDirectory=/home/pi/taler-mdb -#ExecStart=/home/pi/taler-mdb/src/taler-mdb -t -c /home/pi/taler-mdb/taler.conf -L INFO -ExecStart=/home/pi/showIPoverQR.sh -StandardOutput=inherit -StandardError=inherit -Restart=always -RestartSec=10 -User=root - -[Install] -WantedBy=multi-user.target - diff --git a/debian/changelog b/debian/changelog index 176bc27..2313453 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +taler-mdb (0.9.4-1) unstable; urgency=low + + * Removing unnecessary build dependencies. + * Improving systemd service file packaging. + * Added logic to test network connectivity before launching taler-mdb. + + -- Christian Grothoff <grothoff@gnu.org> Sat, 13 Jan 2024 13:50:12 +0200 + taler-mdb (0.9.4) unstable; urgency=low * First work towards packaging v0.9.4. diff --git a/debian/control b/debian/control index 54b1b9a..436ce57 100644 --- a/debian/control +++ b/debian/control @@ -7,21 +7,19 @@ Build-Depends: automake (>=1.11.1), autopoint, debhelper-compat (= 13), - gettext, libgnunet-dev (>= 0.20), libnfc-dev, libtalerexchange-dev (>= 0.9.3), libtalermerchant-dev (>= 0.9.3), libpq-dev (>=13), - libsqlite3-dev (>=3.8), po-debconf, zlib1g-dev Build-Conflicts: autoconf2.13, automake1.4 Standards-Version: 4.5.0 -Vcs-Git: https://salsa.debian.org/debian/taler-merchant.git -Vcs-browser: https://salsa.debian.org/debian/taler-merchant +Vcs-Git: https://salsa.debian.org/debian/taler-mdb.git +Vcs-browser: https://salsa.debian.org/debian/taler-mdb Homepage: https://taler.net/ Package: taler-mdb @@ -36,4 +34,6 @@ Depends: netbase, ${misc:Depends}, ${shlibs:Depends} +Recommends: + bind9-dnsutils Description: GNU's payment system multi-drop-bus integration. diff --git a/debian/etc/taler-mdb.conf b/debian/etc/taler-mdb.conf index 80d1514..da0a2d2 100644 --- a/debian/etc/taler-mdb.conf +++ b/debian/etc/taler-mdb.conf @@ -1,18 +1,14 @@ # This is a reference configuration. Adjust to your needs! -[taler] -# Which currency do we use? Must match products at the end! -CURRENCY = KUDOS - [taler-mdb] # Where is our backend? -BACKEND-BASE-URL = http://backend.demo.taler.net/ +BACKEND_BASE_URL = http://backend.demo.taler.net/ # Secret key to talk to *all* instances we use. -BACKEND-AUTHORIZATION = ApiKey Sandbox +BACKEND_AUTHORIZATION = "Bearer secret-token:sandbox" # Message to diplay after purchase is completed, -fulfillment-msg = Enjoy your ${PRODUCT_DESCRIPTION} +FULFILLMENT_MSG = Enjoy your ${PRODUCT_DESCRIPTION} # Name of the UART where the MDB connector is reachable. UART_DEVICE = /dev/ttyAMA0 @@ -30,14 +26,18 @@ ESSID = snack #If sold out is enabled, products with description "empty" will be registered as sold out. # Use different "product-" section names for the various products. + [product-sample] # Text to show to the user -description = sample-text +DESCRIPTION = sample-text # How much to charge -price = KUDOS:0.1 +PRICE = KUDOS:0.1 # MDB bus number -number = 31 +NUMBER = 31 + # Optional: use another instance -# instance = http://backend.test.taler.net/instances/foo/ -# NOTE: authorization key of that instance MUST match the one from [taler-mdb]! +# INSTANCE = http://backend.test.taler.net/instances/foo/ + +# Secret key to talk to this instance. +# BACKEND_AUTHORIZATION = "Bearer secret-token:sandbox" diff --git a/debian/taler-mdb.config b/debian/taler-mdb.config deleted file mode 100644 index a1d226f..0000000 --- a/debian/taler-mdb.config +++ /dev/null @@ -1,10 +0,0 @@ -#!/bin/sh - -set -e - -. /usr/share/debconf/confmodule - -db_input medium taler-mdb/autostart || true -db_go - -db_stop diff --git a/debian/taler-mdb.postinst b/debian/taler-mdb.postinst deleted file mode 100644 index c08fb2f..0000000 --- a/debian/taler-mdb.postinst +++ /dev/null @@ -1,48 +0,0 @@ -#!/bin/bash - -set -e - -. /usr/share/debconf/confmodule - -case "${1}" in - configure) - db_version 2.0 - - db_get taler-mdb/autostart - _AUTOSTART="${RET}" # boolean - - db_stop - -cat > "/etc/systemd/system/taler-mdb.service" <<EOF -[Unit] -Description=GNU Taler Multi-Drop-Bus application - -[Service] -EnvironmentFile=/etc/default/taler-mdb -User=root -Type=simple -Restart=on-failure -ExecStart=/usr/bin/taler-mdb -c /etc/taler-mdb.conf -EOF - - systemctl daemon-reload - - - # Cleaning - echo "All done." - - ;; - - abort-upgrade|abort-remove|abort-deconfigure) - - ;; - - *) - echo "postinst called with unknown argument \`${1}'" >&2 - exit 1 - ;; -esac - -#DEBHELPER# - -exit 0 diff --git a/debian/taler-mdb.service b/debian/taler-mdb.service new file mode 100644 index 0000000..4946e41 --- /dev/null +++ b/debian/taler-mdb.service @@ -0,0 +1,12 @@ +[Unit] +Description=GNU Taler Multi-Drop-Bus application + +[Service] +User=root +Type=simple +Restart=on-failure +ExecStart=/usr/bin/taler-mdb-network-check.sh -c /etc/taler-mdb.conf -f "FIXME-show-message-cmd" /usr/bin/taler-mdb -c /etc/taler-mdb.conf +StandardOutput=inherit +StandardError=inherit +Restart=always +RestartSec=10 |