[Jenkins][GitHub]2 持续集成环境初探
预计阅读时间:30分钟
部署环境:Jenkins ver. 2.61 + Centos7 + Java 1.8
参考链接: http://www.jianshu.com/p/22b7860b4e81
目标:在之前搭建的Jenkins实现如下操作,了解源码管理/构建触发器/构建环境/Bindings构建/构建后操作等基本配置操作,利用Jenkins实现初步的持续集成
github仓库的使用
makefile的使用
脚本的使用
[步骤1 配置邮箱通知] 参考链接 http://www.debugrun.com/a/T9PeIVx.html
坑:126邮箱必须开通客户端授权认证,然后在Jenkins中代替邮箱密码在客户端登录邮箱使用
为了避免密码泄露造成邮箱安全隐患,需设置客户端授权码,用授权码代替密码在客户端登录邮箱

[步骤2 添加授权认证 Add Credentials]参考http://www.jianshu.com/p/22b7860b4e81
1 在github上创建access token
Tokens you have generated that can be used to access the GitHub API.
Make sure to copy your new personal access token now. You won’t be able to see it again!
[步骤3 Create sample go project with makefile]
makefile编写参考http://www.tuicool.com/articles/ueIfAve
1. 在github项目中添加如下目录结构 DevOps/Jenkins/

2. main.go
package main import "fmt" // Variables to identify the build var (
Version = "1.0.0"
Build = "2017-05-17"
) func main() {
fmt.Println("Version: ", Version)
fmt.Println("Build time: ", Build)
}
3. Makefile
# Default target: builds the project
build:
go build # Installs our project: copies binaries
install:
go install # Cleans our project: deletes binaries
clean:
go clean
[步骤4 配置github以及hook,Config github/git hook]
参考 http://www.jianshu.com/p/22b7860b4e81 进行配置
其中Github的项目配置如下 ,链接地址为 http://<Jenkins IP:8080>/github-webhook/

其中Execute shell 参考编写如下
pwd
ls
go version
echo "hello Jenkins"
make -C src/DevOps/Jenkins
坑 1.Jenkins服务器上需要安装git ,github上需要配置access key,然后在Jenkins上配置相应的权限
坑2. 我找了1个小时也没有找到Build when a change is pushed to GitHub,最后google到了答案如下:
On the v1.25.1 release of the GitHub plugin, trigger Build when a change is pushed to GitHub has been renamed to
GitHub hook trigger for GITScm polling.
[步骤5]持续集成测试环境之初显威力。
由于Hook了github,因此每次commit都会触发build操作,然后检查项目构建历史

预告:下期“持续集成进阶”想要实现的目标
dockerhub的调用
ansible 配置的调用
Job的依次调用
[Jenkins][GitHub]2 持续集成环境初探的更多相关文章
- 构建基于Jenkins + Github的持续集成环境
搭建持续集成首先要了解什么是持续集成,带着明确的目标去搭建持续集成环境才能让我们少走很多弯路.持续集成(Continuous integration)简称CI,是一种软件开发的实践,可以让团队在持续集 ...
- Redhat上为java Maven项目构建基于Jenkins + Github的持续集成环境
在Redhat enterprise 6.5 的服务器上,为在gutub 上的 java mvaen项目构建一个持续集成环境,用到了Jenkins.因公司的服务器在内网,访问外网时要通过代理,所以为m ...
- jenkins + Git 搭建持续集成环境
持续集成通过自动化构建.自动化测试以及自动化部署加上较高的集成频率保证了开发系统中的问题能迅速被发现和修复,降低了集成失败的风险,使得系统在开发中始终保持在一个稳定健康的集成状态.jenkins是目前 ...
- Linux下Jenkins+git+gradle持续集成环境搭建
Linux下Jenkins+git+gradle持续集成环境搭建 来源:IT165收集 发布日期:2014-08-22 21:45:50 我来说两句(0)收藏本文 一.项目介绍 和 linux ...
- 基于 Jenkins 快速搭建持续集成环境--转
源地址:http://www.ibm.com/developerworks/cn/java/j-lo-jenkins/ 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础 ...
- Jenkins 快速搭建持续集成环境
持续集成概述 什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域 ...
- 用Jenkins构建Django持续集成环境
用Jenkins构建Django持续集成环境 - V2EX https://www.v2ex.com/t/32054
- 基于 Jenkins 快速搭建持续集成环境
什么是持续集成 随着软件开发复杂度的不断提高,团队开发成员间如何更好地协同工作以确保软件开发的质量已经慢慢成为开发过程中不可回避的问题.尤其是近些年来,敏捷(Agile) 在软件工程领域越来越红火 ...
- Jmeter+Ant+Jenkins接口自动化持续集成环境搭建(Linux)
一.安装说明 系统环境:CentOS release 6.4 JDK版本:jdk1.8.0_181 Jmeter版本:apache-jmeter-3.0 Ant版本:apache-ant-1.9.13 ...
随机推荐
- log4net示例2-日志输入存入Access(转)
需求:基于log4net组建,创建Console程序将日志输出到Access数据库. 具体实施: (1)创建控制台程序. (2)控制台程序中,添加一个纯文本文件,文件命名为“log-Access.se ...
- JAVA8中接口的一些新用法(springboot环境)
@Configuration public interface IAbstractConvertStrategy { CacheService getCacheService(); default b ...
- LeetCode_374. Guess Number Higher or Lower
374. Guess Number Higher or Lower Easy We are playing the Guess Game. The game is as follows: I pick ...
- delphi self.Update 什么作用
更新指定窗口的客户区.如果窗口更新的区域不为空,UpdateWindow函数就发送一个WM_PAINT消息来更新指定窗口的客户区.函数绕过应用程序的消息队列,直接发送WM_PAINT消息给指定窗口的窗 ...
- Top 10 Machine Learning Algorithms For Beginners
Linear Regression Logistic regression KNN Classification Support Vector Machine (SVM) Decision Trees ...
- CentOS7使用yum安装RabbitMQ
转自:https://jingyan.baidu.com/article/456c463b16f3820a583144a1.html 登录名:admin 密码:admin 1. 如果安装后web界 ...
- Framework7 介绍
Framework7 - is a free and open source framework to develop mobile, desktop or web apps with native ...
- CEIWEI USBMonitor USB监控精灵 v2.3.2 USB过滤驱动 USB监控
CEIWEI USBMonitor USB监控精灵 是一款监控USB端口协议分析软件,用于监控和分析USB设备协议,可以拦截.记录USB软件程序操作USB设备的In.Out数据包.支持监控分析USB票 ...
- Ubuntu18.04 安装MySQL
安装 #命令1 sudo apt-get update #命令2 sudo apt-get install mysql-server 初始化 sudo mysql_secure_installatio ...
- Git master合并分支时提示“Already up-to-date”
Git master合并分支时提示"Already up-to-date" 在使用Git把当前分支合并到master提示"Already up-to-date&quo ...