Jenkins持续集成构建平台使用指南

news2024/9/23 19:21:04

目 录

目 录... 2

1、系统参数... 3

2、授权策略... 5

3、构建管理... 6

3.1 构建命名规范... 6

3.1.1 任务视图命名... 6

3.1.2 任务命名... 6

3.2 参数化构建... 7

3.2.1 构建参数列表... 7

3.2.1 常用的参数配置... 8

3.3 分布式构建... 9

3.3.1 slave节点配置... 10

3.3.2 slave节点任务配置... 10

4、jenkins账户管理... 12

5、Jenkins基本操作... 13

5.1 登录jenkins. 13

5.1 账户密码重置... 13

5.3 新建任务... 14

5.4 配置任务... 14

5.5 构建任务... 17

5.6 查看构建日志... 17

5.4 查看构建结果... 18

1、系统参数

(1)构建服务器访问路径:

************************

(2)JDK版本(根据各产品的具体要求选择):

1) jdk1.7.0_60

2) jdk1.6.0_45

(3)Maven版本(根据各产品的具体要求选择):

1) apache-maven-3.2.3

2) apache-maven-3.2.2

3) apache-maven-3.2.1

4) apache-maven-cif

(4)Jenkins信息:

1) Jenkins version 1.609   可升级

2) $Jenkins_home:  home/ciserver/.jenkins

3)Jenkins工作目录:/app/Jenkins/

2、授权策略

(1)Configure Global Security中的授权策略,采用Role_Based_Strategy方式;

(2)根据人员的角色和职责建立Global roles;

(3)根据不同的产品系统及其开发阶段,建立project_roles;

(4)为jenkins账户建立global role和project role的授权矩阵,即用户访问权限矩阵;

(5)用户界面是基于他拥有的权限和任务所属的阶段和所归属的视图(View)进行显示;

Jenkins构件任务命名规范参考3.2章节,jenkins账户管理参考第4章节。

3、构建管理

3.1 构建命名规范

用户登录后,界面所能执行的操作的基于以下2点,缺一不可:

(1)用户所拥有的权限;

(2)根据命名规则过滤后的任务视图和任务;

请务必按照下面的命名规范进行任务的创建和修改。

3.1.1 任务视图命名

任务视图命名格式:

产品/系统名称(缩写)_阶段, 阶段缩如(DEV、ST、UAT、PRD),如下图所示:

图 3-1 任务视图命名示例

3.1.2 任务命名

任务的命名格式: 

系统任务:阶段缩写_产品/系统(缩写);

子系统和模块任务:阶段缩写_产品/系统缩写_子系统/模块缩写,

图 3-2 任务命名示例

3.2 参数化构建

3.2.1 构建参数列表

 

图 3-3 参数化构建参数列表

3.2.1 常用的参数配置

图 3-4 Choice参数示例

图 3-5 Dynamic Parameter参数示例

图 3-6 List tags参数示例

图 3-7 Text参数示例

3.3 分布式构建

     考虑到构建效率和后续构建任务的扩张;通过配置jenkins Master-slave架构进行分布式构建;

DEV阶段的构建在slave进行。

3.3.1 slave节点配置

图 3-8 Slave节点配置示例

3.3.2 slave节点任务配置

(1)DEV阶段的构建,在206.10jenkins服务器上建立slave节点,将各产品部的构建任务分配到对应的节点去运行(包括工作空间,本地仓库,编译运行环境);

在DEV阶段的任务配置中,勾选“Retrict where this project can be run”, Label Expression填写各slave标签名。

图 3-9 配置在Slave节点上运行的任务

4、jenkins账户管理

(1)jenkins账户统一由组织级管理员建立和维护,jenkins账户命名格式为:姓名全拼;用户可登陆后修改;

(2)jenkins账户按照用户类别分为,admin,系统管理员,构建人员,guest;

     1) Admin负责整个jenkins服务器的管理;

2)系统管理员的具有其负责的产品库的4个阶段所有任务的创建,配置权限;

