Jenkins自动化构建

背景

  1. jenkins自动化构建gitlab项目
  2. gradle或maven多模块项目在自动化构建时希望每个模块独立部署,只部署有内容变化的模块

使用工具

  1. jenkins 2.151
  2. gitlab 11.4.4

jenkins自动化构建-待完善

  1. 配置jenkins所在服务器至部署项目服务器ssh免验证登录
  2. 创建jenkins项目并配置
  3. gitlab创建对应jenkins项目的webhook

多模块独立构建

  1. 原理:
    • 通过Pathignore插件选择制定模块有文件变化时出发编译动作
    • gradle构建指定子模块build.gradle文件,构建独立一个模块;maven同理(指定pom.xml)
  2. jenkins安装 Pathignore plugin
    1.png
  3. jenkins项目配置Pathignore
    • BuildEnvironment勾选Do not build if only specified paths have changed
    • 勾选 Invert ignore?
    • 录入指定路径 Ignored paths
      2.png
  4. jenkins项目配置gradle构建,maven同理
    • 选择Gradle Version
    • 打开Advance
    • 录入Root Build script
      3.png
  5. jenkins项目配置部署,同独立项目
  6. 至此,在gitlab上提交代码时只触发文件变更的模块,其他模块不执行构建动作
    4.png