Django 两个不同git存储库上的服务器和应用程序

Django 两个不同git存储库上的服务器和应用程序,django,ibm-cloud,pipeline,devops-services,Django,Ibm Cloud,Pipeline,Devops Services,我想使用IBMBluemixDevOps服务,尤其是自动化管道,通过构建、测试传递最后一次推式提交,然后在测试环境中部署 我找到的所有指南都建议将一个repo与服务器和应用程序连接在一起,并将此repo链接到管道。虽然这样的配置很有效,但我觉得它与Django标准背道而驰。应用程序(我开发的)应该与服务器分离(即:在另一个git repo上)(这只是使应用程序工作的一部分) 我不知道如何处理这种情况。我应该: 编写一个构建脚本,使用git clone检索构建包,然后修改适当的文件 找到将两个g

我想使用IBMBluemixDevOps服务,尤其是自动化管道,通过构建、测试传递最后一次推式提交,然后在测试环境中部署

我找到的所有指南都建议将一个repo与服务器和应用程序连接在一起,并将此repo链接到管道。虽然这样的配置很有效,但我觉得它与Django标准背道而驰。应用程序(我开发的)应该与服务器分离(即:在另一个git repo上)(这只是使应用程序工作的一部分)

我不知道如何处理这种情况。我应该:

  • 编写一个构建脚本,使用
    git clone
    检索构建包,然后修改适当的文件
  • 找到将两个git存储库连接到一个管道的方法
  • 忘记这个想法,转而采用IBM推荐的方法,将服务器和应用程序放在同一个repo上

似乎您正在尝试创建自己的构建包(通过克隆Django构建包并对其进行编辑)

Bluemix支持来自任何公共git回购的第三方构建包,因此您最好执行以下操作:

  • 分叉django buildpack并对应用程序进行必要的编辑
  • 将您的应用程序放入自己的回购协议中
  • 将管道指向此repo并配置构建/测试/部署阶段
  • 通过包含a或将部署脚本修改为
    cf push-b,将“部署”阶段配置为使用新修改的buildpackhttp://yourbuildpackurl.git “${CF_APP}”

  • 本例仅使用一个文件来指定对Django的依赖关系,而不是将其放在您的repo中(步骤4):


    查看CI平台,您可以轻松构建前端,然后为Django提供静态文件。(我不确定您是否在谈论前端/后端管道)是否有不能创建两个管道的原因?每份回购协议一份?据我所知,目前无法在一条管道中添加两份回购协议stage@OrDuan不,我说的是服务器和应用程序管道。应用程序是一个单独的部分,无法单独工作,需要部署服务器。@EdShee感谢您的建议。但是,应用程序管道需要构建和部署服务器部分。是否可以在两个不同的管道之间共享相同的环境?如果是的话,我想依赖项部分很容易管理。对不起-对此有更多想法:如果您正在修改django buildpack,为什么不直接克隆它,进行更改,然后将新的git url指定为buildpack url(使用
    cf push-b buildpack\u url
    或将其添加到清单),向django添加依赖项是不够的。您还必须创建服务器部件(
    django admin startproject
    ),并通过添加应用程序、编辑文件和应用迁移来配置服务器。