Continuous integration 成功构建CI后,Teamcity是否为live构建?

Continuous integration 成功构建CI后,Teamcity是否为live构建?,continuous-integration,teamcity,Continuous Integration,Teamcity,我有一个环境构建系统,目前有以下环境: 发展 词 uat 生活 我说的环境构建是指每个环境都有一组属性文件,在构建过程中,这些属性用于模板项目文件,因此数据库服务器在dev环境中可能是“localhost”,但在CI中可能是“12.34.56.78”。因此,在启动构建时,您可以为它提供一个environment属性,它将为除dev(默认环境)之外的其他对象构建 现在,CI构建工作正常,并正确地吐出工件,但是,由于构建是CI,所以所有的CI都配置为在该环境下工作,我希望在CI构建成功时能够触发

我有一个环境构建系统,目前有以下环境:

  • 发展
  • uat
  • 生活
我说的环境构建是指每个环境都有一组属性文件,在构建过程中,这些属性用于模板项目文件,因此数据库服务器在dev环境中可能是“localhost”,但在CI中可能是“12.34.56.78”。因此,在启动构建时,您可以为它提供一个environment属性,它将为除dev(默认环境)之外的其他对象构建

现在,CI构建工作正常,并正确地吐出工件,但是,由于构建是CI,所以所有的CI都配置为在该环境下工作,我希望在CI构建成功时能够触发live或uat构建。这将运行相同的构建,但使用不同的构建参数

现在我注意到有几种机制可以实现这一点,其中一种似乎是在完成时自动触发,这可能会触发另一个构建,但这似乎需要两个独立的构建配置,它们基本相同,不同于构建参数“environment=live”而不是“environment=ci”。然后添加另一个构建步骤,该步骤与第一个步骤相同,但采用不同的参数并将活动工件输出到其他地方,但这与第一个选项非常相似


我能看到的最后一个选项是,一旦我有了一个活动的候选对象,就触发一个手动构建,但不清楚如何设置构建参数,我可以创建一个构建参数,但它似乎不像类似命令的构建参数那样被拉入构建脚本。

我将看看是否有更好的答案,但是在写了这篇文章之后,我发现使用构建参数似乎是最好的选择,然后可以使用%environment%(或%your_parameter_here%)将它嵌入到构建配置的任何地方


然后可以将其设置为创建手动生成的表单元素,这样您就可以轻松地为不同的环境创建生成。

写下此内容后,我觉得有些奇怪,最后我可以使用%environment%在项目中使用生成参数,因此使用此方法,我现在可以基于此进行手动生成,但是我仍然想看看其他人是如何做的。我使用构建参数来指定部署的目标环境设置。这样,您可以通过UI手动触发自定义构建,并指定所有必需的信息。