колба: как прервать «запуск», если конфигурация не завершена? - PullRequest
0 голосов
/ 05 июля 2018

У меня есть небольшое приложение для колб, которое нуждается в настройке. Если чего-то не хватает, я бы хотел «прервать» запуск, чтобы ошибка сразу была замечена.

Мой скрипт WSGI тривиален, но, возможно, он поможет понять мой вопрос:

from myapp.startup import init_app
app = init_app()

Так, скажем, где-то в ìnit_app() код находит, что что-то не так (например, отсутствуют значения конфигурации или устаревшая версия схемы БД, небезопасные права доступа к каталогу, ...) Я хотел бы убедиться, что приложение не запущено (потому что в любом случае это не удастся позже).

Я могу добавить sys.exit(1) где-нибудь в коде, но затем флешка бесконечно повторяет попытку запуска приложения (пользователь не видит ни одной страницы). Конечно, я мог бы создать альтернативное приложение WSGI, которое показывает некоторый текст.

Но я надеялся, что будет какая-то «лучшая практика» (и в идеале существующий код Python, чтобы он даже выглядел «хорошо»).

  • Есть ли способ сообщить флагу / серверу WSGI, что при запуске приложения произошел сбой, и оно не должно повторяться?
  • Существует ли существующий код для обработки "ошибок установки"?

1 Ответ

0 голосов
/ 05 июля 2018

Похоже, что он может делать то, что вы хотите, с точки зрения выключения сервера. http://flask.pocoo.org/snippets/67/

Но вместо вызова с конечной точки вы можете вызвать функцию, когда обнаружите ошибку в вашем коде запуска.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...