View Issue Details
| ID | Project | Category | View Status | Date Submitted | Last Update |
|---|---|---|---|---|---|
| 0010802 | Taler | deployment and operations | public | 2025-12-17 23:11 | 2026-02-10 14:08 |
| Reporter | vecirex | Assigned To | vecirex | ||
| Priority | high | Severity | text | Reproducibility | always |
| Status | closed | Resolution | fixed | ||
| Summary | 0010802: For TOPS/CHF (test and deployment): ToS missing [workaround could be confirmed to work] | ||||
| Description | Ticket 0010711, but for taler.hacktivism.ch and my.taler-ops.ch: I got instructions from fdold how to do this properly. This should go like this; to /etc/taler-merchant/merchant-overrides.conf add this to the section shown: [merchant] TERMS_ETAG = merchant-tos-tops-v0 TERMS_DIR = ${TALER_DATA_HOME}terms/ Then, this: $ taler-terms-generator -i /usr/share/taler-merchant/terms/merchant-tos-tops-v0.en.rst -o "$(taler-merchant-config -f -s merchant -o terms_dir)" | ||||
| Tags | No tags attached. | ||||
|
|
Meh, installing the taler-exchange as a whole just to get taler-exchange-config seems overkill, esp. in production env: taler-merchant-httpd@bcead3ae4f5e:/usr/local/bin$ taler-terms-generator -i /usr/share/taler-merchant/terms/merchant-tos-tops-v0.en.rst -o "$(taler-merchant-config -f -s merchant -o terms_dir)" /usr/bin/taler-terms-generator: line 29: taler-exchange-config: command not found Must look into this after sleep, to avoid messing up setups now! :) |
|
|
Possible solution could be to get the tool from an installation where taler-exchange gets installed, getting it from there when needed. |
|
|
Any objection to this, Florian? I think the best solution would be to have taler-exchange-config as a separate package, mid-term / later. For now, I suggest the following: 1. Install taler-exchange in, e.g., a minimal podman instance. 2. Make taler-exchange-config available for the outer or other containerized system only configured to run a taler-merchant, then run your command above to generate the ToS files; if libs are needed, those can of course be installed, but the whole taler-exchange is seriously overkill; also having custom compiles around... well, ehm, not in production perhaps? 3. If ToS change, upgrade the env having the taler-exchange package installed and thus taler-exchange-config available, repeat 2. I will try this approach for taler.hacktivism.ch first, installing, e.g., taler-exchange to a podman instance, if you think that's fine / you don't oppose / ship another solution which is also good for a production env. |
|
|
That's going way over board, we just need to fix taler-terms-generator to not invoke taler-exchange-config anymore, it's just used for getting defaults for various switches in the first place. |
|
|
It is, and CG went for doing that taler-exchange-config alone (with respective deps) can be installed as a dependency to taler-merchant in next upgrade, so that no further changes are needed. On my side, I go for installing taler-exchange in a container and generate the ToS there; given I wanted to start taler-exchange testing for running event currencies (as done by Datenspuren 2024/2025) and regional currencies (as event currencies, but (more) permanent), this fits anyways. CG suggested to copy the generated ToS files to test & prod envs, for now. Will do this. |
|
|
Assign back to me, solution found. |
|
|
Tried in the supposed way on TOPS/CHF stage; it fails with the same error as on taler.hacktivism.ch in the past; seemingly exchange config is expected to exist, even if it's about ToS for merchant self-provisioning: root@betel:/etc/taler-merchant# taler-terms-generator -i /usr/share/taler-merchant/terms/merchant-tos-tops-v0.en.rst -o "$(taler-merchant-config -f -s merchant -o terms_dir)" 2026-02-06T01:00:13.036778+0000 taler-exchange-config-71384 ERROR Configuration fails to specify option `TERMS_DIR' in section `EXCHANGE'! root@betel:/etc/taler-merchant# su - taler-merchant-httpd -s /bin/bash su: warning: cannot change directory to /var/lib/taler-merchant: No such file or directory taler-merchant-httpd@betel:/etc/taler-merchant$ taler-terms-generator -i /usr/share/taler-merchant/terms/merchant-tos-tops-v0.en.rst -o "$(taler-merchant-config -f -s merchant -o terms_dir)" 2026-02-06T01:02:08.482910+0000 taler-exchange-config-71602 ERROR Configuration fails to specify option `TERMS_DIR' in section `EXCHANGE'! taler-merchant-httpd@betel:/etc/taler-merchant$ taler-terms-generator -i /usr/share/taler-merchant/terms/merchant-tos-tops-v0.en.rst -o "$(taler-merchant-config -f -s merchant -o terms_dir)"^C taler-merchant-httpd@betel:/etc/taler-merchant$ Changes documented in admin log, day log as well as in mytops-admin-log/. Using another private container, I could only run this command generating the actual TOPS ToS for merchant self-provisioning when also installing the taler-exchange package next to the taler-merchant package... which we wanted to avoid for production. I assign to you, Florian: can you please have a look? Thanks! |
|
|
Issue with a work-around was addressed in 0011015. Tested on own test installation TOPS/CHF first, not only, but also because mytops-stage was already served. Following command was run, as suggested: root@1b0bd36dc346:~# TALER_EXCHANGE_TERMS_DIR=/tmp taler-terms-generator -i /usr/share/taler-merchant/terms/merchant-tos-tops-v0.en.rst -o "$(taler-merchant-config -f -s merchant -o terms_dir)" Works like this, tried on own installation first; logs w/o warnings now and https://taler.hacktivism.ch/terms showing the terms. taler-merchant-httpd@1b0bd36dc346:/usr/local/bin$ ./start_merchant.sh Start taler-merchant components: Show taler-merchant components running (check for httpd, webhook, kyccheck, depositcheck, exchangekeyupdate and reconciliation): 2777 pts/0 S 0:00 su -p -s /bin/bash taler-merchant-httpd 2782 pts/0 R+ 0:00 taler-merchant-httpd --log=info 2783 pts/0 R+ 0:00 taler-merchant-webhook 2784 pts/0 R+ 0:00 taler-merchant-kyccheck 2785 pts/0 R+ 0:00 taler-merchant-wirewatch 2786 pts/0 R+ 0:00 taler-merchant-depositcheck 2787 pts/0 R+ 0:00 taler-merchant-exchangekeyupdate 2788 pts/0 R+ 0:00 taler-merchant-reconciliation 2790 pts/0 S+ 0:00 grep taler-merchant taler-merchant-httpd@1b0bd36dc346:/usr/local/bin$ 2026-02-10T12:41:20.487310+0000 taler-merchant-httpd-2782 INFO Starting taler-merchant-httpd 2026-02-10T12:41:20.487983+0000 taler-merchant-httpd-2782 INFO Configuration fails to specify option `DEFAULT_REFUND_DELAY' in section `merchant'! 2026-02-10T12:41:20.488078+0000 taler-merchant-httpd-2782 INFO Configuration fails to specify option `DEFAULT_WIRE_TRANSFER_ROUNDING_INTERVAL' in section `merchant'! 2026-02-10T12:41:20.488163+0000 taler-merchant-httpd-2782 INFO Loading legal information from file `/var/lib/taler-merchant/terms//en/merchant-tos-tops-v0.md' 2026-02-10T12:41:20.488462+0000 taler-merchant-httpd-2782 INFO Loading legal information from file `/var/lib/taler-merchant/terms//en/merchant-tos-tops-v0.pdf' 2026-02-10T12:41:20.489013+0000 taler-merchant-httpd-2782 INFO Loading legal information from file `/var/lib/taler-merchant/terms//en/merchant-tos-tops-v0.html' 2026-02-10T12:41:20.489426+0000 taler-merchant-httpd-2782 INFO Loading legal information from file `/var/lib/taler-merchant/terms//en/merchant-tos-tops-v0.txt' [...] The package taler-terms-generator needs be installed, if not already done. |
| Date Modified | Username | Field | Change |
|---|---|---|---|
| 2025-12-17 23:11 | vecirex | New Issue | |
| 2025-12-17 23:11 | vecirex | Status | new => assigned |
| 2025-12-17 23:11 | vecirex | Assigned To | => vecirex |
| 2025-12-17 23:12 | vecirex | Relationship added | related to 0010711 |
| 2025-12-17 23:41 | vecirex | Note Added: 0027093 | |
| 2025-12-17 23:43 | vecirex | Note Edited: 0027093 | |
| 2025-12-17 23:48 | vecirex | Note Added: 0027094 | |
| 2025-12-18 20:30 | vecirex | Note Added: 0027104 | |
| 2025-12-18 20:36 | vecirex | Note Edited: 0027104 | |
| 2025-12-18 20:36 | vecirex | Assigned To | vecirex => Florian Dold |
| 2025-12-18 20:37 | vecirex | Note Edited: 0027104 | |
| 2025-12-18 20:39 | vecirex | Note Edited: 0027104 | |
| 2025-12-19 13:12 | Florian Dold | Note Added: 0027133 | |
| 2025-12-20 10:46 | vecirex | Note Added: 0027145 | |
| 2025-12-20 10:46 | vecirex | Assigned To | Florian Dold => vecirex |
| 2025-12-20 10:46 | vecirex | Note Added: 0027146 | |
| 2025-12-20 10:48 | vecirex | Note Edited: 0027145 | |
| 2026-02-06 02:48 | vecirex | Note Added: 0027623 | |
| 2026-02-06 02:49 | vecirex | Assigned To | vecirex => Florian Dold |
| 2026-02-06 02:49 | vecirex | Priority | urgent => high |
| 2026-02-06 02:54 | vecirex | Note Edited: 0027623 | |
| 2026-02-10 13:47 | vecirex | Relationship added | related to 0011015 |
| 2026-02-10 14:05 | vecirex | Note Added: 0027666 | |
| 2026-02-10 14:06 | vecirex | Note Edited: 0027666 | |
| 2026-02-10 14:07 | vecirex | Assigned To | Florian Dold => vecirex |
| 2026-02-10 14:07 | vecirex | Status | assigned => closed |
| 2026-02-10 14:07 | vecirex | Resolution | open => fixed |
| 2026-02-10 14:07 | vecirex | Summary | For TOPS/CHF (test and deployment): ToS missing => For TOPS/CHF (test and deployment): ToS missing [work could be confirmed to work] |
| 2026-02-10 14:07 | vecirex | Summary | For TOPS/CHF (test and deployment): ToS missing [work could be confirmed to work] => For TOPS/CHF (test and deployment): ToS missing [workaround could be confirmed to work] |
| 2026-02-10 14:08 | vecirex | Relationship added | related to 0010970 |