我希望你们能帮助我。 我的问题如下: 我有两个项目,每个项目在不同的svn root中相互依赖。 我所做的就是构建第一个,获取它的工件并将其手动复制到我想要的第二个项目中,然后运行第二个构建。 我希望能够运行1个构建它可以是一个新的ant build.xml文件,它将运行第一个构建,将其产品复制到我想要的地方,然后运行第二个构建。
第二个选项在teamcity中运行那些具有依赖关系的项目。我不知道该怎么做以及如何将第一个项目工件传递到第二个项目中需要它的正确文件夹中。
也许有人知道如何做到这一点。
感谢。
答案 0 :(得分:2)
TeamCity的Artifact Dependencies似乎是最好的选择 假设你有ProjectA和ProjectB:
配置TeamCity以从ProjectA发布文件:
General Settings
配置步骤。 Artifact paths
字段。 TeamCity将在构建完成后收集这些文件。 为ProjectB配置工件依赖项:
Dependencies
配置步骤,添加新的工件依赖Depend on
- 选择ProjectA Get artifacts from:
- 使用你需要的任何东西。可能,最后一次成功构建。Artifacts
- 从ProjectA输入工件路径。您可以使用弹出窗口选择具有UI的工件。Destination path
- 输入目标路径,其中将复制工件。路径相对于结帐目录现在,每次开始构建ProjectB时,它都会从上次成功构建ProjectA时下载工件。
如果您希望同时启动这些构建,请将Snapshot dependency
(在ProjectA上)添加到ProjectB。使用快照依赖,每次启动ProjectB时,它将首先触发ProjectA,等待ProjectA构建完成,并且(如果对ProjectA的“上次成功构建”具有工件依赖性)下载新的工件。