3)构建人员为产品开发人员,根据需要开放四个阶段的构建任务的执行和配置权限;

4)guest账户仅供有查看需求的员工使用;

5)普通用户账户权限申请和权限变更,由系统管理员或分支管理员向组织级CM申请。

5、Jenkins基本操作

5.1 登录jenkins

申请账户后,在浏览器中输入http://10.75.206.10:7080/,在弹出的对话框中输入用户名和密码登录。

图 5-1  Jenkins登录界面

5.1 账户密码重置

图 5-2  Jenkins账户密码重置

5.3 新建任务

图 5-3  新建任务

5.4 配置任务

在任务列表中单击你要配置的任务,在左侧功能列表中单击配置选项,如下图所示:

图 5-4  进入任务配置界面

下图将会对任务配置中涉及到各个步骤进行详细讲解:

图 5-5  任务基本信息配置

图 5-6  源码路径配置

图 5-7  maven配置和构建后操作

5.5 构建任务

任务配置完成后,点击左上角功能列表中的,立即构建,即可执行相关任务,如下图所示:

图 5-8  执行构建

5.6 查看构建日志

图 5-9-1  查看构建日志

图 5-9-2  查看构建日志

5.4 查看构建结果

图 5-10  查看构建结果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/672980.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

基于spss的多元统计分析 之 聚类分析+判别分析(3/8)

实验目的: 1. 掌握多元数据的相关性、正态性、可视化表征的基本原理; 2.熟悉掌握SPSS软件/R软件的基本用法和基本操作; 3.利用实验指导中及软件中内置的实例数据,上机熟悉相关性检验正态性检验可视化数据方…

Kafka如何实现精确一次语义

精确一次交付保证是关于消息传递最具争议性的话题之一,因此也是最复杂的任务之一。然而,几年前,Kafka团队宣布他们实现了这一目标,让我们深入研究一下他们的实现方式以及存在的限制。 首先,值得定义一下这些交付语义是…

CMake在Linux服务器上进行编译与安装

CMake在Linux服务器上进行编译与安装 文章目录 CMake在Linux服务器上进行编译与安装[TOC](文章目录) 一、VScode 远程服务器连接1.服务器容器实例创建2.vscode 远程扩展部分下载(SSH端) 二、编译安装(时间较长)1.克隆项目到本地仓库2.进入CMa…

软考A计划-系统集成项目管理工程师-面向对象系统分析与设计-上

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列 👉关于作者 专注于Android/Unity和各种游戏开发技巧&#xff…

spring cloud 5大组件

Spring Cloud 5大组件 服务发现——Netflix Eureka 客服端负载均衡——Netflix Ribbon 断路器——Netflix Hystrix 服务网关——Netflix Zuul 分布式配置——Spring Cloud Config 一、业务场景介绍 先来给大家说一个业务场景,假设咱们现在开发一个电商网站&…

看 AI 如何抢救破烂文档

一、什么是非结构化数据二、非结构化数据分析三、 文档图像分析与预处理 修正图形偏移消除摩尔纹四、消除反光 反光原理Python 消除图片反光方法五、 版面分析与文档还原 5.1 物理版面 & 逻辑版面5.2 版面元素检查5.3 文档还原5.4 文档还原的应用六、整体小结 一、什么是非…

chatgpt赋能python:Python查询网站的SEO技巧及注意事项

Python查询网站的SEO技巧及注意事项 搜索引擎优化(SEO)是所有网站的头等大事,而对于Python查询网站来说,它更是必不可少的。在这篇文章中,我们将介绍一些Python查询网站的SEO技巧及注意事项,以帮助您提高网…

Elasticsearch分词器

