在 shub 部署项目上设置变量
Set variable on shub deploy project
我正在尝试设置 scrapy 设置以在本地和 scrapinghub 上使用测试和生产环境。
我想知道是否有任何方法可以在 shub deploy 上设置这个变量(例如如下):
然后在 settings.py:
if env == "test":
var1 = some_ip
var2 = username
elif env == "prod":
var1 = some_ip
var2 = username
或者...也许有更简洁的方法?
感谢阅读!
PS:我想根据 spider/project 所在的环境自动设置,而不是手动更改变量。
编辑:找到更好的解决方案。检查 .
如果您想使用环境变量来控制它,您可以执行以下操作:导出一个包含 test
或 prod
的环境变量 DEPLOY_TARGET
并执行以下命令进行部署
shub deploy $DEPLOY_TARGET
最后,我按照以下步骤解决了我的问题:
- 实施this example.
所以现在我的设置如下所示:
- 然后我的
__init__.py
看起来像这样:
- 接下来,修改
_environment.py
如下:
希望对您有所帮助!
PS: 请记住,您需要在 scrapinghub 上有两个项目,一个用于生产,一个用于测试,还需要从同一个项目进行部署,如下所示:
然后您只需 (reference):
shub deploy test
部署测试。
shub deploy prod
部署到生产环境。
shub deploy
部署测试。
我正在尝试设置 scrapy 设置以在本地和 scrapinghub 上使用测试和生产环境。 我想知道是否有任何方法可以在 shub deploy 上设置这个变量(例如如下):
然后在 settings.py:
if env == "test":
var1 = some_ip
var2 = username
elif env == "prod":
var1 = some_ip
var2 = username
或者...也许有更简洁的方法?
感谢阅读!
PS:我想根据 spider/project 所在的环境自动设置,而不是手动更改变量。
编辑:找到更好的解决方案。检查 .
如果您想使用环境变量来控制它,您可以执行以下操作:导出一个包含 test
或 prod
的环境变量 DEPLOY_TARGET
并执行以下命令进行部署
shub deploy $DEPLOY_TARGET
最后,我按照以下步骤解决了我的问题:
- 实施this example.
所以现在我的设置如下所示:
- 然后我的
__init__.py
看起来像这样:
- 接下来,修改
_environment.py
如下:
希望对您有所帮助!
PS: 请记住,您需要在 scrapinghub 上有两个项目,一个用于生产,一个用于测试,还需要从同一个项目进行部署,如下所示:
然后您只需 (reference):
shub deploy test
部署测试。shub deploy prod
部署到生产环境。shub deploy
部署测试。