随着我编写越来越多的 Groovy 与 Jenkins Workflow 插件一起使用,我已经开始达到可以在多个脚本中使用的可重用代码的地步。
共享此代码的最佳方式是什么?是否可以使用共享代码生成我自己的 .jar 并在 Workflow 脚本中使用它?或者有没有更简单的方法?
随着我编写越来越多的 Groovy 与 Jenkins Workflow 插件一起使用,我已经开始达到可以在多个脚本中使用的可重用代码的地步。
共享此代码的最佳方式是什么?是否可以使用共享代码生成我自己的 .jar 并在 Workflow 脚本中使用它?或者有没有更简单的方法?
您可以使用其他评论中指出的 Global Lib 和/或使用该load
步骤从某处加载您自己的脚本(即您的 SCM 之前刚刚签出)。
更多信息load
:https ://github.com/jenkinsci/workflow-plugin/blob/master/TUTORIAL.md#triggering-manual-loading
这就是工作流全局库的用途!https://github.com/jenkinsci/workflow-plugin/blob/master/cps-global-lib/README.md 我在我的安装中使用了这个,它是 Workflow 的一个很棒的特性。现在我只有一个“帮助”类,其中包含所有构建通用的方法,但随着其他团队开始采用 Workflow,他们对创建自己的类以用于我们构建的子集表现出兴趣。
实际上,我最终通过使用我们自己的 git repo 完成了这项工作,但将符号链接放入 workflow-libs/src 以指向该 repo。
Workflow Remote File Loader 插件可能会满足您的需求。