我正在尝试开发一本 cooking 书,以使 flask 应用程序与gunicorn和nginx一起使用。我已经成功到该应用程序在本地 sqlite 数据库上运行得非常好,请参阅 https://github.com/harrywang/flasky-cookbook 上的我的食谱。 Flask 应用程序使用环境变量来发送电子邮件,例如:MAIL_USERNAME = os.environ.get('MAIL_USERNAME'),我如何在厨房融合期间使用测试厨房将这些环境变量传递给 ubuntu 虚拟机?

最佳答案

无法使用.kitchen.yml配置文件传递环境变量(请参阅test-kitchen/test-kitchen#662问题)。

我建议您使用 gunicorn.conf.erb 参数在 --env 模板中设置环境变量:

exec gunicorn --env SECRET_KEY=<%= @secret_key %> --env [...] --workers 3 --bind unix:<%= node['flasky-cookbook']['gunicorn_socket'] %> -m 007 --log-file <%= node['flasky-cookbook']['gunicorn_logfile']%> manage:app

关于flask - 如何在 .kitchen.yml 中传递环境变量来测试厨房,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/35004023/

10-13 06:42