Presentation is loading. Please wait.

Presentation is loading. Please wait.

Jenkins 讲师:郭宏泽.

Similar presentations


Presentation on theme: "Jenkins 讲师:郭宏泽."— Presentation transcript:

1 Jenkins 讲师:郭宏泽

2 目录 1. Jenkins集群 2. 整合LDAP 3.按角色权限 4. Pipeline 5.Nexus仓库

3 Jenkins集群

4 创建节点 在Configure Global Security中开启TCP port for JNLP agents 随机选取或指定端口
新建节点 节点名 执行器数量 远程工作目录(可以不存在) 用法-只允许绑定到这台机器的job Lanch slave agents on unix machines vis SSH 增加认证权限 节点的构建环境要符合job的要求

5 分配任务到节点 在任务配置中勾选Restrict where this project can be run

6 使用场景 IOS构建 Android构建 Windows项目构建 大规模高并发任务构建 特定环境构建
任务:指定一个maven项目在节点01上构建并成功

7 整合LDAP

8 Jenkins配置LDAP

9 配置说明 Rootdn 可以登入jenkins的用户组 用户搜索过滤器 uid={0} linux openladp
sAMAccountName={0} windows AD ManagerDN LDAP超管

10 超管授权

11 按角色授权

12 用户设置 超管root team1用户 team2用户 用户关联自己团队相关job,无法查看或执行其它job 每个team新建两个任务
新建两个用户

13 按角色授权 安装 Role-based Authorization Strategy 插件
Configure Global Security>授权策略>选择Role-Based Strategy

14 设置全局角色 Jekins>系统管理>Manage and Assign Roles>Manage Roles
创建全局角色member(项目用户进入后可以读取和创建Job) Overall允许read

15 设置项目角色 新建project roles 注意pattern的匹配模式是xxx.* 这样team1只能看到team1开头的job

16 全局授权 进入Assign Roles 在Global roles中加入team1/team2并授权member

17 项目授权 在Projects roles中加入team1/team2并进行相应授权

18 验证授权 注意如果开放新建权限,则team1创建的job名必须符合规则

19 Pipeline

20 pipeline Pipeline是部署流水线 Pipline将整个交付过程代码化

21 创建pipeline 创建pipeline 配置pipeline Hello world node { stage 'Stage 1'
echo 'Hello World 1' stage 'Stage 2' echo 'Hello World 2‘ }

22 语法生成 在项目界面点击Pipeline Syntax Build a job Git Node sh Stage

23 Nexus仓库

24 什么是nexus? Neux MAVEN的私有仓库 如果没有nexus 项目的打包都需要通过公网下载 不利于包的管理和共用
如果没有私服,我们所需的所有构件都需要通过maven的中央 仓库和第三方的Maven仓库下载到本地,而一个团队中的所有 人都重复的从maven仓库下载构件

25 Nexus 功能

26 安装 下载地址 http://www.sonatype.com/download-oss-sonatype
tar zxvf nexus bundle.tar.gz Cd nexus /bin export RUN_AS_USER=root ./nexus start

27 访问 默认用户名密码 admin admin123

28 Nexus流程 宿主仓库 本机 Maven Nexus 仓库组 代理仓库 远程

29 整合maven <?xml version="1.0" encoding="UTF-8"?> <settings xmlns=" xmlns:xsi=" xsi:schemaLocation=" <profiles> <profile> <id>default</id> <repositories> <repository> <id>public</id> <url> <releases> <enabled>true</enabled> </releases> <snapshots> </snapshots> </repository> </repositories> </profile> </profiles> <activeProfiles> <activeProfile>default</activeProfile> </activeProfiles> </settings>

30 部署工作流 DevOps发布流 Developer Gitlab Jenkins 提测 预发布 Nexus Maven Build 冒烟测试
tag/发版 单元测试 自动回归 灰度/上线 Sonrqube

31 交流时间


Download ppt "Jenkins 讲师:郭宏泽."

Similar presentations


Ads by Google