[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[taler-grid5k] 20/48: add auditor in db monitoring
From: |
gnunet |
Subject: |
[taler-grid5k] 20/48: add auditor in db monitoring |
Date: |
Sat, 28 May 2022 12:11:40 +0200 |
This is an automated email from the git hooks/post-receive script.
marco-boss pushed a commit to branch master
in repository grid5k.
commit 8e8e8da72fc774a41b29c317a06e5b31d1c05291
Author: Boss Marco <bossm8@bfh.ch>
AuthorDate: Sat May 14 14:22:26 2022 +0200
add auditor in db monitoring
---
additional/grafana/transactions.json | 662 +++++++++--------------
additional/recover/run.sh | 24 +-
additional/rspecs/taler.many.with-auditor.rspec | 459 ++++++++++++++++
additional/rspecs/taler.minial.rspec | 21 +-
configs/etc/default/prometheus-postgres-exporter | 2 +-
experiment/scripts/auditor.sh | 20 +-
experiment/scripts/benchmark.sh | 2 +-
experiment/scripts/monitor.sh | 7 +
8 files changed, 742 insertions(+), 455 deletions(-)
diff --git a/additional/grafana/transactions.json
b/additional/grafana/transactions.json
index 13aaf09..8a17208 100644
--- a/additional/grafana/transactions.json
+++ b/additional/grafana/transactions.json
@@ -1137,11 +1137,11 @@
},
"id": 22,
"panels": [],
- "title": "Total TPS (Successful Requests)",
+ "title": "Total TPS",
"type": "row"
},
{
- "description": "Total successful (200) requests to /deposit and
/withdraw per second, measured at the nginx proxy in a 2 minute interval.",
+ "description": "Total successful (200) requests to /deposit and
/withdraw per second, measured at the nginx proxy in a 2 minute interval. Or if
with batch withdraw then the number of successful requests to /deposit plus the
number of coins returned in a batch request (measured by the exchange).",
"fieldConfig": {
"defaults": {
"color": {
@@ -1164,8 +1164,8 @@
"overrides": []
},
"gridPos": {
- "h": 9,
- "w": 5,
+ "h": 10,
+ "w": 10,
"x": 0,
"y": 6
},
@@ -1190,8 +1190,8 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
- "exemplar": true,
- "expr": "sum
(rate(taler_requests_total_requests{endpoint=~\"reserves-withdraw|coins-deposit\",
status=\"200\"} [2m]))",
+ "exemplar": false,
+ "expr": "sum
(rate(taler_requests_total_requests{endpoint=\"coins-deposit\", status=\"200\"}
[2m])) +
sum(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\"}[2m]) or
rate(taler_exchange_batch_withdraw_num_coins{} [2m]))",
"interval": "",
"legendFormat": "",
"refId": "A"
@@ -1202,15 +1202,44 @@
"type": "gauge"
},
{
- "description": "Total successful (200) requests per second to /withdraw
per second, measured at the nginx proxy in a 5 minute interval.",
+ "description": "Total number of successful requests to /deposit and
/withdraw per second, measured at the nginx proxy and over a 2 minute interval.
Or if with batch withdraw then the number of successful requests to /deposit
plus the number of coins returned in a batch request (measured by the
exchange).",
"fieldConfig": {
"defaults": {
"color": {
- "mode": "continuous-RdYlGr"
+ "mode": "palette-classic"
+ },
+ "custom": {
+ "axisLabel": "TPS",
+ "axisPlacement": "auto",
+ "barAlignment": 0,
+ "drawStyle": "line",
+ "fillOpacity": 47,
+ "gradientMode": "opacity",
+ "hideFrom": {
+ "legend": false,
+ "tooltip": false,
+ "viz": false
+ },
+ "lineInterpolation": "smooth",
+ "lineStyle": {
+ "fill": "solid"
+ },
+ "lineWidth": 1,
+ "pointSize": 5,
+ "scaleDistribution": {
+ "type": "linear"
+ },
+ "showPoints": "never",
+ "spanNulls": false,
+ "stacking": {
+ "group": "A",
+ "mode": "none"
+ },
+ "thresholdsStyle": {
+ "mode": "off"
+ }
},
"mappings": [],
- "max": 100000,
- "min": 0,
"thresholds": {
"mode": "absolute",
"steps": [
@@ -1219,33 +1248,29 @@
"value": null
}
]
- }
+ },
+ "unit": "none"
},
"overrides": []
},
"gridPos": {
- "h": 3,
- "w": 5,
- "x": 5,
+ "h": 9,
+ "w": 14,
+ "x": 10,
"y": 6
},
- "id": 4,
+ "id": 34,
"options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
+ "legend": {
+ "calcs": [],
+ "displayMode": "hidden",
+ "placement": "bottom"
},
- "text": {},
- "textMode": "auto"
+ "tooltip": {
+ "mode": "single",
+ "sort": "none"
+ }
},
- "pluginVersion": "8.4.6",
"targets": [
{
"datasource": {
@@ -1253,19 +1278,18 @@
"uid": "${DS_PROMETHEUS}"
},
"exemplar": false,
- "expr": "sum
(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\",
status=\"200\"} [5m] ))",
- "instant": true,
+ "expr":
"sum(rate(taler_requests_total_requests{endpoint=\"coins-deposit\",
status=\"200\"}[2m])) +
sum(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\"} [2m]) or
rate(taler_exchange_batch_withdraw_num_coins{} [2m]))",
"interval": "",
- "legendFormat": "",
+ "intervalFactor": 2,
+ "legendFormat": "TPS",
"refId": "A"
}
],
- "title": "Withdrawals per Second ",
- "transformations": [],
- "type": "stat"
+ "title": "TPS History",
+ "type": "timeseries"
},
{
- "description": "Total number of successful requests to /deposit and
/withdraw per second, measured at the nginx proxy and over a 2 minute
interval.",
+ "description": "The TPS over Time per operation. For deposit its the
number of successful requests to /deposit. For withdraw it may be the number of
successful requests to /withdraw or the number of coins returned in a batch
request.",
"fieldConfig": {
"defaults": {
"color": {
@@ -1276,27 +1300,24 @@
"axisPlacement": "auto",
"barAlignment": 0,
"drawStyle": "line",
- "fillOpacity": 47,
- "gradientMode": "opacity",
+ "fillOpacity": 22,
+ "gradientMode": "none",
"hideFrom": {
"legend": false,
"tooltip": false,
"viz": false
},
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
+ "lineInterpolation": "linear",
"lineWidth": 1,
"pointSize": 5,
"scaleDistribution": {
"type": "linear"
},
- "showPoints": "never",
+ "showPoints": "auto",
"spanNulls": false,
"stacking": {
"group": "A",
- "mode": "none"
+ "mode": "normal"
},
"thresholdsStyle": {
"mode": "off"
@@ -1317,16 +1338,16 @@
"overrides": []
},
"gridPos": {
- "h": 9,
+ "h": 10,
"w": 14,
"x": 10,
- "y": 6
+ "y": 15
},
- "id": 34,
+ "id": 76,
"options": {
"legend": {
"calcs": [],
- "displayMode": "hidden",
+ "displayMode": "list",
"placement": "bottom"
},
"tooltip": {
@@ -1340,15 +1361,26 @@
"type": "prometheus",
"uid": "${DS_PROMETHEUS}"
},
- "exemplar": true,
- "expr":
"sum(rate(taler_requests_total_requests{endpoint=~\"reserves-withdraw|coins-deposit\",
status=\"200\"}[2m]))",
+ "exemplar": false,
+ "expr":
"sum(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\",
status=\"200\"} [2m]) or rate(taler_exchange_batch_withdraw_num_coins{} [2m]))",
"interval": "",
- "intervalFactor": 2,
- "legendFormat": "TPS",
+ "legendFormat": "Withdraw",
"refId": "A"
+ },
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "exemplar": false,
+ "expr":
"sum(rate(taler_requests_total_requests{endpoint=\"coins-deposit\",
status=\"200\"}[2m]))",
+ "hide": false,
+ "interval": "",
+ "legendFormat": "Deposit",
+ "refId": "B"
}
],
- "title": "TPS History",
+ "title": "TPS History by Transaction",
"type": "timeseries"
},
{
@@ -1376,8 +1408,8 @@
"gridPos": {
"h": 3,
"w": 5,
- "x": 5,
- "y": 9
+ "x": 0,
+ "y": 16
},
"id": 30,
"options": {
@@ -1414,6 +1446,141 @@
"transformations": [],
"type": "stat"
},
+ {
+ "description": "Total successful (200) requests per second to /withdraw
per second, measured at the nginx proxy in a 5 minute interval. Or if with
batch withdraw then the the number of coins returned in a batch request
(measured by the exchange).",
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "continuous-RdYlGr"
+ },
+ "mappings": [],
+ "max": 100000,
+ "min": 0,
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 3,
+ "w": 5,
+ "x": 5,
+ "y": 16
+ },
+ "id": 4,
+ "options": {
+ "colorMode": "none",
+ "graphMode": "none",
+ "justifyMode": "center",
+ "orientation": "auto",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": false
+ },
+ "text": {},
+ "textMode": "auto"
+ },
+ "pluginVersion": "8.4.6",
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "exemplar": false,
+ "expr": "sum
(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\",
status=\"200\"} [5m]) or rate(taler_exchange_batch_withdraw_num_coins{} [2m]))",
+ "instant": true,
+ "interval": "",
+ "legendFormat": "",
+ "refId": "A"
+ }
+ ],
+ "title": "Withdrawals per Second ",
+ "transformations": [],
+ "type": "stat"
+ },
+ {
+ "fieldConfig": {
+ "defaults": {
+ "color": {
+ "mode": "thresholds"
+ },
+ "mappings": [
+ {
+ "options": {
+ "0": {
+ "index": 0,
+ "text": "Normal"
+ },
+ "1": {
+ "index": 1,
+ "text": "Batch"
+ }
+ },
+ "type": "value"
+ }
+ ],
+ "thresholds": {
+ "mode": "absolute",
+ "steps": [
+ {
+ "color": "green",
+ "value": null
+ }
+ ]
+ }
+ },
+ "overrides": []
+ },
+ "gridPos": {
+ "h": 3,
+ "w": 3,
+ "x": 0,
+ "y": 19
+ },
+ "id": 78,
+ "options": {
+ "colorMode": "none",
+ "graphMode": "none",
+ "justifyMode": "auto",
+ "orientation": "auto",
+ "reduceOptions": {
+ "calcs": [
+ "lastNotNull"
+ ],
+ "fields": "",
+ "values": false
+ },
+ "textMode": "auto"
+ },
+ "pluginVersion": "8.4.6",
+ "targets": [
+ {
+ "datasource": {
+ "type": "prometheus",
+ "uid": "${DS_PROMETHEUS}"
+ },
+ "exemplar": false,
+ "expr":
"(sum(rate(taler_requests_total_requests{endpoint=\"reserves-batch-withdraw\"}[5s]))
or vector(0)) > bool 0",
+ "instant": true,
+ "interval": "",
+ "legendFormat": "",
+ "refId": "A"
+ }
+ ],
+ "title": "Withdraw Operation",
+ "type": "stat"
+ },
{
"description": "",
"fieldConfig": {
@@ -1440,9 +1607,9 @@
},
"gridPos": {
"h": 3,
- "w": 5,
- "x": 5,
- "y": 12
+ "w": 4,
+ "x": 3,
+ "y": 19
},
"id": 54,
"options": {
@@ -1468,7 +1635,7 @@
"uid": "${DS_PROMETHEUS}"
},
"exemplar": false,
- "expr":
"(sum(rate(taler_requests_total_requests{endpoint=\"coins-deposit\",
status=\"200\"} [5m]))) / (sum
(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\",
status=\"200\"} [5m])))",
+ "expr":
"(sum(rate(taler_requests_total_requests{endpoint=\"coins-deposit\",
status=\"200\"} [5m]))) / (sum
(rate(taler_requests_total_requests{endpoint=\"reserves-withdraw\",
status=\"200\"} [5m]) or rate(taler_exchange_batch_withdraw_num_coins{}
[2m])))",
"instant": true,
"interval": "",
"legendFormat": "",
@@ -1484,354 +1651,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 15
- },
- "id": 66,
- "panels": [
- {
- "description": "Total successful (200) requests to /deposit and
/withdraw per second, measured at the nginx proxy in a 2 minute interval.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-RdYlGr"
- },
- "mappings": [],
- "max": 100000,
- "min": 0,
- "noValue": "0",
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 5,
- "x": 0,
- "y": 16
- },
- "id": 68,
- "options": {
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "showThresholdLabels": false,
- "showThresholdMarkers": true,
- "text": {}
- },
- "pluginVersion": "8.4.6",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "exemplar": true,
- "expr": "sum
(rate(taler_requests_total_requests{endpoint=~\"reserves-batch-withdraw|coins-deposit\",
status=\"200\"} [2m]))",
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Current TPS ",
- "transformations": [],
- "type": "gauge"
- },
- {
- "description": "Total successful (200) requests per second to
/withdraw per second, measured at the nginx proxy in a 5 minute interval.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-RdYlGr"
- },
- "mappings": [],
- "max": 100000,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 5,
- "x": 5,
- "y": 16
- },
- "id": 71,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.4.6",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "exemplar": false,
- "expr": "sum
(rate(taler_requests_total_requests{endpoint=\"reserves-batch-withdraw\",
status=\"200\"} [5m] ))",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Withdrawals per Second ",
- "transformations": [],
- "type": "stat"
- },
- {
- "description": "Total number of successful requests to /deposit and
/withdraw per second, measured at the nginx proxy and over a 2 minute
interval.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "palette-classic"
- },
- "custom": {
- "axisLabel": "TPS",
- "axisPlacement": "auto",
- "barAlignment": 0,
- "drawStyle": "line",
- "fillOpacity": 47,
- "gradientMode": "opacity",
- "hideFrom": {
- "legend": false,
- "tooltip": false,
- "viz": false
- },
- "lineInterpolation": "smooth",
- "lineStyle": {
- "fill": "solid"
- },
- "lineWidth": 1,
- "pointSize": 5,
- "scaleDistribution": {
- "type": "linear"
- },
- "showPoints": "never",
- "spanNulls": false,
- "stacking": {
- "group": "A",
- "mode": "none"
- },
- "thresholdsStyle": {
- "mode": "off"
- }
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- }
- ]
- },
- "unit": "none"
- },
- "overrides": []
- },
- "gridPos": {
- "h": 9,
- "w": 14,
- "x": 10,
- "y": 16
- },
- "id": 69,
- "options": {
- "legend": {
- "calcs": [],
- "displayMode": "hidden",
- "placement": "bottom"
- },
- "tooltip": {
- "mode": "single",
- "sort": "none"
- }
- },
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "exemplar": true,
- "expr":
"sum(rate(taler_requests_total_requests{endpoint=~\"reserves-batch-withdraw|coins-deposit\",
status=\"200\"}[2m]))",
- "interval": "",
- "intervalFactor": 2,
- "legendFormat": "TPS",
- "refId": "A"
- }
- ],
- "title": "TPS History",
- "type": "timeseries"
- },
- {
- "description": "Total successful (200) requests to /deposit per
second, measured at the nginx proxy in a 5 minute interval.",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "continuous-RdYlGr"
- },
- "mappings": [],
- "max": 100000,
- "min": 0,
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 5,
- "x": 5,
- "y": 19
- },
- "id": 72,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "center",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.4.6",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "exemplar": false,
- "expr": "sum
(rate(taler_requests_total_requests{endpoint=\"coins-deposit\", status=\"200\"}
[5m] ))",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Payments per Second",
- "transformations": [],
- "type": "stat"
- },
- {
- "description": "",
- "fieldConfig": {
- "defaults": {
- "color": {
- "mode": "thresholds"
- },
- "mappings": [],
- "thresholds": {
- "mode": "absolute",
- "steps": [
- {
- "color": "green"
- },
- {
- "color": "red",
- "value": 80
- }
- ]
- }
- },
- "overrides": []
- },
- "gridPos": {
- "h": 3,
- "w": 5,
- "x": 5,
- "y": 22
- },
- "id": 70,
- "options": {
- "colorMode": "none",
- "graphMode": "none",
- "justifyMode": "auto",
- "orientation": "auto",
- "reduceOptions": {
- "calcs": [
- "lastNotNull"
- ],
- "fields": "",
- "values": false
- },
- "text": {},
- "textMode": "auto"
- },
- "pluginVersion": "8.4.6",
- "targets": [
- {
- "datasource": {
- "type": "prometheus",
- "uid": "${DS_PROMETHEUS}"
- },
- "exemplar": false,
- "expr":
"(sum(rate(taler_requests_total_requests{endpoint=\"coins-deposit\",
status=\"200\"} [5m]))) / (sum
(rate(taler_requests_total_requests{endpoint=\"reserves-batch-withdraw\",
status=\"200\"} [5m])))",
- "instant": true,
- "interval": "",
- "legendFormat": "",
- "refId": "A"
- }
- ],
- "title": "Payments / Withdraw",
- "type": "stat"
- }
- ],
- "title": "Total TPS (Batch Withdraw)",
- "type": "row"
- },
- {
- "collapsed": true,
- "gridPos": {
- "h": 1,
- "w": 24,
- "x": 0,
- "y": 16
+ "y": 25
},
"id": 20,
"panels": [
@@ -1865,7 +1685,7 @@
"h": 9,
"w": 5,
"x": 0,
- "y": 17
+ "y": 26
},
"id": 14,
"options": {
@@ -1926,7 +1746,7 @@
"h": 3,
"w": 5,
"x": 5,
- "y": 17
+ "y": 26
},
"id": 16,
"options": {
@@ -2020,7 +1840,7 @@
"h": 9,
"w": 14,
"x": 10,
- "y": 17
+ "y": 26
},
"id": 26,
"options": {
@@ -2074,7 +1894,7 @@
"h": 3,
"w": 5,
"x": 5,
- "y": 20
+ "y": 29
},
"id": 6,
"options": {
@@ -2141,7 +1961,7 @@
"h": 3,
"w": 5,
"x": 5,
- "y": 23
+ "y": 32
},
"id": 12,
"options": {
@@ -2185,7 +2005,7 @@
"h": 1,
"w": 24,
"x": 0,
- "y": 17
+ "y": 26
},
"id": 40,
"panels": [],
@@ -2253,7 +2073,7 @@
"h": 10,
"w": 10,
"x": 0,
- "y": 18
+ "y": 27
},
"id": 44,
"maxDataPoints": 500,
@@ -2341,7 +2161,7 @@
"h": 10,
"w": 14,
"x": 10,
- "y": 18
+ "y": 27
},
"id": 38,
"options": {
@@ -2428,7 +2248,7 @@
"h": 10,
"w": 10,
"x": 0,
- "y": 28
+ "y": 37
},
"id": 43,
"maxDataPoints": 500,
@@ -2515,7 +2335,7 @@
"h": 10,
"w": 14,
"x": 10,
- "y": 28
+ "y": 37
},
"id": 55,
"options": {
@@ -2567,7 +2387,7 @@
"h": 10,
"w": 24,
"x": 0,
- "y": 38
+ "y": 47
},
"id": 74,
"options": {
@@ -2604,7 +2424,7 @@
"type": "bargauge"
}
],
- "refresh": "10s",
+ "refresh": false,
"schemaVersion": 35,
"style": "dark",
"tags": [
@@ -2615,13 +2435,13 @@
"list": []
},
"time": {
- "from": "now-1h",
- "to": "now"
+ "from": "2022-05-14T11:15:54.131Z",
+ "to": "2022-05-14T11:19:17.040Z"
},
"timepicker": {},
"timezone": "",
"title": "Transactions",
"uid": "83vvgKKnk",
- "version": 144,
+ "version": 151,
"weekStart": ""
}
\ No newline at end of file
diff --git a/additional/recover/run.sh b/additional/recover/run.sh
index 1565ef0..ac19389 100755
--- a/additional/recover/run.sh
+++ b/additional/recover/run.sh
@@ -3,8 +3,19 @@ set -e
# Script to run a local instance of grafana, loki and prometheus
# with a data (prometheus and loki) snapshot of an experiment
+function cleanup() {
+ docker-compose down -v
+ rm -rf ${TMP_BASEDIR}
+}
+
+function ctrl_c() {
+ echo "Shutting down"
+ cleanup
+}
+
function fail() {
echo -e "$1"
+ cleanup
exit 1
}
@@ -35,7 +46,8 @@ if file ${EXP_DATA} | grep -q 'tar archive'; then
tar -xvf /tmp/${G5K_ARCHIVE} -C /tmp exp-data
rm -rf /tmp/${G5K_ARCHIVE}
EXP_DATA=/tmp/exp-data
- mv ${EXP_DATA} ${TMP_BASEDIR}
+ mv ${EXP_DATA}/* ${TMP_BASEDIR}
+ rm -rf ${EXP_DATA}
else
cp -r ${EXP_DATA} ${TMP_BASEDIR}
fi
@@ -72,16 +84,6 @@ function startup() {
docker-compose up &
}
-function cleanup() {
- docker-compose down -v
- rm -rf ${TMP_BASEDIR}
-}
-
-function ctrl_c() {
- echo "Shutting down"
- cleanup
-}
-
trap ctrl_c INT
startup
diff --git a/additional/rspecs/taler.many.with-auditor.rspec
b/additional/rspecs/taler.many.with-auditor.rspec
new file mode 100644
index 0000000..cfd6fdc
--- /dev/null
+++ b/additional/rspecs/taler.many.with-auditor.rspec
@@ -0,0 +1,459 @@
+<?xml version='1.0'?>
+<rspec xmlns="http://www.geni.net/resources/rspec/3" type="request"
generated_by="jFed RSpec Editor" generated="2022-05-14T11:26:54.563+02:00"
xmlns:emulab="http://www.protogeni.net/resources/rspec/ext/emulab/1"
xmlns:delay="http://www.protogeni.net/resources/rspec/ext/delay/1"
xmlns:jfed-command="http://jfed.iminds.be/rspec/ext/jfed-command/1"
xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1"
xmlns:jfed-ssh-keys="http://jfed.iminds.be/rspec/ext/jfed-ssh-keys/1" xmlns:
[...]
+ <node client_id="DB" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="97.68354430379748" y="25.0"/>
+ </node>
+ <node client_id="Exchange-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="221.0"
y="72.5"/>
+ </node>
+ <node client_id="Bank" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="474.7974683544304" y="25.0"/>
+ </node>
+ <node client_id="EProxy-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="226.5"
y="126.5"/>
+ </node>
+ <node client_id="Monitor" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="929.5"
y="76.5"/>
+ </node>
+ <node client_id="Merchant-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="568.5"
y="152.5"/>
+ </node>
+ <node client_id="DNS" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="921.0"
y="37.5"/>
+ </node>
+ <node client_id="Aggregator" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="786.5"
y="112.5"/>
+ </node>
+ <node client_id="Wirewatch" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="783.5"
y="76.5"/>
+ </node>
+ <node client_id="Transfer" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="776.5"
y="39.5"/>
+ </node>
+ <node client_id="Closer" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="923.5"
y="114.5"/>
+ </node>
+ <node client_id="Exchange-2" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="364.0"
y="70.5"/>
+ </node>
+ <node client_id="Wallet-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="75.0"
y="205.30722735107315"/>
+ </node>
+ <node client_id="Wallet-2" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="273.4810126582279" y="205.30722735107315"/>
+ </node>
+ <node client_id="Wallet-3" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="471.9620253164557" y="205.30722735107315"/>
+ </node>
+ <node client_id="Wallet-4" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="660.5"
y="202.5"/>
+ </node>
+ <node client_id="Wallet-5" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="868.9240506329114" y="205.30722735107315"/>
+ </node>
+ <node client_id="Wallet-6" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="75.0"
y="236.665006020825"/>
+ </node>
+ <node client_id="Wallet-7" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="273.4810126582279" y="236.665006020825"/>
+ </node>
+ <node client_id="Wallet-8" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="471.9620253164557" y="236.665006020825"/>
+ </node>
+ <node client_id="Wallet-9" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="670.4430379746834" y="236.665006020825"/>
+ </node>
+ <node client_id="Wallet-10" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="868.9240506329114" y="236.665006020825"/>
+ </node>
+ <node client_id="Wallet-11" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="75.0"
y="268.0227846905768"/>
+ </node>
+ <node client_id="Wallet-12" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="273.4810126582279" y="268.0227846905768"/>
+ </node>
+ <node client_id="Wallet-13" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="471.9620253164557" y="268.0227846905768"/>
+ </node>
+ <node client_id="Wallet-14" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="670.4430379746834" y="268.0227846905768"/>
+ </node>
+ <node client_id="Wallet-15" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="868.9240506329114" y="268.0227846905768"/>
+ </node>
+ <node client_id="Wallet-16" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="75.0"
y="299.3805633603287"/>
+ </node>
+ <node client_id="Wallet-17" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="273.4810126582279" y="299.3805633603287"/>
+ </node>
+ <node client_id="Wallet-18" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="471.9620253164557" y="299.3805633603287"/>
+ </node>
+ <node client_id="Wallet-19" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="670.4430379746834" y="299.3805633603287"/>
+ </node>
+ <node client_id="Wallet-20" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="868.9240506329114" y="299.3805633603287"/>
+ </node>
+ <node client_id="Wallet-21" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="80.67088607594937" y="333.4821476636838"/>
+ </node>
+ <node client_id="Wallet-22" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="279.15189873417717" y="333.4821476636838"/>
+ </node>
+ <node client_id="Wallet-23" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="477.63291139240505" y="334.26609213042764"/>
+ </node>
+ <node client_id="Wallet-24" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="677.5316455696203" y="333.4821476636838"/>
+ </node>
+ <node client_id="Wallet-25" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="876.012658227848" y="331.91425873019625"/>
+ </node>
+ <node client_id="Wallet-26" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="86.34177215189874" y="364.0559818666919"/>
+ </node>
+ <node client_id="Wallet-27" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="281.9873417721519" y="364.8399263334357"/>
+ </node>
+ <node client_id="Wallet-28" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="477.99999999999994" y="370.93658536585366"/>
+ </node>
+ <node client_id="Wallet-29" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="681.7848101265823" y="366.40781526692325"/>
+ </node>
+ <node client_id="Wallet-30" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="881.6835443037975" y="366.40781526692325"/>
+ </node>
+ <node client_id="Wallet-31" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="80.67088607594937" y="393.84587160295615"/>
+ </node>
+ <node client_id="Wallet-32" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="281.9873417721519" y="397.7655939366752"/>
+ </node>
+ <node client_id="Wallet-33" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="484.72151898734177" y="399.33348287016264"/>
+ </node>
+ <node client_id="Wallet-34" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="678.9493670886076" y="397.7655939366752"/>
+ </node>
+ <node client_id="Wallet-35" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="884.5189873417721" y="395.41376053644376"/>
+ </node>
+ <node client_id="Wallet-36" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="80.67088607594937" y="426.77153920619554"/>
+ </node>
+ <node client_id="Wallet-37" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="289.0759493670886" y="428.33942813968315"/>
+ </node>
+ <node client_id="Wallet-38" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="488.97468354430373" y="429.90731707317076"/>
+ </node>
+ <node client_id="Wallet-39" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="688.873417721519" y="426.77153920619554"/>
+ </node>
+ <node client_id="Wallet-40" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="891.6075949367088" y="427.55548367293943"/>
+ </node>
+ <node client_id="Wallet-41" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="84.0"
y="463.3365853658537"/>
+ </node>
+ <node client_id="Wallet-42" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="295.0"
y="460.3317073170732"/>
+ </node>
+ <node client_id="Wallet-43" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="485.0"
y="460.3317073170732"/>
+ </node>
+ <node client_id="Wallet-44" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="685.0"
y="455.8243902439025"/>
+ </node>
+ <node client_id="Wallet-45" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="892.0"
y="460.3317073170732"/>
+ </node>
+ <node client_id="Wallet-46" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="87.0"
y="497.89268292682925"/>
+ </node>
+ <node client_id="Wallet-47" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="297.0"
y="492.63414634146346"/>
+ </node>
+ <node client_id="Wallet-48" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="491.0"
y="496.390243902439"/>
+ </node>
+ <node client_id="Wallet-49" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="689.0"
y="487.37560975609756"/>
+ </node>
+ <node client_id="Wallet-50" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="897.0"
y="492.63414634146346"/>
+ </node>
+ <node client_id="Wallet-51" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="86.0"
y="530.1951219512196"/>
+ </node>
+ <node client_id="Wallet-52" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="301.0"
y="525.6878048780488"/>
+ </node>
+ <node client_id="Wallet-53" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="492.99999999999994" y="529.4439024390244"/>
+ </node>
+ <node client_id="Wallet-54" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="692.0"
y="526.439024390244"/>
+ </node>
+ <node client_id="Wallet-55" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="901.9999999999999" y="529.4439024390244"/>
+ </node>
+ <node client_id="Wallet-56" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="90.0"
y="558.7414634146342"/>
+ </node>
+ <node client_id="Wallet-57" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="304.0"
y="558.7414634146342"/>
+ </node>
+ <node client_id="Wallet-58" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="494.0"
y="560.2439024390244"/>
+ </node>
+ <node client_id="Wallet-59" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="696.0"
y="557.2390243902439"/>
+ </node>
+ <node client_id="Wallet-60" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1"
x="904.9999999999999" y="564.0"/>
+ </node>
+ <node client_id="EProxy-2" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <hardware_type name="dahu-grenoble"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="338.0"
y="126.5"/>
+ </node>
+ <node client_id="Auditor" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="560.0"
y="93.5"/>
+ </node>
+</rspec>
\ No newline at end of file
diff --git a/additional/rspecs/taler.minial.rspec
b/additional/rspecs/taler.minial.rspec
index c5e6f5e..7c9d904 100644
--- a/additional/rspecs/taler.minial.rspec
+++ b/additional/rspecs/taler.minial.rspec
@@ -1,52 +1,51 @@
<?xml version='1.0'?>
-<rspec xmlns="http://www.geni.net/resources/rspec/3" type="request"
generated_by="jFed RSpec Editor" generated="2022-05-12T16:28:28.643+02:00"
xmlns:emulab="http://www.protogeni.net/resources/rspec/ext/emulab/1"
xmlns:delay="http://www.protogeni.net/resources/rspec/ext/delay/1"
xmlns:jfed-command="http://jfed.iminds.be/rspec/ext/jfed-command/1"
xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1"
xmlns:jfed-ssh-keys="http://jfed.iminds.be/rspec/ext/jfed-ssh-keys/1" xmlns:
[...]
+<rspec xmlns="http://www.geni.net/resources/rspec/3" type="request"
generated_by="jFed RSpec Editor" generated="2022-05-14T11:23:31.990+02:00"
xmlns:emulab="http://www.protogeni.net/resources/rspec/ext/emulab/1"
xmlns:delay="http://www.protogeni.net/resources/rspec/ext/delay/1"
xmlns:jfed-command="http://jfed.iminds.be/rspec/ext/jfed-command/1"
xmlns:client="http://www.protogeni.net/resources/rspec/ext/client/1"
xmlns:jfed-ssh-keys="http://jfed.iminds.be/rspec/ext/jfed-ssh-keys/1" xmlns:
[...]
<node client_id="DB" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
<location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="166.0"
y="102.5"/>
</node>
<node client_id="Exchange-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
<location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="220.0"
y="159.5"/>
</node>
<node client_id="Bank" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
<location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="280.0"
y="102.5"/>
</node>
<node client_id="EProxy-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
<location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="218.5"
y="217.5"/>
</node>
<node client_id="Monitor" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
- <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="467.5"
y="155.5"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="476.5"
y="147.5"/>
</node>
<node client_id="DNS" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
- <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="458.0"
y="109.5"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="468.0"
y="107.5"/>
</node>
<node client_id="Auditor" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
<sliver_type name="raw-pc">
<disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
</sliver_type>
- <hardware_type name="dahu-grenoble"/>
- <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="463.5"
y="198.5"/>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="471.0"
y="188.5"/>
+ </node>
+ <node client_id="Merchant-1" exclusive="true"
component_manager_id="urn:publicid:IDN+am.grid5000.fr+authority+am">
+ <sliver_type name="raw-pc">
+ <disk_image
name="http://public.lille.grid5000.fr/~bfhch01/taler-debian11.dsc"/>
+ </sliver_type>
+ <location xmlns="http://jfed.iminds.be/rspec/ext/jfed/1" x="488.5"
y="228.5"/>
</node>
</rspec>
\ No newline at end of file
diff --git a/configs/etc/default/prometheus-postgres-exporter
b/configs/etc/default/prometheus-postgres-exporter
index 39d2d18..91b5f51 100644
--- a/configs/etc/default/prometheus-postgres-exporter
+++ b/configs/etc/default/prometheus-postgres-exporter
@@ -5,7 +5,7 @@
# DATA_SOURCE_NAME='postgresql://login:password@hostname:port/'
# DATA_SOURCE_NAME='user=prometheus host=/run/postgresql dbname=postgres'
# IMPORTANT - place no comma between placeholders, it will be handled by the
scripts
-DATA_SOURCE_NAME='<EXCHANGE_DB_URL_HERE><MERCHANT_DB_URL_HERE><SHARD_DB_URLS_HERE>'
+DATA_SOURCE_NAME='<EXCHANGE_DB_URL_HERE><MERCHANT_DB_URL_HERE><SHARD_DB_URLS_HERE><AUDITOR_DB_URL_HERE>'
# Set the command-line arguments to pass to the server.
ARGS='--extend.query-path=/etc/monitor/postgres-exporter.yaml'
diff --git a/experiment/scripts/auditor.sh b/experiment/scripts/auditor.sh
index 32406d1..8b2ce43 100644
--- a/experiment/scripts/auditor.sh
+++ b/experiment/scripts/auditor.sh
@@ -36,7 +36,7 @@ function init_db() {
systemctl restart postgresql
su postgres << EOF
-psql postgres -tAc "DROP DATABASE IF EXISTS \"exchange-ingress\";"
+psql postgres -tAc "DROP DATABASE IF EXISTS \"taler-ingress\";"
psql postgres -tAc "DROP DATABASE IF EXISTS \"auditor\";"
psql postgres -tAc "SELECT 1 FROM pg_roles WHERE rolname='auditor-ingress'" | \
grep -q 1 || \
@@ -45,19 +45,15 @@ psql postgres -tAc "SELECT 1 FROM pg_roles WHERE
rolname='auditor'" | \
grep -q 1 || \
createuser auditor
-createdb -O auditor-ingress "exchange-ingress"
+createdb -O auditor-ingress "taler-ingress"
createdb -O auditor "auditor"
-EOF
-
- su auditor-ingress << EOF
-psql -d exchange-ingress -U auditor-ingress -tAc 'GRANT ALL ON ALL TABLES IN
SCHEMA public TO auditor;'
EOF
}
function setup_exchange_replication() {
taler-config -s exchange -o DB -V "postgres"
- taler-config -s exchangedb-postgres -o CONFIG -V
"postgres:///exchange-ingress"
+ taler-config -s exchangedb-postgres -o CONFIG -V "postgres:///taler-ingress"
sudo -u auditor-ingress taler-exchange-dbinit -r || true
sudo -u auditor-ingress taler-exchange-dbinit -s || true
@@ -68,12 +64,16 @@ function setup_exchange_replication() {
sudo -u auditor-infress taler-exchange-dbinit
fi
+ su auditor-ingress << EOF
+psql -d taler-ingress -U auditor-ingress -tAc 'GRANT ALL ON ALL TABLES IN
SCHEMA public TO auditor;'
+EOF
+
DB_USER=egress wait_for_db
su postgres << EOF
- psql -d exchange-ingress -tAc "ALTER SUBSCRIPTION ${NODE_NAME} DISABLE;"
- psql -d exchange-ingress -tAc "ALTER SUBSCRIPTION ${NODE_NAME} SET
(slot_name=NONE);"
- psql -d exchange-ingress -tAc "CREATE SUBSCRIPTION ${NODE_NAME} CONNECTION
'postgresql://egress:${DB_PASSWORD}@${DB_HOSTS}/${DB_NAME}' PUBLICATION
exchange;" || true
+ psql -d taler-ingress -tAc "ALTER SUBSCRIPTION ${NODE_NAME} DISABLE;"
+ psql -d taler-ingress -tAc "ALTER SUBSCRIPTION ${NODE_NAME} SET
(slot_name=NONE);"
+ psql -d taler-ingress -tAc "CREATE SUBSCRIPTION ${NODE_NAME} CONNECTION
'postgresql://egress:${DB_PASSWORD}@${DB_HOSTS}/${DB_NAME}' PUBLICATION
exchange;" || true
EOF
}
diff --git a/experiment/scripts/benchmark.sh b/experiment/scripts/benchmark.sh
index 41b7b3a..10b6f98 100755
--- a/experiment/scripts/benchmark.sh
+++ b/experiment/scripts/benchmark.sh
@@ -27,7 +27,7 @@ function start_wallet_bench() {
LOG_LEVEL=INFO
fi
- NUM_DEPOSITS=50
+ NUM_DEPOSITS=$(($RANDOM % 21))
if [[ ${WALLET_WITHDRAW_ONLY} == "true" ]]; then
NUM_DEPOSITS=0
fi
diff --git a/experiment/scripts/monitor.sh b/experiment/scripts/monitor.sh
index 867b0ae..3aaa7fd 100755
--- a/experiment/scripts/monitor.sh
+++ b/experiment/scripts/monitor.sh
@@ -89,6 +89,13 @@ function configure_prometheus_and_exporters() {
done
sed -i "s|<SHARD_DB_URLS_HERE>|${CFG}|g" \
/etc/default/prometheus-postgres-exporter
+
+ CFG=""
+ if [[ ${NUM_AUDITORS} -gt 1 ]]; then
+ CFG="${CFG},postgresql://postgres@auditor.${DNS_ZONE}:5432"
+ fi
+ sed -i "s|<AUDITOR_DB_URL_HERE>|${CFG}|g" \
+ /etc/default/prometheus-postgres-exporter
}
# Create the directory which will be used to store recovery data
--
To stop receiving notification emails like this one, please contact
gnunet@gnunet.org.
- [taler-grid5k] 33/48: update bank, (continued)
- [taler-grid5k] 33/48: update bank, gnunet, 2022/05/28
- [taler-grid5k] 10/48: fix merchant, gnunet, 2022/05/28
- [taler-grid5k] 21/48: update, gnunet, 2022/05/28
- [taler-grid5k] 13/48: fix typo, gnunet, 2022/05/28
- [taler-grid5k] 07/48: drop loglines from fakebank when done, gnunet, 2022/05/28
- [taler-grid5k] 12/48: first auditor script steps, gnunet, 2022/05/28
- [taler-grid5k] 18/48: towards working replication, gnunet, 2022/05/28
- [taler-grid5k] 22/48: verified auditor, gnunet, 2022/05/28
- [taler-grid5k] 23/48: update auditor pg conf, gnunet, 2022/05/28
- [taler-grid5k] 15/48: further changes, gnunet, 2022/05/28
- [taler-grid5k] 20/48: add auditor in db monitoring,
gnunet <=
- [taler-grid5k] 37/48: custom metrics of postgres exporter only work when selecting a db in the url, gnunet, 2022/05/28
- [taler-grid5k] 45/48: update dashboards, gnunet, 2022/05/28
- [taler-grid5k] 38/48: add relabel to prometheus, gnunet, 2022/05/28
- [taler-grid5k] 35/48: wallet build broken, gnunet, 2022/05/28
- [taler-grid5k] 48/48: integrate final changes from setup, gnunet, 2022/05/28
- [taler-grid5k] 25/48: auditor db in /tmp of G5k, gnunet, 2022/05/28
- [taler-grid5k] 40/48: not working, gnunet, 2022/05/28
- [taler-grid5k] 27/48: different updates, gnunet, 2022/05/28
- [taler-grid5k] 29/48: nginx query params break loki, gnunet, 2022/05/28
- [taler-grid5k] 46/48: fix db dashboard, gnunet, 2022/05/28