Bamboo部署项目到Artifactory

时间:2014-02-26 20:04:00

标签: deployment artifactory bamboo

我一直在研究这个问题,但找不到答案。 我使用Bamboo 5.3和Artifactory插件1.6.2。我有一个生成.war和两个.zips的构建项目。我还有一个Bamboo Deployment项目,它使用这三个文件创建版本,并部署到DEV,QA等。

对于构建项目,我可以使用artifactory插件,没关系。问题是如果我发布所有构建,我最终会得到很多工件。我想向Artifactory发布仅来自发行版的文件,因此不太经常发生,并且人们只会看到3-4次发布尝试,而不是150次发布。

我的问题是,在创建我的部署任务(如下载,复制,调用ssh脚本......)时,没有“Artifactory Generic Deploy”,就像构建项目任务一样。

我看到有一个新的Bamboo 5.4在部署过程中有一些改进,这可能会有所帮助吗?

3 个答案:

答案 0 :(得分:7)

从Artifactory插件版本1.8.0开始,支持从Bamboo到Artifactory的部署任务。

这是Jira issue

答案 1 :(得分:1)

我遇到了类似的问题。希望下载的artifactory插件将与部署项目集成。

如果您愿意使用Maven来代理部署,deploy-file可以完成工作。

在部署项目中,在您的工件下载任务为您要发送的每个工件添加Maven 3.x任务。

您需要指定构建JDK以及我正在使用的MAVEN_OPTS="-DskipTests=true -XX:MaxPermSize=4096m"

的环境变量

对于实际的maven命令:

deploy:deploy-file 
-Durl=http://${bamboo.artifactory_username}:${bamboo.artifactory_password}@${bamboo.artifactory_url}/artifactory/${bamboo.destinationRepo}
-DrepositoryId=localhost
-Dfile=${bamboo.pathToArtifact}/${bamboo.arftifactName}-${bamboo.majorVersion}.${bamboo.minorVersion}.${bamboo.arftifactExtension}
-DgroupId=${bamboo.arftifactGroup}
-DartifactId=${bamboo.arftifactName}
-Dversion=${bamboo.majorVersion}.${bamboo.minorVersion}
-Dpackaging=${bamboo.arftifactExtension}
-DgeneratePom=true

希望这有帮助!

答案 2 :(得分:0)

神器API非常适用于此目的。您可以在shell脚本中直接使用curl进行部署。

有关详细信息,请参阅https://www.jfrog.com/confluence/display/RTF/Artifactory+REST+API