From 063e68ec063ea29e32da920de83dbdad3fec185e Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 23 Aug 2020 11:58:15 +0200 Subject: fix #6510 --- talermerchantdemos/blog/blog.py | 6 ++++++ talermerchantdemos/donations/donations.py | 5 +++++ talermerchantdemos/survey/survey.py | 5 +++++ 3 files changed, 16 insertions(+) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index 61c0131..cf14acb 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -31,6 +31,12 @@ from taler.util.talerconfig import TalerConfig from ..blog.content import ARTICLES, get_article_file, get_image_file from talermerchantdemos.httpcommon import backend_get, backend_post +if not sys.version_info.major == 3 and sys.version_info.minor >= 6: + print("Python 3.6 or higher is required.") + print("You are using Python {}.{}.".format(sys.version_info.major, sys.version_info.minor)) + sys.exit(1) + + BASE_DIR = os.path.dirname(os.path.abspath(__file__)) app = flask.Flask(__name__, template_folder=BASE_DIR) app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") diff --git a/talermerchantdemos/donations/donations.py b/talermerchantdemos/donations/donations.py index 175cbe2..d02bfa3 100644 --- a/talermerchantdemos/donations/donations.py +++ b/talermerchantdemos/donations/donations.py @@ -29,6 +29,11 @@ from taler.util.talerconfig import TalerConfig from urllib.parse import urljoin from ..httpcommon import backend_post, backend_get +if not sys.version_info.major == 3 and sys.version_info.minor >= 6: + print("Python 3.6 or higher is required.") + print("You are using Python {}.{}.".format(sys.version_info.major, sys.version_info.minor)) + sys.exit(1) + LOGGER = logging.getLogger(__name__) BASE_DIR = os.path.dirname(os.path.abspath(__file__)) diff --git a/talermerchantdemos/survey/survey.py b/talermerchantdemos/survey/survey.py index 25b97ad..ef8e946 100644 --- a/talermerchantdemos/survey/survey.py +++ b/talermerchantdemos/survey/survey.py @@ -27,6 +27,11 @@ import traceback from taler.util.talerconfig import TalerConfig from ..httpcommon import backend_get, backend_post +if not sys.version_info.major == 3 and sys.version_info.minor >= 6: + print("Python 3.6 or higher is required.") + print("You are using Python {}.{}.".format(sys.version_info.major, sys.version_info.minor)) + sys.exit(1) + BASE_DIR = os.path.dirname(os.path.abspath(__file__)) app = flask.Flask(__name__, template_folder=BASE_DIR) app.debug = True -- cgit v1.2.3 From fd74c419ac1b308f314dd9d47c7dd98103aa0e80 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 23 Aug 2020 12:10:06 +0200 Subject: generate proper error message on configuration error (fixes #6512) --- bin/taler-merchant-demos | 4 ++-- talermerchantdemos/blog/blog.py | 13 +++++++++---- talermerchantdemos/donations/donations.py | 13 +++++++++---- talermerchantdemos/survey/survey.py | 14 ++++++++++---- 4 files changed, 30 insertions(+), 14 deletions(-) (limited to 'talermerchantdemos') diff --git a/bin/taler-merchant-demos b/bin/taler-merchant-demos index 098416a..9cc7516 100755 --- a/bin/taler-merchant-demos +++ b/bin/taler-merchant-demos @@ -62,7 +62,7 @@ def handle_serve_uwsgi(config, whichShop): try: os.execlp(*params) except: - echo "Failed to start uwsgi. Please make sure to install uwsgi for Python3." + sys.stderr.write("Failed to start uwsgi. Please make sure to install uwsgi for Python3.") sys.exit(1) ## @@ -82,7 +82,7 @@ def handle_serve_http(config, whichShop, port=None): "--http", spec, "--module", "talermerchantdemos.{}:app".format(whichShop)) except: - echo "Failed to start uwsgi. Please make sure to install uwsgi for Python3." + sys.stderr.write("Failed to start uwsgi. Please make sure to install uwsgi for Python3.") sys.exit(1) @click.command("Global shop launcher") diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index cf14acb..2526c80 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -26,8 +26,9 @@ import base64 import flask import lxml.etree import time +import sys from urllib.parse import urljoin, urlencode, urlparse -from taler.util.talerconfig import TalerConfig +from taler.util.talerconfig import TalerConfig, ConfigurationError from ..blog.content import ARTICLES, get_article_file, get_image_file from talermerchantdemos.httpcommon import backend_get, backend_post @@ -43,9 +44,13 @@ app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") LOGGER = logging.getLogger(__name__) TC = TalerConfig.from_env() -BACKEND_BASE_URL = TC["frontends"]["backend"].value_string(required=True) -CURRENCY = TC["taler"]["currency"].value_string(required=True) -APIKEY = TC["frontends"]["backend_apikey"].value_string(required=True) +try: + BACKEND_BASE_URL = TC["frontends"]["backend"].value_string(required=True) + CURRENCY = TC["taler"]["currency"].value_string(required=True) + APIKEY = TC["frontends"]["backend_apikey"].value_string(required=True) +except ConfigurationError as ce: + print(ce) + exit(1) ARTICLE_AMOUNT = CURRENCY + ":0.5" BACKEND_URL = urljoin(BACKEND_BASE_URL, "instances/blog/") diff --git a/talermerchantdemos/donations/donations.py b/talermerchantdemos/donations/donations.py index d02bfa3..614f730 100644 --- a/talermerchantdemos/donations/donations.py +++ b/talermerchantdemos/donations/donations.py @@ -25,9 +25,10 @@ import os import time import traceback import urllib -from taler.util.talerconfig import TalerConfig +from taler.util.talerconfig import TalerConfig, ConfigurationError from urllib.parse import urljoin from ..httpcommon import backend_post, backend_get +import sys if not sys.version_info.major == 3 and sys.version_info.minor >= 6: print("Python 3.6 or higher is required.") @@ -43,9 +44,13 @@ app.debug = True app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") TC = TalerConfig.from_env() -BACKEND_BASE_URL = TC["frontends"]["backend"].value_string(required=True) -CURRENCY = TC["taler"]["currency"].value_string(required=True) -APIKEY = TC["frontends"]["backend_apikey"].value_string(required=True) +try: + BACKEND_BASE_URL = TC["frontends"]["backend"].value_string(required=True) + CURRENCY = TC["taler"]["currency"].value_string(required=True) + APIKEY = TC["frontends"]["backend_apikey"].value_string(required=True) +except ConfigurationError as ce: + print(ce) + exit(1) app.config.from_object(__name__) diff --git a/talermerchantdemos/survey/survey.py b/talermerchantdemos/survey/survey.py index ef8e946..562b817 100644 --- a/talermerchantdemos/survey/survey.py +++ b/talermerchantdemos/survey/survey.py @@ -24,8 +24,9 @@ import logging from urllib.parse import urljoin import flask import traceback -from taler.util.talerconfig import TalerConfig +from taler.util.talerconfig import TalerConfig, ConfigurationError from ..httpcommon import backend_get, backend_post +import sys if not sys.version_info.major == 3 and sys.version_info.minor >= 6: print("Python 3.6 or higher is required.") @@ -37,9 +38,14 @@ app = flask.Flask(__name__, template_folder=BASE_DIR) app.debug = True app.secret_key = base64.b64encode(os.urandom(64)).decode('utf-8') TC = TalerConfig.from_env() -BACKEND_URL = TC["frontends"]["backend"].value_string(required=True) -CURRENCY = TC["taler"]["currency"].value_string(required=True) -APIKEY = TC["frontends"]["backend_apikey"].value_string(required=True) +try: + BACKEND_URL = TC["frontends"]["backend"].value_string(required=True) + CURRENCY = TC["taler"]["currency"].value_string(required=True) + APIKEY = TC["frontends"]["backend_apikey"].value_string(required=True) +except ConfigurationError as ce: + print(ce) + exit(1) + app.config.from_object(__name__) LOGGER = logging.getLogger(__name__) INSTANCED_URL = urljoin(BACKEND_URL, f"instances/survey/") -- cgit v1.2.3 From 23cb94af86eafa1b5778379cdda8f21d22b11438 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 6 Sep 2020 10:35:25 +0200 Subject: -trial fix --- talermerchantdemos/blog/blog.py | 1 + 1 file changed, 1 insertion(+) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index 2526c80..0c81578 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -41,6 +41,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6: BASE_DIR = os.path.dirname(os.path.abspath(__file__)) app = flask.Flask(__name__, template_folder=BASE_DIR) app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") +app._static_folder = '' LOGGER = logging.getLogger(__name__) TC = TalerConfig.from_env() -- cgit v1.2.3 From a2314b9449167b4f31a3a242e016b9743251cf79 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 6 Sep 2020 10:40:36 +0200 Subject: -trial fix --- talermerchantdemos/blog/blog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index 0c81578..6444087 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -41,7 +41,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6: BASE_DIR = os.path.dirname(os.path.abspath(__file__)) app = flask.Flask(__name__, template_folder=BASE_DIR) app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") -app._static_folder = '' +app.iconfig['STATIC_FOLDER'] = 'T' LOGGER = logging.getLogger(__name__) TC = TalerConfig.from_env() -- cgit v1.2.3 From 4aaa49e49b9422ed955e071a3176856c9bc54ad5 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 6 Sep 2020 10:42:58 +0200 Subject: -trial fix --- talermerchantdemos/blog/blog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index 6444087..436d7c6 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -41,7 +41,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6: BASE_DIR = os.path.dirname(os.path.abspath(__file__)) app = flask.Flask(__name__, template_folder=BASE_DIR) app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") -app.iconfig['STATIC_FOLDER'] = 'T' +app.config['STATIC_FOLDER'] = 'T' LOGGER = logging.getLogger(__name__) TC = TalerConfig.from_env() -- cgit v1.2.3 From 9ab9af94148123ea23a71a79cf549599e20273d0 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 6 Sep 2020 10:51:06 +0200 Subject: -trial fix --- talermerchantdemos/blog/blog.py | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index 436d7c6..ebf6b79 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -39,9 +39,8 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6: BASE_DIR = os.path.dirname(os.path.abspath(__file__)) -app = flask.Flask(__name__, template_folder=BASE_DIR) +app = flask.Flask(__name__, template_folder=BASE_DIR, static_folder='T') app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") -app.config['STATIC_FOLDER'] = 'T' LOGGER = logging.getLogger(__name__) TC = TalerConfig.from_env() -- cgit v1.2.3 From 24a7643644b434446b04ff82bcce76ff68c6fefe Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 6 Sep 2020 11:09:23 +0200 Subject: -trial fix --- talermerchantdemos/blog/blog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index ebf6b79..d6865d6 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -39,7 +39,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6: BASE_DIR = os.path.dirname(os.path.abspath(__file__)) -app = flask.Flask(__name__, template_folder=BASE_DIR, static_folder='T') +app = flask.Flask(__name__, template_folder=BASE_DIR, static_folder=BASE_DIR + '/static/') app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") LOGGER = logging.getLogger(__name__) -- cgit v1.2.3 From 9cf423b539c24bf2c210f5a5dd997664f88727d6 Mon Sep 17 00:00:00 2001 From: Christian Grothoff Date: Sun, 6 Sep 2020 11:16:57 +0200 Subject: -trial fix --- talermerchantdemos/blog/blog.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'talermerchantdemos') diff --git a/talermerchantdemos/blog/blog.py b/talermerchantdemos/blog/blog.py index d6865d6..f079ecc 100644 --- a/talermerchantdemos/blog/blog.py +++ b/talermerchantdemos/blog/blog.py @@ -39,7 +39,7 @@ if not sys.version_info.major == 3 and sys.version_info.minor >= 6: BASE_DIR = os.path.dirname(os.path.abspath(__file__)) -app = flask.Flask(__name__, template_folder=BASE_DIR, static_folder=BASE_DIR + '/static/') +app = flask.Flask(__name__, template_folder=BASE_DIR, static_folder=BASE_DIR + '/../static/') app.secret_key = base64.b64encode(os.urandom(64)).decode("utf-8") LOGGER = logging.getLogger(__name__) -- cgit v1.2.3