2017-09-28 53 views
0

我已检查Jenkins的Pipeline syntax页面。这都是关于声明式管道,我看到了语法。Jenkins:如何在声明式管道中使用自定义插件

你可以用声明式管道和脚本化管道实现相同的功能吗?当我使用脚本管道生成器时,我立即看到如何导入插件,使用/配置它们。

但与声明管道我没有看到。我看到一些主要功能和很多sh的用法。

例如:参数(我可以添加一些参数)。 但是有一些字符串验证参数插件。当我下载这个插件时,我可以在脚本管道等中使用它。但是我没有看到如何将它用于我的声明式管道。

这个我很面临这个用例。是否有可能使用声明式管道的每个插件? (看起来可以使用脚本管道)

回答

1

您可以阅读Declarative Pipeline的environment部分中的大多数参数类型。

pipeline{ 
    agent any 
    environment { 
     USER_CRED = credentials('my-user-cred') 
     USER_NAME = string('my-user-name') 
     ACTIVE = booleanParam('active') 
    } 
    stages { 
     stage('Example') { 
      steps { 
       sh 'echo ${USER_NAME} - ${USER_CRED} - ${ACTIVE}' 
      } 
     } 
    } 
} 

您还可以(在插件,而不是核心定义,可能还有其它)choicefilepasswordruntext。不幸的是the plugin我想你说的是不支持这种格式的使用(因为它不定义了一个its implementation@Symbol

使用声明是在脚本可取的,但如果你不能做一些与声明,那么你就可以使用script标记执行脚本代码:

stages { 
    stage('Stage 1') { 
     steps { 
      script { 
       // scripted code as in non-declarative 
      } 
     } 
    } 
} 
相关问题