目录
一、理论
1.共享库
(1)概念
1)共享库这并不是一个全新的概念,其实在编程语言Python中,我们可以将Python代码写到一个文件
中,当代码数量增加,我们可以将代码打包成模块然后再以import的方式使用此模块中的方法。
2)在Jenkins中使用Groovy语法,共享库中存储的每个文件都是一个groovy的类,每个文件(类)中
包含一个或多个方法。每个方法包含groovy语句块。
3)可以在Git等版本控制系统中创建一个项目用于存储共享库。共享流水线有助于减少冗余并保持代
码整洁。
(2)属性
1)共享库名称
2)共享库版本
3)共享库地址
(3)库结构
1)src: 类似于java的源码目录,执行流水线时会加载到class路径中。
2)vars: 存放全局变量脚本,小的功能函数。
3)resources: 存放资源文件,类似于配置信息文件。
├── src
│ └── org
│ └── devops
│ └── Tools.groovy
├── vars
│ └── GetHosts.groovy
│ └── GetCommitId.groovy
│
└── resources
│ └── org
│ └── devops
│ └── config.json
2.共享库配置
(1)创建一个共享库
可以直接在gitlab中创建一个公开类型的仓库,仓库名称自定义。公开类型的仓库是为了便于验
证,也可以创建私有类型的,但是需要提前配置好仓库的认证凭据。
(2). 创建groovy类文件
直接在gitlab仓库的页面操作即可
3.使用共享库
(1)系统配置
1)系统设置
Jenkins系统配置 -> Global Pipeline Libraries
首先,为共享库设置一个名称 mylib (自定义,无需与gitlab仓库一致),注意这个名称后
续在Jenkinsfile中引用。 再设置一个默认的版本,这里的版本是分支的名称。我默认配置的是 master版本。
2)配置共享仓库地址
接下来配置共享库的仓库地址,仓库在gitlab中,可以使用gitlab方式或者git方式。
如果仓库是私有的方式,需要在jenkins的凭据中添加一个账号用于下载共享库。
3)加载共享仓库
在Jenkinsfile中使用 @Library('mylib') _ 来加载共享库,注意后面符号 _ 用于加载。 类的
实例化 def mytools = new org.devops.jenkinstest() ,使用类中的方法`mytools.PrintMsg(msg)` 。
4.共享库扩展
(1)加载方式
1)加载mylib共享库
@Library('mylib') _
2)加载mylib共享库的1.0版本
@Library('mylib@1.0') _
3)加载多个共享库, mylib共享库的默认版本, yourlib共享库的2.0版本(分支)
@Library(['mylib', 'yourlib@2.0']) _
二、实验
1.连接共享库
(1)gitlab创建group

(2)创建新共享库项目jenkinslib

(3)创建完成
(4)打开web IDE

(5)创建src目录,存放类,函数和方法等源码文件
Jenkins共享库实践与常见问题解决方案

本文介绍了如何在Jenkins中使用Groovy构建共享库,包括共享库的概念、配置、加载以及实验过程。同时,详细列举了在实践中遇到的路径报错和readJSON报错及其解决方法。
最低0.47元/天 解锁文章
545

被折叠的 条评论
为什么被折叠?



