管理系统和管理页面,系统配置里可以配置共享库,系统信息,home,服务器地址
全局安全配置
认证的访问控制,默认jenkins自带的数据库
这里最好改成固定,要和slave通信
全局工具配置
jdk,maven
假如maven已经安装好了
这样就可以,相当于定义一个环境变量
重新加载配置,jenkins有reload
系统信息
系统日志
负载
客户端命令
可以执行一些script脚本
项目管理页面
构建队列
构建执行器的状态
默认jenkins会把所有项目放到视图里,6就是视图,7是项目信息,10就是构建的返回
构建页面
用户管理页面,企业可以接入ldap,
默认用的时候jenkins自己用的数据库
可以创建用户
权限管理需要安装插件
任何人可以做任何事情
登录完用户可以做任何事情
要安装一个授权的插件,这个插件有两种用途,给项目授权,给人授权
jenkins添加node节点
jenkins master节点主要负责调度,node节点来执行任务
这样就可以添加一个节点
看到这个命令就可以执行
先创建dir,把jar包统一放这里
然后根据启动命令启动即可
agent port就起来了
这个节点就可以用了
这个agnet .jar是通用的,容器里启动slave也是这么启动的
写个脚本,后台运行
这样就有了
这是启动agent的过程,
用户项目权限授权
如果插件下载有问题,可以手动安装
这里有插件
下载最新版本即可
手动上传插件
重启一下
中文插件
权限改成这个
管理权限和分配权限
global role 相当于给用户分配角色
添加个角色,能读,能创建,能看,能代理connect,任务能取消,构建
project roles,相当于给用户一个项目角色
再加一个项目角色
这就是权限模板
创建了两个规则,现在就要给用户来授权
新建一个项目
直接保存,只是为了验证效果
再次新建一个项目
现在就有两个项目
现在新建abc开头的
现在有三个项目
按照道理授权的用户只能看到test
因为这里有全部能读
再次登录就拒绝了
加个read
现在能看到两个jobs
现在就收到了项目权限下控制,test开头所有项目
凭据管理与应用
可以把一些用户账号,gitlab账号,sonarqube账号,k8s的账号,都可以存在这里
点击系统
有几种
可以把github密码放在这里
也可以存一个token
点击配置i
有参数化构建,可以传凭据参数
可以选择项目要用的凭据,点击开始构建,账号密码就传进去了,不想在这里加可以写到流水线里
**凭据的主要解决了明文密码的问题,可以把所有的账号涉密的信息全部以凭据的方式存到jenkins里,然后在执行流水线的时候,通过凭据id去使用,而且可以把账号和密码变成两个变量
**
可以到这里删除
找到一个凭据
删除更新都可以
项目管理
如何去创建一个流水线的项目
可以选择保留构建历史,比如30天,最大保存20次构建
这里可以选择参数化构建,字符参数可以给定值,选择参数可以选择里面的值
自动清除空白字符
先保存一下,有插件没装
这里还有生成器,可以执行一下脚本
回放可以改脚本但是参数不变
项目一旦多了以后就可以分类了,就可以用到文件夹了
新建项目的时候可以选择新建文件夹,然后把项目移动到文件夹
除了项目文件夹管理方式,还有视图
可以选择正则表达式匹配
还可以再建立一个ABC
选择正则表达式abc
这里就给项目做了分类
pipeline实践
jenkins最核心部分就是流水线,可以用声明式嵌入脚本式,这样就更加灵活。
现在有几个项目
这里就是写pipeline的脚本
这就是流水线的过程
流水线怎么运作取决于jenkinsfile,两种语法就是声明式,脚本式
这就是脚本式
声明式的功能更加强大一些,构建成功做什么,失败做什么,有现成的jenkinsfile,声明式里可以嵌入脚本式
整个pipeline就是一个语句块,里面有一些标签,agent就是指定在某个节点上运行这个流水线,options指定运行时的选项,stages阶段,所有的stage阶段都在大的stages下面
成功做什么失败做什么
agent指定运行的节点,node可以以标签方式运行节点,现在要在master标签上的节点运行,工作目录做了个自定义,workspace,运行时的工作目录
运行时的选项,时间,跳过默认的checkout,声明式的脚本会默认的去检查你的配置。没必要就跳过。
禁止并行
流水线你会有超时时间,避免一直阻塞在那里
stages下面有3个stage,1是下代码,2是执行打包,3是执行代码扫描。
steps是步骤,这个步骤超时时间是5分钟。
嵌入了脚本script打印信息
post就是构建后的操作,
always不管成功或失败都会执行/
success如果成功会怎么执行
failure如果失败去执行
aborted如果取消了去执行。
企业里成功了可能会给状态做变更,如果失败了会触发流水线发通知
现在可以运行这个流水线
放到配置里
把这个共享库删除
构建失败可以去查为什么构建失败
安装一个插件
这就是找出来配置信息
再试试
这次就成功了,下代码,构建,扫描代码,构建后操作
点击回放可以调整流水线
+=改成=
这就是调试好的代码
改到这里
这样流水线就成了
整个过程