Nexus Latest Snapshot and BadRequest
ijkplayer安卓库使用gradle构建,今天给它编写Jenkinsfile的时候遇到了两个问题。
问题1
gradle的maven插件上传完artifact之后并不会打印包上传的位置,这对Jenkins Pipeline是不太友好,因为我希望在Jenkinsfile中将上传的位置发送给需要这些artifact的开发者。
Nexus提供了”redirect”的API,如,我们可以使用如下url来定位最新的构建结果:
其中r为repository的名字,g为groupId,a为artifactId,v代表version。
在任务uploadArchives中加入如下操作,就可以在上传之后打印出artifact的信息。
问题2
由于同一个release版本三元组完全一样,上传会出现如下错误:
这是由于Nexus仓库禁止Redeploy,只需要更改仓库的Deployment Policy为Allow Redeploy即可。
注:不建议将Deployment Policy设置为Allow,这样不利于回滚
Copyright © 2016-2024 by 赵军旺