Jenkins 中的 "Declarative Pipeline" 到底是什么?如何从以前的"pipeline"概念切换?

What exactly is "Declarative Pipeline" in Jenkins? How to switch from the previous "pipeline" concept?

我对 Jenkins 中 "Declarative Pipeline" 的概念有点困惑。

现在,我正在使用 "Multibranch-Pipeline" 类型的多个作业。 我维护 "Shared Libraries",它将 vars 文件夹与可重用功能结合在一起。在同一个存储库中,还有一个 jobs 文件夹,其中包含 "complete pipelines",应该配置了正常的 "Pipeline" 类型的作业,然后这些从 Jenkinsfiles 触发由 Multibranch-Pipeline-Job 监视。

如何将其转换为 "Declarative Pipeline"。开始讨论该主题的最佳文档资源是什么 "normal vs. Declarative"。

这里有几篇好文章可以帮助您开始使用脚本化管道与声明式管道(我不是作者)。

https://www.blazemeter.com/blog/how-to-use-the-jenkins-scripted-pipeline https://www.blazemeter.com/blog/how-to-use-the-jenkins-declarative-pipeline

下面的段落来自第二篇文章,总结得很好。我看到脚本化管道和声明式管道之间的一大区别是,声明式管道应存储在源代码控制系统中,并在每次 运行 时进行检查。声明式管道是一种比脚本式管道更新的方式,但脚本式管道不会消失。

Jenkins 为您提供了两种开发管道代码的方法:脚本式和声明式。脚本化管道,也称为“传统”管道,基于 Groovy 作为其领域特定语言。另一方面,声明式管道提供了一种简化且更友好的语法,其中包含用于定义它们的特定语句,无需学习 Groovy.