Jenkins(二)

发布时间 2023-03-22 21:17:20作者: huiyii
 

初识

Jenkins本身运行需要内存,持续构建(特别是大型构件)也需要占用内存(每次构建都会新建一个java进程),Jenkins的内存设置:
  • JAVA_OPTS,设置Jenkins程序的JVM
  • MAVEN_OPTS、ANT_OPTS,设置构建作业时创建的新JVM
目录结构:
  • jobs/workspacee:每一个项目对应一个workspace,是Jenkins对该项目进行构建的地方
  • jobs/builds:这个项目的构建历史,会随着时间增大,可以通过设置来限制构建历史

Jenkins配置

配置系统环境、配置全局属性、配置jdk maven git、配置邮件服务器、配置代理(内网不能直接访问外网时)

构建job

General

  • Discard old builds 丢弃旧的构建
  • 参数化构建

源码管理

  • Git 需要安装插件,配置ssh公钥

构建触发器

  • 远程构建
  • 定时构建
  • 轮询 SCM,定时访问git仓库,有提交变更就触发Jenkins构建
  • GitHub hook trigger for GITScm polling 代码提交触发自动构建,需要一定配置 gitlab+jenkins自动化部署

构建环境

  • Delete workspace before build starts 构建前删除workspace下的文件,可指定文件
  • Add timestamps to the Console Output

构建

  • 执行shell
  • 调用顶层maven目标
    • 目标栏 为maven命令:如 clean install,可使用参数有:
      • -U (--update-snapshots),强迫maven检查本地和远程仓库的版本,确保构建时使用最新的版本

构建后操作

  • Allure report
  • Post build task
  • 归档成品

自动化测试

参数化构建

配置:参数化构建过程,使用:${param}
远程触发参数化构建 JENKINS_URL/job/job_name/buildWithParameters?token=TOKEN_NAME&param=${param}

多重结构构建job

job内的构建作业并行运行

分布式构建

主从结构

Jenkins维护

  • Job配置,清除历史构建
  • Disk usage插件,安装插件后需要重启Jenkins
  • Jenkins内置的服务器活动监控功能:manage Jenkins页面,load statistics按钮,显示三个指标:总执行器数量、繁忙的执行器数量、队列长度
  • monitoring插件