Maven 詹金斯:从artifactory部署war文件

Maven 詹金斯:从artifactory部署war文件,maven,deployment,jenkins,continuous-integration,jenkins-plugins,Maven,Deployment,Jenkins,Continuous Integration,Jenkins Plugins,我们正在使用Jenkins构建(maven)并将工件(jar&*WAR*s)部署到内部工件服务器(快照和发布版) 对于部署,目前,我们得到了Jenkins作业,这些作业打包war文件(来自发布scm标记)并部署到不同的环境/服务器。我们想跳过打包阶段,因为似乎没有必要再次打包&再次打包发布版本,因为即使尝试1000次,也不可能获得不同的war文件副本 我们正在Jenkins中寻找一种从Artifactory获取工件(war)并将其部署到容器中的方法。我相信其他人也会面临这种情况,但我无法在网上找

我们正在使用Jenkins构建(maven)并将工件(jar&*WAR*s)部署到内部工件服务器(快照和发布版)

对于部署,目前,我们得到了Jenkins作业,这些作业打包war文件(来自发布scm标记)并部署到不同的环境/服务器。我们想跳过打包阶段,因为似乎没有必要再次打包&再次打包发布版本,因为即使尝试1000次,也不可能获得不同的war文件副本

我们正在Jenkins中寻找一种从Artifactory获取工件(war)并将其部署到容器中的方法。我相信其他人也会面临这种情况,但我无法在网上找到任何有关这方面的资料

是否有Jenkins插件从Artifactory(基于版本)获取war文件并将其部署到远程容器?

如果这不是正确的方法,那么其他方法的建议是什么?


谢谢

存储在Artifactory中的每个工件都将有一个包含版本号的唯一URL。它将采用这种格式

http://artifactory-server/repository-name/path-to-artifact/version/filename
e、 g

(根据您的打包方式,WAR文件名可能还包括版本号)


因此,部署作业可以构造artifactoryurl并下载文件。根据您在Artifactory中设置安全性的方式,您可能需要对请求进行身份验证。

我不知道有哪个插件采用某个版本并部署该版本,但您可以构建Jenkins作业,将上一个成功的版本部署到以前的环境中(例如,从DEV-->QA复制)

要做到这一点,您需要使用复制工件插件

以下是此类设置的一个易于操作的运行过程:


是的,我明白了。我这里的问题是如何在jenkins中进行部署工作,从URL下载war文件;Maven有一个内置的Tomcat部署,你可以在Jenkins中编写一个shell构建步骤来完成部署步骤。maven tomcat插件是否允许部署存储在artifactory上的war?编写一个shell脚本来下载war并进行部署是有意义的,但我只是想知道在我不知道的一些jenkins或maven插件中是否已经完成了这项工作。我对maven插件不太熟悉,但我认为它将获取本地生成的war文件,并从构建从属服务器进行部署。如果愿意,您仍然可以在单独的步骤中将WAR发布到Artifactory,您不需要从Artifactory部署它
http://artifactory/apps-releases-local/com/yourorg/yourapp/1.5.67/webapp.war