进入詹金斯脚本管道的第二级知识水平

时间:2018-06-20 09:14:11

标签: jenkins jenkins-pipeline

很容易找到声明式或脚本化管道的简单示例。但是,当您深入了解脚本时,您需要更多的信息。当您对Web,Java和groovy的世界不熟悉时,您会遇到很多可能被问到将来的问题。 Googeling帮助您找到一些神奇的“ hudson.model.Hudson ...”或.method,例如@ NonCPS-operators解决方案。这些解决方案有效,但我正在寻找更大的环境来自下而上地工作。不是从上到下。我正在寻找对内部人员显而易见的知识。

我正在寻找链接/书籍/ api引用或简介,以学习找到有关jenkins脚本化管道的知识入口。例如像this一个=)。

我没有从以下stackoverflow社区中寻找这些问题的答案。这将太多!我正在寻找文档链接以深入了解该主题。我认为对于内部人员来说,内部人员的知识并不明显。因此,我在这里说明一些问题,以使其清楚地说明我所描述的内幕知识。

示例问题:

  • 喜欢:“ hudson.model.Hudson ...”,但是从哪里可以得到那些神奇的点。分隔的字符串?
  • 是否有Jenkins Api的文档?
  • 如何找到可在詹金斯(例如)中使用的类和方法的文档X.Y.collect
  • 是否有调试管道的方法?
  • 是否有比每次在管道中运行代码都更快的测试代码的方法?
  • 内部机制如何运作?
  • 该知识更多是关于常规的知识还是关于詹金斯的一般知识?还是Java?
  • 为什么println MyArrayList.getClass() class java.util.ArrayList是Java类? grooy是从Java继承类型,还是管道从jenkins(即Java)继承类型?
  • ...

1 个答案:

答案 0 :(得分:1)

一次提出一个问题:

我从哪里得到那些神奇的用点分隔的字符串? 这些是Jenkins核心(或插件)的内部Java类。对于前者Javadoc is available,后者的代码位于Github

詹金斯中可用的类和方法 大多数情况下,每个Java和Groovy类/方法都可以使用

调试管道? 您只能replay it,在每次运行中发布更改

测试 您有两种方法:LesFurets onereal-unit-one

内向 问题广泛,答案广泛。管道是loaded, transformed and run,与常规代码接近(@NonCPS注释会更改此行为)。 有关Java,Groovy和Jenkins的知识将适用。 Groovy确实扩展了Java,因此,两种语言都适用