持续集成工具Jenkins的使用之配置篇(二)

上一篇 :持续集成工具Jenkins的安装配置之安装篇(一)-CSDN博客

接上文

三.Jenkins配置

Jenkins配置主要是针对创建构建任务前做的一些基本配置,这些配置有些是必须的,有些是可以帮我们提高效率的,总之都是Jenkins管理员都要会的一些操作,如下配置都并非必设项,也没有固定顺序 ,完全根据个人需求来设置即可。

3.1 用户管理(创建用户)

当一个团队在使用Jenkins时,一般都会为不同角色创建不同账号,从而给为每个账号设置不同权限 ,这样就能相对安全的管理多个用户 。那么接下来我们就为Jenkins创建一个账号 。

创建步骤如下:

  1. 点击系统管理-管理用户节点 。

  2. 进入的页面中点击新建用户 ,输入对应的新用户信息 。

  3. 新建后可以查看用户列表 。

3.2 插件管理(添加插件)

很多时候,使用Jenkins时需要自己安装一些插件,以满足工作需求 。就比如若要在Jenkins界面上查看HTML格式的报告 ,这个时候你就需要安装一个名为HTML Publisher的插件 。具体安装什么插件,插件叫什么名字,这个需要提前知道 。

安装步骤如下:

  1. 点击系统管理-插件管理节点 。

  2. 进入的页面中,切换到可选插件 ,在上面搜索框输入你要搜索的插件,比如我这里以HTML Publisher为例 。

  3. 选中插件前的复选框,点击"Install without restart" .

  4. 等待插件安装,安装后可重启Jenkins即生效 。

说明:同样其它插件安装也是如此,需要你提前知道插件的名字 。

3.3 视图管理(添加视图)

视图可以对创建的任务进行分组显示, 分组的维度可以由管理员确定 ,此功能主要用户提高查询效率 。比如我这里以角色来进行分组 ,分为开发,测试,线上 。

具体操作步骤如下:

  1. 点击"新建视图",输入视图名称 ,选择列表视图 。

  2. 进入新设置页,直接点击保存即可 。

  3. 添加视图后,我们后续新建的Job就会按视图进行分组管理。具体如下:

3.4 用户权限配置

当团队都在一个Jenkins时,用户的分组管理是非常有必要的 ,比如按照用户进行设置权限,不同的用户只能操作对应的视图或者只能进行相应的操作 。这样就会给多不必要的麻烦 。

具体操作步骤如下:

  1. 点击Manager Jenkins-Configure Gloabl Security

2.选择授权策略下的安全矩阵,点击Add user or group... ,将已存在的用户添加进来 。

3.根据上面的不同类型和人员进行矩阵选择 。

这样不同的人员登录Jenkins后,就会只能在权限范围内的功能可以操作,其它功能都是无法操作的 。

3.5 控制用户操作不同视图

虽然在上面我们已经介绍,可以为不同用户添加不同功能的操作权限 ,但有时候我们的Jenkins会有不同部门一起使用,比如开发部门,测试部分,运维部门等 。那么我们就会建几个不同的视图,每个角色只能在对应的视图下进行操作。按照上面的配置肯定是无法满足需求的,接下来我们就实现下这种需求 。

具体操作步骤如下:

  1. 下载插件:role-strategy ,下载地址:Role-based Authorization Strategy,进入下载列表页可以选择最后一个版本进行下载。

  2. 回到Jenkins中,点击Manager Jenkins-Manager Plugins - 高级 。在上传插件中选择本地已下载的插件进行上传 。

  3. 安装完成后,重启Jenkins

  4. 选择Manager Jenkins-Configure Global Security-Role-Based Strategy 。

  5. 选择Manager Jenkins-Manage and Assign Roles。

  6. 往里面添加不同角色,勾选上Overall中的Read,若向看其他视图中的任务,也可以在Job上勾选上可读 。

  7. 接下来就是在Item roles中添加不同的角色,然后为每个角色中匹配对应的关键字 。如我创建test账号,只允许下面展示以test开头的任务,那么就在Pattern中输入test.* 。这样在这个视图下就会只展示test开始的任务。

  8. 接下来进行分配角色,同样是在Manage and Assign Roles下面点击Assign Roles.

  9. 设置Global roles 和Item roles中的角色账号 ,最后点击保存。

  10. 使用其中一个账号登录进去查看,查看任务的分类显示 。

