【问题标题】:What's the purpose of an integration server?集成服务器的目的是什么?
【发布时间】:2023-06-15 21:23:01
【问题描述】:

我是 DevOps 的新手,如果这是微不足道的,请原谅我,但是鉴于以下工作流程,集成服务器的目的是什么?

作为我的组织中 DevOps 方法的示例,我得到了以下步骤:

  • 开发人员签入对源代码控制 (TFS) 的更改。
  • 构建服务器检查更改。
  • 构建的工件被部署到一个“集成服务器”,上面有我们的 ERP 副本。
  • 发布管理应用程序从该 ERP 环境中获取输出,并将其移动到测试、预生产和生产环境中。

这种方法是否正确,如果正确,集成服务器的目的是否仅仅是提供代码的工作实现,除了将代码移动到其他服务器之外,无法通过任何方式访问该代码?

【问题讨论】:

  • 在这种情况下erp是什么意思
  • Dynamics AX 是 ERP
  • 请给我英文版的
  • @EdHeal Dynamics AX 是 Microsoft 的企业资源规划软件。就像超级 QuickBooks 或 SAP/Oracle/NetSuite/等。
  • 你的理解比技术更重要

标签: axapta dynamics-ax-2012 continuous-deployment devops


【解决方案1】:

我的回答是对您的环境中发生的情况做出一些假设。

当您使用 AX 签入对源代码控制的更改时,它会添加代码/对象的 *.xpo 文本文件,这些代码/对象仅是您的更改。

听起来您的“集成服务器”是构建/登台服务器。想象一下这两种情况:

  1. 您有一个包含 3 个对象的自定义项,您将其中 2 个对象添加到源代码管理中而忘记了一个。在集成服务器上构建时,它可能会出现编译错误,因为缺少依赖对象。

  2. 在您的开发环境中,您创建的测试表单和作业基本上都是您正在试验的垃圾。您不要将这些对象添加到源代码管理中。您不希望将此代码部署到您的其他环境中,因此集成环境可确保代码严格来自 repo。

对集成进行完整编译/同步也有助于发现问题。然后,您可以将整个环境部署到您的其他环境中。

要意识到的重要一点是,您的 repo 实际上只是您对基本 (sys/syp) 代码的更改。因此,集成/构建过程的一部分是您的代码和基本代码组合。