【发布时间】:2010-04-22 14:09:30
【问题描述】:
假设我有以下 Python 项目的目录结构:
config/ scripts/ src/
结构部署脚本应该放在哪里?显然,我认为它应该在脚本中,但对我来说,将启动项目的实际代码存储在脚本中似乎更合适。
【问题讨论】:
标签: python deployment fabric
假设我有以下 Python 项目的目录结构:
config/ scripts/ src/
结构部署脚本应该放在哪里?显然,我认为它应该在脚本中,但对我来说,将启动项目的实际代码存储在脚本中似乎更合适。
【问题讨论】:
标签: python deployment fabric
这确实是一种偏好——不过我喜欢几个地方,视情况而定。
最常见的是,特别是在像您这样的情况下,fabfile 与某个软件相关联,我喜欢将其放在项目目录中。在这种情况下,我认为 fabfile 类似于 Makefile,所以这感觉像是一个自然的地方。 (例如,对于您的示例,将 fabfile 放在包含 config/ scripts/ 和 src/ 的同一目录中)
在其他情况下,我使用 fab 来收集信息。具体来说,我运行一些命令并从一系列服务器中提取文件。同样,我在远程主机上启动各种测试。在这些情况下,我喜欢为 fabfile 设置一个特殊目录(称为测试或其他)并将数据提取到相关的子目录。
最后,我在$HOME/lib 中保存了一些 fabfile。这些执行一些我经常处理的远程任务。其中之一是在我的开发服务器上设置新的 pylons 项目。我已将 rpaste 设置为 fab -f $HOME/lib/rpaste.py 的别名。这让我可以随意选择目标动作。
【讨论】: