gnunet-svn
[Top][All Lists]
Advanced

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

[taler-grid5k] 94/141: add merchant configuration


From: gnunet
Subject: [taler-grid5k] 94/141: add merchant configuration
Date: Thu, 18 Nov 2021 14:50:35 +0100

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

marco-boss pushed a commit to branch master
in repository grid5k.

commit 3114373d633e270d29b11ff71221cf3091b8701f
Author: Boss Marco <bossm8@bfh.ch>
AuthorDate: Wed Nov 3 20:07:42 2021 +0100

    add merchant configuration
---
 configs/etc/taler/conf.d/merchant.conf             |  8 +++
 configs/etc/taler/secrets/merchant-db.secret.conf  |  3 +
 .../systemd/system/taler-merchant-httpd.service    | 11 ++++
 experiment/scripts/createusers.sh                  | 69 ++++++++++++++++------
 experiment/scripts/merchant.sh                     | 13 ++++
 5 files changed, 86 insertions(+), 18 deletions(-)

diff --git a/configs/etc/taler/conf.d/merchant.conf 
b/configs/etc/taler/conf.d/merchant.conf
new file mode 100644
index 0000000..6293e34
--- /dev/null
+++ b/configs/etc/taler/conf.d/merchant.conf
@@ -0,0 +1,8 @@
+@inline-secret@ merchantdb-postgres ../secrets/merchant-db.secret.conf
+
+[merchant]
+DATABASE = postgres
+SERVE = TCP
+PORT = 80
+
+@inline-matching@ ../merchant-overrides.conf
diff --git a/configs/etc/taler/secrets/merchant-db.secret.conf 
b/configs/etc/taler/secrets/merchant-db.secret.conf
new file mode 100644
index 0000000..3160b13
--- /dev/null
+++ b/configs/etc/taler/secrets/merchant-db.secret.conf
@@ -0,0 +1,3 @@
+[merchantdb-postgres]
+
+CONFIG=postgres:///taler-merchant
diff --git a/configs/usr/lib/systemd/system/taler-merchant-httpd.service 
b/configs/usr/lib/systemd/system/taler-merchant-httpd.service
new file mode 100644
index 0000000..4d98529
--- /dev/null
+++ b/configs/usr/lib/systemd/system/taler-merchant-httpd.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=GNU Taler payment system merchant backend
+
+[Service]
+User=taler-merchant-httpd
+Type=simple
+Restart=on-failure
+ExecStart=/usr/bin/taler-merchant-httpd -c /etc/taler/taler.conf -L DEBUG
+
+[Install]
+WantedBy=multi-user.target
diff --git a/experiment/scripts/createusers.sh 
b/experiment/scripts/createusers.sh
index 535f198..1efcf7b 100755
--- a/experiment/scripts/createusers.sh
+++ b/experiment/scripts/createusers.sh
@@ -8,11 +8,16 @@ TALER_HOME="/var/lib/taler"
 GROUPNAME=taler-exchange-secmod
 DBGROUPNAME=taler-exchange-db
 EUSERNAME=taler-exchange-httpd
+EGROUPNAME=www-data
+OUSERNAME=taler-exchange-offline
+OGROUPNAME=taler-exchange-offline
 CLOSERUSERNAME=taler-exchange-closer
 RSECUSERNAME=taler-exchange-secmod-rsa
 ESECUSERNAME=taler-exchange-secmod-eddsa
 AGGRUSERNAME=taler-exchange-aggregator
 WIREUSERNAME=taler-exchange-wire
+MERCHUSERNAME=taler-merchant-httpd
+MERCHGROUPNAME=www-data
 
 # Create taler groups as needed
 if ! getent group ${GROUPNAME} >/dev/null; then
@@ -21,47 +26,69 @@ fi
 if ! getent group ${DBGROUPNAME} >/dev/null; then
   addgroup --quiet --system ${DBGROUPNAME}
 fi
-if ! getent group taler-exchange-offline >/dev/null; then
-  addgroup --quiet --system taler-exchange-offline
+if ! getent group ${OGROUPNAME} >/dev/null; then
+  addgroup --quiet --system ${OGROUPNAME}
 fi
 
 # Create taler users if needed
 if ! getent passwd ${EUSERNAME} >/dev/null; then
-  adduser --quiet --system --no-create-home --ingroup ${GROUPNAME} --home 
${TALER_HOME} ${EUSERNAME}
+  adduser --quiet --system \
+    --no-create-home \
+    --ingroup ${GROUPNAME} \
+    --home ${TALER_HOME} ${EUSERNAME}
   adduser --quiet ${EUSERNAME} ${DBGROUPNAME}
 fi
 if ! getent passwd ${RSECUSERNAME} >/dev/null; then
-  adduser --quiet --system --no-create-home --ingroup ${GROUPNAME} --home 
${TALER_HOME} ${RSECUSERNAME}
+  adduser --quiet --system \
+    --no-create-home \
+    --ingroup ${GROUPNAME} \
+    --home ${TALER_HOME} ${RSECUSERNAME}
 fi
 if ! getent passwd ${ESECUSERNAME} >/dev/null; then
-  adduser --quiet --system --no-create-home --ingroup ${GROUPNAME} --home 
${TALER_HOME} ${ESECUSERNAME}
+  adduser --quiet --system \
+    --no-create-home \
+    --ingroup ${GROUPNAME} \
+    --home ${TALER_HOME} ${ESECUSERNAME}
 fi
 if ! getent passwd ${WIREUSERNAME} >/dev/null; then
