全球领先的开源自动化服务器,詹金斯提供了数以百计的插件来支持构建、部署和自动化任何项目。
本机安装
Jenkins依赖于java8的环境,先安装java8环境:
https://tecadmin.net/install-oracle-java-8-ubuntu-via-ppa/
sudo add-apt-repository ppa:webupd8team/java
sudo apt-get update
sudo apt-get install oracle-java8-installer
Ubuntu16.04安装步骤参考:
主要步骤:https://www.linuxidc.com/Linux/2016-12/138290.htm
sudo apt-get install jenkins=2.138.1:https://www.jianshu.com/p/845f267aec52
error libappstream3:https://blog.csdn.net/ljttianqin/article/details/78205145?locationNum=3&fps=1
ERROR: No Java executable found in current PATH: /bin:/usr/bin:/sbin:/usr/sbin:https://blog.csdn.net/yi_suo_yan_yu/article/details/81981789
jdk web:https://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
svn用来做代码版本管理,maven用来编译,tomcat是web容器,jenkins是自动化构建的工具。
插件管理
Manager Jenkins -> Manage Plugins -> Available,install
Rebuilder、Safe Restart
用户管理
Manager Jenkins -> Configure Global Security -> Matrix-based security -> 管理权限
(添加新用户后,管理该用户权限:Manager Jenkins -> Manage user -> 创建新用户)
远程服务器环境准备
(1)准备Linux服务器
(2)为服务器安装并配置java、git、Maven、Tomcat
(3)将服务器注册到jenkins上并验证
将Linux注册到Jenkins上
Manager Jenkins -> Manage Nodes -> New Node -> 配置路径、IP、用户名、密码 -> 启动从节点验证Linux服务器已经成功注册到jenkins上 -> 回到主页,新建job验证Jenkins任务可以远程运行在linux上
如果node连接不上,可能需要增加新用户:https://www.cnblogs.com/qdlk/p/7543411.html
向GitHub提交代码时触发Jenkins自动构建:https://blog.csdn.net/boling_cavalry/article/details/78943061
Jenkins 配置邮件通知:https://blog.csdn.net/fullbug/article/details/53024562
Not sending mail to unregistered user user@example.com:https://stackoverflow.com/questions/45350740/jenkins-email-plugin-doesnt-send-email-to-user-who-broke-the-build
jenkins配置邮件及增强版邮件通知:https://blog.csdn.net/u013066244/article/details/78665075
《Jenkins权威指南》
第1 章 Jenkins 简介
简介
持续集成基础
Jenkins 简介(née Hudson)
从Hudson 到Jenkins——一个简短的故事
应该使用Jenkins 还是Hudson
引进持续集成到你的公司
阶段1——无构建服务器
阶段2——夜间构建
阶段3——夜间构建加自动化测试
阶段4——加入度量指标 # 代码质量和代码覆盖率
阶段5——更认真地对待测试
阶段6——自动化验收测试和自动化部署
阶段7——持续部署
接下来做什么呢
第2 章 迈入Jenkins 的第一步
简介
准备环境 # Maven是java的build工具、Tomcat是应用程序服务器
安装Java
安装Git
创建GitHub 账号
配置SSH 密钥
创建代码库分支
启动Jenkins
配置工具
配置你的Maven 设置
配置JDK
通知
设置Git
你的第一个Jenkins 构建作业
你的第一个构建作业
更多的报告——显示Javadoc
添加代码覆盖率和其他度量
小结
第3 章 安装Jenkins
简介
下载和安装Jenkins
为Jenkins 准备好构建服务器
Jenkins 主目录
在Debian 或者Ubuntu 系统上安装Jenkins
在Red Hat、Fedora 或者CentOS 上安装Jenkins
在SUSE 或者OpenSUSE 上安装Jenkins
以单机应用形式运行Jenkins
基于Apache 服务器运行Jenkins
在应用服务器上运行Jenkins
内存方面的考虑
安装Jenkins 为一个Windows 服务
Jenkins 主目录里有什么
备份Jenkins 数据
升级Jenkins 安装
小结
第4 章 配置Jenkins 服务器
简介 # SCM源代码管理器source code manager
配置面板——Manage Jenkins 界面
配置系统环境
配置全局属性
配置JDK
配置构建工具
Maven
Ant
Shell 脚本
配置版本控制工具
配置Subversion
配置CVS
配置邮件服务器
配置代理
小结
第5 章 设置构建作业
简介
Jenkins 构建作业
创建自由式构建作业
通用选项
高级项目选项
配置源代码管理
用Subversion 工作
使用Git
Build Triggers
构建作业完成后触发下一个
计划构建作业
轮询SCM
远程触发构建
手工构建作业
构建步骤
Maven 构建步骤
Ant 构建步骤
执行Shell 或Windows 批处理命令
在构建中使用Jenkins 环境变量
运行Groovy 脚本
用其他语言构建项目
构建后的操作
报告测试结果
归档构建产物
通知
构建其他的项目
运行新的构建作业
使用Maven 构建作业
每当SNAPSHOT(快照)依赖被建立时都要进行构建
配置Maven 构建
构建后期操作
部署到企业仓库管理器
部署到商业企业仓库管理器
管理模块
Maven 构建作业中额外的构建步骤
用其他语言使用Jenkins
用Grails 构建项目
用Gradle 构建项目
用Visual Studio MSBuild 构建项目
用NAnt 构建项目
使用Ruby 和Ruby on Rails 构建项目
小结
第6 章 自动化测试
简介 # 包括单元测试xUnit(CppUnit),集成测试(验收测试,面向非开发人员展示这个项目处于什么阶段),web测试,功能测试,性能测试,负载测试
自动化单元和集成测试
在Jenkins 中配置测试报告
显示测试结果
忽略测试
代码覆盖率 # 测试过程中应用程序的哪些部分正在被执行
使用Cobertura 测量代码覆盖率
使用Clover 测量代码覆盖率
自动化验收测试
JMeter 自动化性能测试
请求帮助!我的测试运行得太慢了
添加更多的硬件
运行更少的集成/ 功能测试
并行运行测试
小结
第7 章 Jenkins 安全
简介 # 用户操作的权限
激活Jenkins 安全
Jenkins 安全实例
安全域——定义Jenkins 用户
使用Jenkins 内置用户数据库
使用LDAP 仓库
使用微软活动目录
使用UNIX 用户和用户组
Servlet 容器授权
使用Atlassian Crowd
与其他系统集成
授权——谁可以做什么
安全矩阵
基于项目的安全
基于角色的安全
审计——跟踪用户行为
小结
第8 章 通知
简介
电子邮件通知
更高级的电子邮件通知
声明构建
RSS 订阅
构建分发器
即时消息
用Jabber 进行IM 通知
使用IRC 的IM 通知
IRC 通知
桌面通知器
通过Notifo 通知
移动通知
短信通知
制造噪声
极端反馈设备
小结
第9 章 代码质量
简介
构建过程中的代码质量 # 包括语法、命名规范等
受欢迎的Java 和Groovy 代码质量分析工具
Checkstyle
PMD/CPD
FindBugs
CodeNarc
使用Violations 插件报告代码质量问题
与自由风格下的构建作业一起工作
使用Maven 构建作业
使用Checkstyle、PMD 和FindBugs 报告
报告代码复杂度 # 代码质量也包括代码复杂度
报告未完成的任务
集成Sonar
小结
第10 章 高级构建
简介
参数化构建作业 # build code时,可输入不同的配置参数
创建一个参数化构建作业
为构建适配参数化构建脚本
高级参数类型
使用Subversion 标签构建
使用Git 标签构建
远程启动参数化构建作业
参数化构建作业历史
参数化触发 # 主项目build完成后,可以参数化的再去触发build下一个项目
多重结构的构建作业 # 不同输入配置环境下的各种build,如win/linux/ios和mysql/redis的不同组合
搭建多重结构构建
配置从节点轴
配置JDK 轴
自定义轴
执行多重结构构建
自动生成Maven 构建作业
配置作业
使用继承复用作业配置
插件支持
自由式作业
构建协作
在Jenkins 中并行构建
依赖关系图
连接
Locks and Latches 插件
构建管道及优化
通过M2Release 插件管理Maven 版本发布
复制构建产物
构建进阶
汇总测试结果
构建管道
小结
第11 章 分布式构建
简介
Jenkins 分布式构建架构
Jenkins 主/ 从策略
主节点使用SSH 启动从节点代理
使用Java Web Start 手工启动从代理
把Jenkins 从节点安装为Windows 服务
无主节点模式启动从节点
以远程服务方式启动Windows 从节点
把构建作业与一个或一组从节点关联
节点监控
云计算
使用Amazon EC2
使用CloudBees DEV@cloud 服务
小结
第12 章 自动化部署和持续交付
简介
实现自动化和持续部署 # 新机器上build个可运行的环境
部署脚本
数据库更新
冒烟测试
回滚更改
部署到应用程序服务器上
部署一个Java 应用
部署像Ruby 和PHP 这样基于脚本的应用程序
小结
第13 章 Jenkins 的维护
简介
监控磁盘空间
使用Disk Usage 插件
磁盘使用及Jenkins Maven 项目类型
监控服务器负载
备份配置
Jenkins 备份基础
使用备份插件
更为轻量的自动备份
构建作业归档
构建迁移
小结
reference:
https://www.liaoxuefeng.com/article/001463233913442cdb2d1bd1b1b42e3b0b29eb1ba736c5e000
https://www.imooc.com/video/17405
https://jenkins.io/
https://blog.csdn.net/kefengwang/article/details/54233584