У меня есть приложение-пирамида, использующее ini-файл пастера, размещенный через uwsgi. Я хочу размещать разные экземпляры (например, разработку, постановку, производство), в идеале, вообще не касаясь файла конфигурации. Очевидно, что для разных экземпляров нужны разные настройки. Мой подход был примерно таким:
[app:base]
sqlalchemy.url = some/connection/string/%(instance)s
[app:development]
instance = development
[app:production]
instance = production
Это не работает, потому что instance
еще не определено, когда определено sqlalchemy.url
. Я пытался внедрить instance
как-то извне, но безуспешно. Я не могу получить доступ к каким-либо переменным среды. Я также пытался передать значения через uwsgi_param
из Nginx, но не смог заставить его работать.
Как упорядочить ini-файлы paster по модульному принципу, чтобы не приходилось дублировать настройки?