
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人
2.3 pipeline语法的选择
Jenkins团队在一开始实现Jenkins pipeline时,Groovy语言被选择作为基础来实现pipeline。所以,在写脚本式pipeline时,很像是(其实就是)在写Groovy代码。这样的确为用户提供了巨大的灵活性和可扩展性,我们还可以在脚本式pipeline中写try-catch。示例如下:

以上写法被称为脚本式(Scripted)语法。Jenkins pipeline还支持另一种语法:声明式(Declar-ative)语法。pipeline插件从2.5版本开始,才同时支持两种格式的语法。
脚本式语法的确灵活、可扩展,但是也意味着更复杂。再者,Groovy语言的学习成本对于(不使用Groovy的)开发团队来说通常是不必要的。所以才有了声明式语法,一种提供更简单、更结构化(more opinionated)的语法。示例如下:


本书所有的示例都将使用声明式语法。因为声明式语法更符合人类的阅读习惯、更简单。声明式语法也是Jenkins社区推荐的语法。