有时候也有这样的需求,比如test用户只能看test视图,其它的视图也不允许看,该怎么弄呢 ?其实就是在上面的权限控制中将任务中的查看权限取消掉就可以了,最后登录进来就变成了这样的。

3.6 全局配置工具

全局配置工具主要是对一些常用的工具进行配置,这些常用工具包括Maven、JDK、Git、Grade、Ant。你如果没有为这些工具配置环境变量,这时如果在Jenkins里执行这些命令就会报错。所以,为了避免出错,可以为你所使用的工具进行配置。

3.6.1 配置Maven
  1. 下载Maven,将Maven放在一个目录下(以Windows为例)

  2. 在Jenkins中点击Manager Jenkins - Global Tool Configuration 进入。

  3. 配置Maven settings.xml文件 .

  4. 将滚动条拉倒底部,选在Maven安装,将Install automatically前的复选框取消 。

  5. 配置Maven的环境变量 ,然后点击保存。具体如下:

3.6.2 配置JDK
  1. 下载并安装JDK。

  2. 点击Manager Jenkins - Global Tool Configuration 进入。

  3. 滚动JDK配置界面,配置JDK的安装路径,点击保存。

3.6.3 配置git
  1. 下载并安装git。

  2. 点击Manager Jenkins - Global Tool Configuration 进入。

  3. 滚动git配置界面,配置git的安装路径,点击保存。

3.6.4 配置Gradle
  1. 下载并安装Gradle。

  2. 点击Manager Jenkins - Global Tool Configuration 进入。

  3. 滚动Gradle配置界面,配置Gradle的安装路径,点击保存。

3.6.5 配置Ant
  1. 下载并安装Ant。

  2. 点击Manager Jenkins - Global Tool Configuration 进入。

  3. 滚动Ant配置界面,配置Ant的安装路径,点击保存。

3.7 系统配置

3.7.1 配置环境变量

有时候,在控制台会输出的日志中会出现乱码,多是因为编码问题导致的,所以,我们需要通过配置一些环境变量,使其使用的编码一致。这样就可以避免这个问题 。具体如设置如下:

  1. 点击Manage Jenkins(系统管理) - Configure System(系统设置)

  2. 切换到全局属性,复选框选择Environment variables(环境变量)。添加两组键值对,分别是:

    java 复制代码
    JAVA_TOOL_OPTIONS=Dfile.encoding=UTF8
    LANG=zh_CN.UTF-8
  3. 重新启动Jenkins 。

3.7.2 配置邮件通知