前奏 es的chinese、english、standard等分词器对中文分词十分不友好,几乎都是逐字分词,对英文分词比较友好。 在kibana的dev tools中测试分词: POST /_analyze {"analyzer": "standard","text": "你太…

vue源码分析

1、获取vue源码 项目地址:https://github.com/vuejs/vue 2、文件结构 源码目录 3、调试环境搭建 安装依赖: npm i 安装rollup:npm i -g rollup 修改dev脚本,添加sourcemap,package.json "dev": "ro…

C语言建立并查集

一.树的存储方式 在知道并查集之前,我们得知道树的三种存储方式: 1.双亲表示法 双亲表示法 :双亲表示法是最简单的一种存储方式,它使用一个大小为n的一维数组来表示树中的n个节点。在数组中,每个元素存储该节点的父…

Linux内核态内存泄露检测工具——Kmemleak

我的圈子: 高级工程师聚集地 我是董哥,高级嵌入式软件开发工程师,从事嵌入式Linux驱动开发和系统开发,曾就职于世界500强企业! 创作理念:专注分享高质量嵌入式文章,让大家读有所得! …

Windows开始菜单栏处无法直接搜索软件

文章目录 1. 打开cmd,输入start powershell打开PowerShell,然后在PowerShell中输入下面的命令,之后重启电脑2. 修改注册表3. 开启Windows Search服务4. 可能是搜索进程被禁用了5. 开启Cortana5.1. 打开gpedit.msc 6. 使用疑难解答6.1. 选择其…

chatgpt赋能python:Python如何查找特定名称文件

Python如何查找特定名称文件 在计算机文件管理和互联网网络应用程序中,查找特定文件往往是一项必要的任务。在使用Python编程时,我们可以使用Python内置的os模块来查找特定名称的文件。本文将介绍如何使用Python查找特定名称的文件,并提供实…

一个例子带你了解MapReduce

写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自动画片《狮子王》中的“彭彭”,总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域,如今终有小成…

LTV-6314-ASEMI代理台湾光宝高速光耦LTV-6314

编辑:ll LTV-6314-ASEMI代理台湾光宝高速光耦LTV-6314 型号:LTV-6314 品牌:台湾光宝 封装:LSOP-6 引脚数量:6 类型:光耦 特性:台湾光宝、IGBT驱动器、储能专用光耦\高速光耦 …

如何看一块intel主板的配置的好坏

为什么写这篇文章 最近在挑13900k的主板,挑的眼花缭乱,发现主板市场不像CPU市场有那么清晰的产品线。 单拿微星一家的Z790来说,就包括但不限于以下型号 Z790 GAMINGZ790-PZ790-AZ790暗黑Z790刀锋 每一种的价格都不一样,更别弹还…

Golang每日一练(leetDay0104) 买卖股票最佳时机之含冷冻期、手续费

目录 309. 最佳买卖股票时机含冷冻期 Best-time-to-buy-and-sell-stock-with-cooldown 🌟🌟 714. 买卖股票的最佳时机含手续费 Best-time-to-buy-and-sell-stock-with-transaction-fee 🌟🌟 🌟 每日一练刷题专栏 …

读发布!设计与部署稳定的分布式系统(第2版)笔记08_自黑与放大

1. 自黑式攻击 1.1. 自黑只会偶尔成为人类的美德 1.2. 对系统来说,绝对不会推崇自黑 1.3. “自黑式攻击”是指系统或有人类参与的扩展系统联合外部对自身发起攻击 1.4. 好的营销可以随时杀死你 1.4.1. 并不是每个自黑的“伤口”,都可以归咎于营销部…

<C++> C++11新的类功能

C11新的类功能 1.默认成员函数 原来C类中,有6个默认成员函数: 构造函数析构函数拷贝构造函数拷贝赋值重载取地址重载const取地址重载 最后重要的是前4个,后两个用处不大。默认成员函数就是我们不写编译器会生成一个默认的。 C11 新增了两个…

Uniapp 开发 ①(快速上手)

作者 : SYFStrive 博客首页 : HomePage 📜: 微信小程序 📌:个人社区(欢迎大佬们加入) 👉:社区链接🔗 📌:觉得文章不错可以点点关注 &#x1f4…