如何将env(dev,test,prod)特定工件部署到Artifactory表单Jenkins

时间:2017-08-14 19:06:16

标签: maven jenkins war artifactory artifacts

我正在使用Profiles为Dev,Test和Prod Environment创建3个Artifacts(war),如下所示:

clean install -P dev
cp target/ABC.war output/ABC-dev-${BUILD_NUMBER}.war

clean install -P test
cp target/ABC.war output/ABC-test-${BUILD_NUMBER}.war

clean install -P prod
cp target/ABC.war output/ABC-prod-${BUILD_NUMBER}.war

要从Jenkins执行此操作,我正在使用Jenkins插件"调用顶级Maven目标"。

一旦创造了所有的战争,我想将它们部署到Artifactory!

我谷歌很多,但没有找到任何关于将我的工件部署到Artifactory的东西。

  

注意:我能够使用" clean deploy -P构建和部署我的工件   dev",但在这种情况下,我无法修改我的工件名称。   (公司Artifactory不允许部署而不进行版本控制   启用)

任何帮助都将受到高度赞赏。谢谢!

2 个答案:

答案 0 :(得分:0)

您可以使用cURLwar文件上传到Artifactory。

$ curl -v --user username:password --data-binary @/local/path/to/war-file/ABC-dev.war -X PUT "http://org.artifactory.com/artifactory/repo_name/folder_name/ABC-dev-${BUILD_NUMBER}.war

答案 1 :(得分:0)

您可以使用JFrog CLI根据模式将不同的文件发布到不同的位置。例如:

jfrog rt u "*dev*" "dev-repo/path/to/file"
jfrog rt u "*test*" "test-repo/path/to/file"

那是您不必知道确切的文件名,并可以使用该模式将文件上传到正确的位置。

这是你在找什么?