问题:使用 Maven/Jenkins/Git 创建发布标签

我在开发过程中使用 Jenkins、GIT 和 Maven。我有两个分支开发和掌握。像往常一样,我在开发中进行开发、测试并将其合并到 master 以便发布 jar。

我正在使用 Jenkins 将我的快照/发布 jar 部署到我们的 Nexus 存储库。当我部署/发布发布 jar(没有 -SNAPSHOT 的)时,我想在我的 github 存储库中创建一个发布 TAG,而我想在部署我的快照时避免这种情况。

我浏览了http://www.dev9.com/article/2014/9/java-release-process-with-continuous-delivery和https://axelfontaine.com/blog/final- 的帖子nail.html得到一些想法。

我的问题如下:

  • 我是否需要为我的开发和主分支保留两个不同的 Jenkins 工作? master 将具有 maven-scm-plugin 和 maven-version-plugin 的配置来创建标签。

  • 我是否需要从我的 master 分支的 pom.xml 中的版本中删除“-SNAPSHOT”?我知道 scm 插件会在创建标签时删除那些,但我想 maven 会使用“-SNAPSHOT”发布/部署 jar?在为我的主分支运行 Jenkins 作业时,我想部署 1.0.0.jar 而不是 1.0.0-SNAPSHOT。

解答

基本上你需要以下插件:http://maven.apache.org/maven-release/maven-release-plugin/

该插件执行以下操作:

    1. 删除-SNAPSHOT,并提交
    1. 在git中标记版本,提交
    1. 增加版本号并添加-SNAPSHOT,提交
    1. 推动那些改变

jenkins 中的样子(工作配置)詹金斯

Logo

CI/CD社区为您提供最前沿的新闻资讯和知识内容

更多推荐