首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >多组分项目的连续交付

多组分项目的连续交付
EN

Stack Overflow用户
提问于 2014-07-02 04:45:13
回答 1查看 1.7K关注 0票数 2

在我们的项目中,我们有由不同团队开发的多个组件,它们具有独立的git repos。所有组件都有提交作业和打包作业,并将工件发布到工件。

当我们希望将所有组件部署为一个系统时,问题就会出现。

由于所有这些组件都部署到不同的服务器上,然后相互交互才能正常工作。由于某个较新版本的组件被部署到一个服务器上,出现了很多时间上的不一致。

为了前夫。我有组件A、B、C,并希望在部署和测试管道中移动以下版本的A1、B1、C1。如何确保没有将组件的更新版本部署到QA环境(服务器)。我正在使用Jenkins作为我的CI/CD工具。似乎我需要一些集成或轻量级的配置管理工具来管理我的系统的整个版本控制,包括我可以在部署管道中推广的所有组件。

我希望我能描述一下我的问题。解决这种情况的建议将是非常有帮助的。

谢谢,

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-07-02 05:03:18

我们使用这种模式:

  • 对于每一个使用我们产品的客户,都有一个“项目”:它几乎不包含代码,只包含配置。我们使用这个名称方案: coreapp_customerslug。
  • 该项目取决于N个应用程序。该项目确定了所有依赖项的确切版本。

在CI期间,我们这样做:

  1. 安装项目P和所有固定的依赖项
  2. 然后将所有依赖项更新到它们的最新版本。
  3. 运行所有测试
  4. 如果所有测试都成功,则更新依赖项的版本并增加项目的版本。
  5. 现在,这个项目有了一个新的、稳定的版本。
  6. 部署新的发行版(目前我们还没有自动完成此操作,但在不久的将来)。

使用此模式("project“是应用程序的容器),您可以处理版本问题。如果您有几台服务器,则更新过程应该是快速的,以避免同时出现不同的版本。

更新

CI维护固定版本。我们使用python和pip,requirements.txt文件由脚本更新。如果所有测试都正常,则使用版本模式YYYY.N。

注意:如果app1有最新版本N,这并不意味着它在所有项目中都能工作。如果您有两个项目: P1和P2,这可能发生:最新版本N的app1在项目P1中运行良好,但在P2中失败。这意味着您不能创建一个新的稳定版本的项目P2。有时这是令人讨厌的,但这保持了一个不断更新的活力。在我们的项目中,我们总是使用最新版本的应用程序。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24523055

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档