有任务 - 在构建后将application.war
部署到Tomcat的目录中。
application.war
从buildAgent
框收集到服务器框。但是 - 它总是有不同的绝对路径 - 因为在路径名中使用buildId
:
/home/teamcity/.BuildServer/system/artifacts/ProjectName/buildName/BUILD_ID/application.war
使用...\application.war => /home/teamcity/directory
等目标目录的任何路径 - 确实将文件放入TeamCity主页中的/home/teamcity/directory
- 它始终使用/home/teamcity/.BuildServer/system/artifacts/buildName/BUILD_ID/home/teamcity/directory
作为"HOME"
。
所以 - 我不能告诉我们deploy.script
- 因为它不知道当前BUILD_ID
。
解决问题的正确方法是什么?
UPD 更改变量TEAMCITY_DATA_PATH
会影响整个服务器收集配置等。如何才能更改“工件存储”?
答案 0 :(得分:0)
我很确定您使用maven
或gradle
构建,我提供的方法是使用构建脚本正确部署artefact。
然而,要回答你的问题。您是否看过TeamCity的人工制品路径:
/repository/download/BUILD_TYPE_ID/.lastFinished/ARTIFACT_PATH
/repository/download/BUILD_TYPE_ID/.lastSuccessful/ARTIFACT_PATH
/repository/download/BUILD_TYPE_ID/.lastPinned/ARTIFACT_PATH
您可以在此处找到更多文档 - http://confluence.jetbrains.com/display/TCD7/Patterns+For+Accessing+Build+Artifacts