在詹金斯中使用声明式填充

时间:2019-02-18 13:20:15

标签: jenkins jenkins-pipeline jenkins-cli

我一直在尝试使用Command-line Pipeline Linter

我可以在服务器上本地使用此声明式填充符吗?

我尝试运行:

declarative-linter < Jenkinsfile

得到了:

-bash: declarative-linter: command not found

我是否需要安装此命令,或者应该在安装Pipeline插件后自动安装该命令?

请告知。

1 个答案:

答案 0 :(得分:1)

有三种与declarative-linter进行交互的高级方法。您请求的特定组是CLI,以及服务器本身的特定子集。然后,您参考的文档引用了the CLI documentation,以了解如何使用Jenkins CLI形成命令。

通常,服务器上的命令如下:

java -jar jenkins-cli.jar [-s JENKINS_URL] [global options...] command [command options...] [arguments...]

在服务器上运行时,可以使用localhost作为URL。到jenkins-cli的完整路径也有助于确保安全(下面显示的示例适用于RedHat系列)。请注意,如果您正在为服务器使用证书,则应改用下面的https

java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ [global options...] command [command options...] [arguments...]

现在,我们替换为declarative-linter专用的命令和参数。请注意,我们使用的是Linux专用的stdin语法。

java -jar /var/cache/jenkins/war/WEB-INF/jenkins-cli.jar -s http://localhost:8080/ declarative-linter < /path/to/Jenkinsfile

这将允许通过Jenkins服务器上的Jenkinsfilejenkins-cli进行本地更新。请注意,如果您需要进行身份验证,则需要在-auth username:password之前和Jenkins URL的参数之后的命令-i /path/to/ssh_key中用[global options...]declarative-linter替换。