我刚想通了,如何向CB托管的maven“发布”存储库发布。我想弄清楚,如何将标记版本部署到CB应用程序。 据我所知,我可以手动上传WAR文件但是有任何脚本。据我所知,CB的maven插件不支持它。
我有一个appserver正在运行jenkins的快照构建。 我有其他appserver,我想只部署标记/发布的工件。
答案 0 :(得分:1)
将应用程序部署到CloudBees RUN @ cloud服务有四种方法:
使用SDK提供的bees
命令
使用bees-maven-plugin
通过网络GUI使用手动上传
使用Jenkins的CloudBees Deployer插件
您选择哪个选项取决于部署的位置...而我正在谈论的是 machine 正在进行部署,而不是文件的来源。
如果从Jenkins工作运行,最好的选择是Jenkins插件。
如果从您自己的笔记本电脑运行,那么web ui或bees
命令最简单。
如果作为maven构建的一部分运行,maven插件是最简单的......(虽然我应该警告maven插件(暂时移除我的云帽并戴上我的maven PMC帽子)是shite并且完全是arsewise ;-))
最好的办法是设置一个使用依赖项的Jenkins作业:从repo中提取工件,然后添加一个cloudbees部署者构建步骤以推送到RUN @ cloud
好消息是将maven插件捣乱成更像maven的东西就像我们的路线图一样......希望这将启用像你可以通过ship-maven-plugin @ mojo实现的操作,你可以在其中指定特定的发布版本用于“运输”到生产。
答案 1 :(得分:0)
我想,您要做的是将发布工件部署到您的存储库。
简而言之,您需要做的是:
$ mvn release:prepare
$ mvn release:perform
它并不是那么简单,因为您需要适当地配置您的pom.xml以使其正常工作。查看maven-release-plugin示例和用法页面。
答案 2 :(得分:0)
您是否正在从Jenkins构建中创建标记/发布?如果是这样,您可以使用target/checkout/something.war
使用Deploy to CloudBees构建后步骤。
更一般地说,我想你会想要编写一个脚本来使用mvn dependency:get
,然后使用Bees SDK来获取最新发布的工件并进行部署。