集成Jenkins,进行构建 分享链接

最后编辑:张鹏 于 2022-07-28 13:43:20

禅道开源版增加了集成Jenkins功能。
可以集成Jenkins,并调用Jenkins进行构建。通过Jenkins的流水线触发构建,提供持续集成服务。



DevOps 配置视频:

一、安装和配置Jenkins

1、安装Jenkins服务器

安装文档 https://jenkins.io/zh/doc/book/installing/

注意:安装时间可能比较长,需要安装一些插件。

2、配置Jenkins
登录Jenkins,新建一个构建任务,构建一个自由风格的软件项目。


3、执行的构建Shell


GIT
	===Jenkins构建后命令===
	echo "PARAM_TAG = $PARAM_TAG";
	echo "PARAM_REVISION = $PARAM_REVISION";
	[ -z ${PARAM_TAG} ] || git checkout "${PARAM_TAG}"
	[ -z ${PARAM_REVISION} ] || git checkout "${PARAM_REVISION}"
	cat README
	===说明===
		参数
		PARAM_TAG:tag名
		PARAM_REVISION:revison编号
		初始化
		git clone https://gitee.com/aaronchen2k/ci_test.git
		构建tag
		export PARAM_TAG=tag111
		[ -z ${PARAM_TAG} ] || git checkout "${PARAM_TAG}"
		构建revision
		export PARAM_REVISION=6c3a7bf931855842e261c7991bb143c1e0c3fb19
		[ -z ${PARAM_REVISION} ] || git checkout "${PARAM_REVISION}"
SVN
	===Jenkins构建后命令===
	echo "PARAM_TAG = $PARAM_TAG";
	echo "PARAM_REVISION = $PARAM_REVISION";
	svn upgrade
	[ -z ${PARAM_TAG} ] || svn switch --ignore-ancestry "${PARAM_TAG}" 
	[ -z ${PARAM_REVISION} ] || svn up -r "${PARAM_REVISION}" 
	cat README
	===说明===
		参数
		PARAM_TAG:tag url
		PARAM_REVISION:revison数字
		初始化
		svn checkout --username aaronchen2k --password P2ssw0rd svn://svnbucket.com/aaronchen2k/ci_test_svn/trunk/ .
		构建tag
	    export PARAM_TAG=svn://svnbucket.com/aaronchen2k/ci_test_svn/tags/tag111
	    [ -z ${PARAM_REVISION} ] || svn upgrade
		[ -z ${PARAM_TAG} ] || svn switch --ignore-ancestry "${PARAM_TAG}" 
		构建revision
		export PARAM_REVISION=9
		[ -z ${PARAM_REVISION} ] || svn upgrade
		[ -z ${PARAM_REVISION} ] || svn up -r "${PARAM_REVISION}"

注意:

如果 jenkins 版本比较高( 在Jenkins启动前加入相关取消保护的参数配置后启动Jenkins,即可关闭CSRF):

-Dhudson.security.csrf.GlobalCrumbIssuerConfiguration=false

参考资料

https://unix.stackexchange.com/questions/444177/how-to-disable-the-csrf-protection-in-jenkins-by-default

http://www.likecs.com/show-105574.html

a. Jenkins若是跑在Tomcat下,只需在tomcat启动脚本中加入配置即可;若是以jar包形式部署的,只需在启动时加上配置参数即可。

b. 如果docker部署的话,需要配置下java环境变量

FROM jenkins/jenkins:latest
ENV JAVA_OPTS -Djava.net.preferIPv4Stack=true -Dhudson.security.csrf.GlobalCrumbIssuerConfiguration=false

二、维护Jenkins服务器

1、添加Jenkins服务器

添加Jenkins页面:

服务器地址填写Jenkins的服务器地址,默认端口为8080。
要进行构建任务,必填填写用户名和密码。
使用密码时,请在Jenkins全局安全设置中禁用“防止跨站点请求伪造”选项。

2、编辑、删除Jenkins服务器

Jenkins服务器添加成功后,可以在列表页里查看到。

可以通过右侧操作按钮进行编辑和删除操作。

如果该Jenkins已经创建了相关联的构建任务,那么该Jenkins不能被删除,需要先取消和删除相关联的构建任务才可以被删除。

三、创建Jenkins构建任务

1、添加构建任务
点击构建右上角的创建构建任务按钮,进入创建构建任务页面。

创建构建任务页面:

构建引擎选择:Jenkins。

Jenkins服务器:列表中会列出添加的Jenkins服务器。

流水线:选中的Jenkins服务器中的流水线。

注意:

如果遇到 jenkins服务器选择后jenkins流水线是空的(前提是jenkins中的确有任务存在),到Jenkins全局设置中把“匿名用户具有可读权限”前面打上对号:


触发方式:

GIT打标签:GIT版本库当有新tag的时候,执行构建任务。

提交注释包含关键字: 当检测版本库的注释里面包含设置关键字的时候,执行构建任务。

定时计划: 会在设置的日期和时间,执行构建定时任务

SVN监控目录: 当SVN监控目录中有目录变动的时候,执行构建任务。

创建构建任务成功后,可以在构建任务列表页查看到。

还可以通过右侧操作按钮对构建任务进行查看构建日志、编辑、执行、删除操作。

2、定时任务执行构建

为了成功构建任务,必须保证计划任务开启,并且保证下图的三个计划任务正常。

3、手动 执行 构建
点击构建任务右侧的执行按钮,可以手动进行构建。

构建成功的提示:

4、查看构建历史和日志
在构建任务列表可以查看到构建任务的引擎、代码库、触发方式、状态、构建时间、构建日志。

点击构建日志,可以查看到详细的日志。


先知 8945