2012-08-09 37 views
0

这是我第一次尝试在Team City中设置生成配置。团队城市7.0 - 如何配置依赖于共享编译库的构建?

在Subversion中,所有第三方二进制文件都存储在一个名为Applications的独立存储库中,因为它是共享的。

所以我的本地机器上的路径是

D:\Dev\SolutionRoot\WebProjectRoot 

其在

D:\Dev\Applications 

团队市,我有两个构建配置(一个建设项目的.sln到二进制文件引用()和一个只是检查第三方二进制文件)。

对于Web项目构建的配置我增加了一个神器依赖依赖于“获取第三方二进制文件”,从“上次成功打造”获取的文物和神器规则:

/*/.=>Applications 

构建失败尝试解决工件依赖性。

Build 'Furniture :: Build' #528 
Started 'Thu Aug 09 15:13:50 BST 2012' on 'machine name' by 'Ryan' 
Finished 'Thu Aug 09 15:14:09 BST 2012' with status 'FAILURE Artifacts resolving failed' 
TeamCity URL http://localhost:8111/viewLog.html?buildId=14&buildTypeId=bt2 
TeamCity server version is 7.1 (build 23907) 

[15:13:50]: bt2 (18s) 
[15:13:50]: Checking for changes (running for 4m:57s) 
[15:13:50]: Publishing internal artifacts 
[15:13:50]: [Publishing internal artifacts] Sending build.start.properties.gz file 
[15:13:50]: Clearing temporary directory: C:\TeamCity\buildAgent\temp\buildTmp 
[15:13:50]: Clean build enabled: removing old files from C:\TeamCity\buildAgent\work\a3a48aff6a8b3347 
[15:13:50]: Checkout directory: C:\TeamCity\buildAgent\work\a3a48aff6a8b3347 
[15:13:50]: Updating sources: agent side checkout (18s) 
[15:13:50]: [Updating sources] Will perform clean checkout. Reason: Checkout directory is empty or doesn't exist (running for 4m:56s) 
[15:13:50]: [Updating sources] Cleaning C:\TeamCity\buildAgent\work\a3a48aff6a8b3347 
[15:13:50]: [Updating sources] VCS Root: Furniture (18s) 
[15:13:50]:  [VCS Root: Furniture] revision: 528_2012/08/09 12:00:34 +0100 
[15:14:09]: Resolving artifact dependencies 
[15:14:09]: [Resolving artifact dependencies] Failed to resolve artifact dependency <Furniture :: Get Third Party Binaries, build #2 [id 10]>: No files matched for patterns "/*/.=>Applications" from <Furniture :: Get Third Party Binaries, build #2 [id 10]> (jetbrains.buildServer.artifacts.ResolvingFailedException) 
[15:14:09]: [Resolving artifact dependencies] Failed to resolve 1 of 1 artifact dependencies 
[15:14:09]: Failed to resolve 1 of 1 artifact dependencies 
[15:14:09]: Publishing internal artifacts 
[15:14:09]: [Publishing internal artifacts] Sending build.finish.properties.gz file 
[15:14:09]: Build failed to start. Artifacts will not be published for this build 
[15:14:09]: Build finished 

我做得对吗?

回答

0

我在您的设置中看到几个问题。

首先要引入工件依赖性,你应该在源代码配置中(你的情况 - 配置,检出第三方库)publish those artifacts

然后,你实际上不应该使用工件依赖来检出短信。 TeamCity支持attaching of several VCS roots到配置。

所以在你的情况下,你可以有两个根连接的单一配置:根源与你的来源,根与libs。你也可以使用checkout rules来形成你需要的任何checkout directory结构。