Jenkins 和 Github 的集成与部署

我有一些 Elasticsearch 的插件,比如这个:https://github.com/medcl/elasticsearch-analysis-ik,每过一段时间需要更新一下版本,因为 Elasticsearch 的版本更新了,一般来说,我的工作流程是这样的:

  1. 修改一下项目的 pom.xml 和 README(没错,为了发布一个新版本,代码其实没有修改)
  2. 本地 mvn package, 打好部署包
  3. 产生一个新的 Commit,Push 到
  4. Git tag 为新版本打上一个新的 Tag
  5. Git push 这个 commit 和 tag
  6. 打开 Github 页面,找到这个新的 release
  7. 手动上传本地打好的包

好吧,很痛苦,更痛苦的是,我要维护 4 个这样的插件 …

你可能会问,你怎么不用 Travis 啊,没错,我确实是这样做的,一开始也是用 Travis 自动编译和上传,突然某一天,居然上传和部署不了了,我折腾了好几次,网上的文档基本上都照着改了,就是不 work 啊,今天我最后试了一下,还是不行,
https://travis-ci.org/medcl/elasticsearch-analysis-ik/builds/375477393
错误提示也是莫名,完全不知道怎么解决,Travis 对我来说是黑盒子,有知道这个怎么解决的,欢迎不吝赐教。

好吧,还是自己来吧,反正我已经有 在运行了。

首先创建一个项目,设置 Github 仓库地址:

注意限制只编译 Tag 分支,即只编译 release 的版本。


执行编译打包任务。


上传到 Github,使用 Github-release 命令。


本地留一份归档,方便自己下载使用,速度快点。


如图。


如图。