我是一个团队的成员,即将推出基于python(Django)的测试版网站和附带的后端工具套件.过去几周,该团队的规模从2个增加到4个,我们预计未来几个月的增长率至少会持续增长.已经开始困扰我们的一个问题是让每个人都能在配置开发环境和安装所有合适的鸡蛋等方面加快速度.
我正在寻找简化此过程的方法,并使其不易出错.zc.buildout和virtualenv看起来都是解决这个问题的好工具,但两者似乎都主要集中在特定于python的问题上.我们有几个小的子项目在其他语言(特别是Java和Ruby)以及许多必须在本地编译的python扩展(lxml,MySQL驱动程序等).事实上,我们方面最大的荆棘之一就是针对适当版本的共享库编译了这些扩展,以避免段错误,malloc错误和各种类似的问题.我们有4种不同的开发环境 - 在ppc上有1只豹子,在intel上有1只豹子,1只ubuntu和1只窗户,这对我们没有帮助.
从dos/unix提示符开始,最理想的是大致类似的东西:
$ git clone [repository url] ... $ python setup-env.py ...
然后执行zc.buildout/virtualenv所做的事情(复制/符号链接python解释器,提供一个干净的空间来安装鸡蛋)然后安装所有必需的鸡蛋,包括安装任何本机共享库依赖项,安装ruby项目,java项目等.
显然,这对于开发环境以及在登台/生产服务器上部署都很有用.
理想情况下,我希望通过python将可以完成此任务的工具写入/可扩展,因为这是(并且将永远是)我们团队的通用语言,但我对其他语言的解决方案持开放态度.
那么,我的问题是:是否有人对更好的替代方案有任何建议,或者他们可以使用这些解决方案之一分享哪些经验来处理更大/更广泛的安装基础?