-  adduser --quiet --system --no-create-home --home ${TALER_HOME} 
${WIREUSERNAME}
+  adduser --quiet --system \
+    --no-create-home \
+    --home ${TALER_HOME} ${WIREUSERNAME}
   adduser --quiet ${WIREUSERNAME} ${DBGROUPNAME}
 fi
 if ! getent passwd ${CLOSERUSERNAME} >/dev/null; then
-  adduser --quiet --system --no-create-home --home ${TALER_HOME} 
${CLOSERUSERNAME}
+  adduser --quiet --system \
+    --no-create-home \
+    --home ${TALER_HOME} ${CLOSERUSERNAME}
   adduser --quiet ${CLOSERUSERNAME} ${DBGROUPNAME}
 fi
 if ! getent passwd ${AGGRUSERNAME} >/dev/null; then
-  adduser --quiet --system --no-create-home --home ${TALER_HOME} 
${AGGRUSERNAME}
+  adduser --quiet --system \
+    --no-create-home \
+    --home ${TALER_HOME} ${AGGRUSERNAME}
   adduser --quiet ${AGGRUSERNAME} ${DBGROUPNAME}
 fi
-if ! getent passwd taler-exchange-offline >/dev/null; then
+if ! getent passwd ${OUSERNAME} >/dev/null; then
   adduser --quiet --system \
-    --ingroup taler-exchange-offline \
+    --ingroup ${OGROUPNAME} \
     --no-create-home \
-    --home ${TALER_HOME} taler-exchange-offline
+    --home ${TALER_HOME} ${OUSERNAME}
+fi
+if ! getent passwd ${MERCHUSERNAME} >/dev/null; then
+  adduser --quiet --system \
+    --no-create-home \
+    --ingroup ${MERCHGROUPNAME} \
+    --home ${TALER_HOME} ${MERCHUSERNAME}
 fi
 
-install -d /var/lib/taler/exchange-offline -m 0700 -o taler-exchange-offline 
-g taler-exchange-offline 
-install -d /run/taler/exchange-secmod-rsa -m 0755 -o taler-exchange-secmod-rsa 
-g taler-exchange-secmod
-install -d /run/taler/exchange-secmod-eddsa -m 0755 -o 
taler-exchange-secmod-eddsa -g taler-exchange-secmod
-install -d /run/taler/exchange-httpd -m 0750 -o taler-exchange-httpd -g 
www-data
-install -d /var/lib/taler/exchange-offline -m 0700 -o taler-exchange-offline 
-g taler-exchange-offline
-install -d /var/lib/taler/exchange-secmod-rsa -m 0700 -o 
taler-exchange-secmod-rsa -g taler-exchange-secmod
-install -d /var/lib/taler/exchange-secmod-eddsa -m 0700 -o 
taler-exchange-secmod-eddsa -g taler-exchange-secmod
+install -d /var/lib/taler/exchange-offline -m 0700 -o ${OUSERNAME} -g 
${OGROUPNAME}
+install -d /run/taler/exchange-secmod-rsa -m 0755 -o ${RSECUSERNAME} -g 
${GROUPNAME}
+install -d /run/taler/exchange-secmod-eddsa -m 0755 -o ${ESECUSERNAME} -g 
${GROUPNAME}
+install -d /run/taler/exchange-httpd -m 0750 -o ${EUSERNAME} -g ${EGROUPNAME}
+install -d /var/lib/taler/exchange-offline -m 0700 -o ${OUSERNAME} -g 
${OGROUPNAME}
+install -d /var/lib/taler/exchange-secmod-rsa -m 0700 -o ${RSECUSERNAME} -g 
${GROUPNAME}
+install -d /var/lib/taler/exchange-secmod-eddsa -m 0700 -o ${ESECUSERNAME} -g 
${GROUPNAME}
+install -d /run/taler/merchant-httpd -m 0755 -o ${MERCHUSERNAME} -g 
${MERCHGROUPNAME}
 
 if ! dpkg-statoverride --list 
/etc/taler/secrets/exchange-accountcredentials.secret.conf >/dev/null 2>&1; then
   dpkg-statoverride --add --update \
@@ -75,4 +102,10 @@ if ! dpkg-statoverride --list 
/etc/taler/secrets/exchange-db.secret.conf >/dev/n
     /etc/taler/secrets/exchange-db.secret.conf
 fi
 
+if ! dpkg-statoverride --list /etc/taler/secrets/merchant-db.secret.conf 
>/dev/null 2>&1; then
+  dpkg-statoverride --add --update \
+    ${MERCHUSERNAME} root 460 \
+    /etc/taler/secrets/merchant-db.secret.conf
+fi
+
 exit 0
diff --git a/experiment/scripts/merchant.sh b/experiment/scripts/merchant.sh
index d641160..91f5cdd 100755
--- a/experiment/scripts/merchant.sh
+++ b/experiment/scripts/merchant.sh
@@ -4,3 +4,16 @@ set -eux
 source ~/scripts/helpers.sh
 
 restart_rsyslog
+
+systemctl restart postgres
+
+su postgres << EOF
+psql postgres -tAc "SELECT 1 FROM pg_roles WHERE 
rolname='taler-merchant-httpd'" | \
+  grep -q 1 || \
+  createuser taler-merchant-httpd
+psql -tAc "SELECT 1 FROM pg_database WHERE datname='taler-merchant'" | \
+  grep -q 1 || \
+  createdb -O taler-merchant-httpd taler-merchant
+EOF
+
+systemctl restart taler-merchant-httpd

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