在我们的TeamCity构建服务器上,每个项目现在使用项目的POM文件中的命令行参数-DaltDeploymentRepository
或<distributionManagement>
来指定部署存储库。
但是我们计划迁移到Nexus 3,并且需要做大量的工作才能确保正确配置所有项目。还有一个事实是必须与每个开发人员沟通部署过程。
是否可以在settings.xml
或其他内容中指定Maven部署目标,除非另有说明,否则任何在TeamCity上执行deploy
的项目都将部署到正确的存储库?
答案 0 :(得分:2)
...在Key Equivalent
... no:
Servers
下载和部署的存储库由POM的
repositories
和distributionManagement
元素定义。
...或其他......是的:
从您所有项目继承的地方创建一个(或者,如果已经存在,请使用)parent POM。
答案 1 :(得分:1)
我找到了另一个解决方案:TeamCity元流程。通过生成工作版本,您可以提取一个类似于构建步骤宏的元运行器。
如果您第一次使部署工作,您可以使用TeamCity构建配置中的Actions->Extract meta-runner...
提取元运行器。
这显示了XML的编辑器,它指定了构建运行器。删除所有非部署特定的构建步骤,您可以在meta-runner/settings/params
块中提供构建步骤参数。您可能需要在构建步骤的%pomLocation%
块中添加pomLocation并指定<params>
。