在Jenkins构建完成后,经常会通过邮件将构建结果发给团队成员,那么,如何在Jenkins中设置邮件通知呢 ? 同样需要在系统设置中配置如下几个参数 ,具体如下:

  1. 点击Manage Jenkins(系统管理) - Configure System(系统设置)

  2. 切换到Jenkins Location ,配置系统管理员邮件地址,备注:这个邮件地址相当于后续的邮件发送者 。

  3. 接下来配置Extended E-mail Notification.

  4. 继续切换到邮件通知,继续配置相关信息 。

  5. 根据上一步的说明,我们要配置邮箱通知,需要配置登录邮箱和授权码,接下来说明如何配置授权码 。(以163.com),先登录163邮箱。

  6. 点击设置,然后再点击POP3/SMTP/IMAP .

  7. 选择开启服务POP3/SMTP服务 ,如图所示 。

  8. 以上配置成功后,接下来的步骤就是在Job中配置'构建后操作',选择Editable Email Notification.

  9. 配置内容参数 。

  10. 选择发送者列表 。

  11. 如果觉得发送到邮件中的内容格式不是很好看,也可以对邮件正文设置模板,设置邮件模板同时是在系统设置中,找到Default Content 。在里面添加你自己定义好的模板即可 。以下为参考示例

    html 复制代码
    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>${ENV, var="JOB_NAME"}-第${BUILD_NUMBER}次构建日志</title> </head> <body leftmargin="8" marginwidth="0" topmargin="8" marginheight="4" offset="0"> <div><h2>项目信息</h2> <ul><li>项目名称:${PROJECT_NAME}</li> <li>详细测试报告:<a href="${PROJECT_URL}HTML_20Report/">${PROJECT_URL}HTML_20Report/</a></li> <li>触发原因:${CAUSE}</li> <li>项目Url:<a href="${PROJECT_URL}">${PROJECT_URL}</a></li> </ul> <hr/> <h2>构建日志</h2> <div>${JELLY_SCRIPT,template="html"}</div> <hr/> </div> </body> </html>

3.8凭据管理

凭据(credentials)是访问其他系统的认证信息,可以是账号/密码、SSH密钥、加密文件等,Jenkins可以通过设置的凭据与其它第三方应用进行认证,在可信与可控的范围内,完成第三方交互。

以下就是添加凭据的具体操作步骤:

  1. 点击Manage Jenkins(系统管理) - Manage Credentials(凭据管理)

  2. 选择Stores scoped to Jenkins,点击Jenkins 。进入后,再点击全局凭据 。

  3. 点击添加凭据,弹出的界面输入具体主机信息 。

  4. 添加后就可在凭据列表中查看到,具体如下:

添加后的凭据就可以在Job中或者作为代理主机进行使用了 。

3.9 节点管理

Jenkins支持分布式构建,可以让一套代码在不同的代理机上运行。最大的好处就是避免多任务运行时出现等待 。

这里代理其实就是节点,如果你想要添加一个节点,就可以按照如下操作进行:

  1. 点击Manage Jenkins(系统管理) - Manage Nodes and Clouds(节点管理)

  2. 点击'新建节点',输入节点对应的名称,选择Permanent Agent,点击确定。

  3. 进入节点配置详情,将其它信息配置完成 。

  4. 添加成功后,会在列表中出现一个节点,点击此节点 。

  5. 点击'启动代理',Jenkins就会自动连接上代理机后将代理程序拷贝该主机上,并自动启动此服务 。这样代理机就会跟Master主机建立了连接 。

  6. 启动过程中可以看到启动日志,启动成功后会显示代理机的主机资源信息。

相关推荐
坐公交也用券13 小时前
使用Python3实现Gitee码云自动化发布
运维·gitee·自动化
施努卡机器视觉15 小时前
电解车间铜业机器人剥片技术是现代铜冶炼过程中自动化和智能化的重要体现
运维·机器人·自动化
徐浪老师15 小时前
深入实践 Shell 脚本编程:高效自动化操作指南
运维·chrome·自动化
King's King15 小时前
自动化立体仓库:详解
运维·自动化
东隆科技15 小时前
晶圆测试中自动化上下料的重要性与应用
运维·自动化
懒笑翻19 小时前
Python 使用 Selenuim进行自动化点击入门,谷歌驱动,以百度为例
运维·selenium·自动化
n***859419 小时前
Github 开源 10K Stars 自动化 API、后台作业、工作流和 UI 的开发平台
运维·自动化
夜色呦19 小时前
中小企业人事管理自动化:SpringBoot实践
运维·spring boot·自动化
椰椰椰耶19 小时前
【软件测试】自动化常用函数
运维·自动化
HengCeResearch8819 小时前
中国【食品检测实验室自动化】程度相对欧美等发达国家相对落后,并且技术层面存在明显的代差,未来有比较大的发展空间
人工智能·百度·自动化