您的设置,技巧是什么,最重要的是您的工作流程是什么?
这些工具很棒,但是仍然没有最佳实践,因此我不知道什么是最有效的使用方法。
--no-site-packages
“最佳做法”非常依赖于上下文,因此我不会声称自己的做法是最佳的,只是说它们对我有用。我主要在小型站点上工作,因此不需要多服务器部署,CDN等。我确实需要支持Webfaction共享托管部署,因为某些客户端需要他们能找到的最便宜的托管。我经常不得不在不同的环境中多次部署站点,因此可重复的脚本部署至关重要。
目前,新的部署分为以下步骤:
fab staging bootstrap
fab staging enable
fab staging reload_server
这些当然可以合并为一个命令行fab staging bootstrap enable reload_server。
fab staging bootstrap enable reload_server
完成这些步骤后,只需使用新代码更新部署即可fab staging deploy。
fab staging deploy
如果我需要回滚更新,fab staging rollback。在回滚中没有什么特别神奇的;它只是将代码回滚到上次部署的版本,并将数据库迁移到先前的状态(这确实需要记录一些有关DB部署后迁移状态的元数据,我只是在一个文本文件中进行此操作)。
fab staging rollback
几年来我都没有使用过此答案中描述的Fabric脚本,因此它们根本没有维护,我对它们的质量不承担任何责任:-)但是您可以在https://bitbucket.org/carljm上看到它们/ django-project- template-在fabfile.py回购根目录和deploy/子目录中。
fabfile.py
deploy/