Shared libraries
随着pipeline数目不断的增多,将会发现同一类型和用途的pipeline,它们的很多功能其实是相同的,这时如果对某个功能做改动,往往需要更新数量众多的JenkinsFile。
针对pipeline的扩展和管理问题,共享库功能(Shared Libraries)应运而生。 共享库可以将整个pipeline脚本的实现和复杂度封装到Shared Library中,在各种项目之间共享pipeline核心实现,减少冗余代码。 也就是说,Shared Libraries的方式抽象了各种项目之间共享的代码(甚至整条完整的pipeline),有效降低了使用pipeline的复杂度。 而且通过外部源代码控制(SCM)的方式,保证所有job在构建的时候会调用最新的共享库代码。
Shared Libraries目录结构:
+- src # Groovy source files | +- org | +- foo | +- Bar.groovy # for org.foo.Bar class +- vars | +- foo.groovy # for global 'foo' variable | +- foo.txt # help for 'foo' variable +- resources # resource files (external libraries only) | +- org | +- foo |

Jenkins Shared Libraries解决了pipeline数量增多导致的重复代码问题,通过封装通用功能到库中,实现跨项目的代码共享,降低pipeline复杂度。库的`src`目录存储Groovy类,`vars`目录包含全局脚本,`resources`用于配置文件。通过SCM配置确保每次构建获取最新代码。设置库名称和默认版本以便在Jenkinsfile中引用。
最低0.47元/天 解锁文章
2035

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



