要了解如何在声明式管道中执行某些操作,您可以使用 http://JENKINS_URL/directive-generator/ 上的指令生成器。这提供了类似于作业配置的用户界面。然而,在选择“选项”->“添加”->“sidebarLinks”->填写字段->“生成”后,由于内部服务器错误,不会生成任何内容。
以下声明式管道语法适用于单个作业:
pipeline {
agent any
options {
sidebarLinks([
[displayName: 'Side Bar Example', iconFileName: '', urlName: 'http://example.com']
])
}
stages {
stage('Hello') {
steps {
echo 'Hello World'
}
}
}
}
但是,您提到您希望通过使用共享管道库在不同的作业中重用这些链接。不幸的是,共享管道库无法修改options声明式管道的一部分,除了生成你的整个pipeline { }
在一个单一的def call()
.
幸运的是,脚本化管道可以覆盖配置的该部分。使用 http://JENKINS_URL/pipeline-syntax/ 上的代码片段生成器,您可以生成以下代码,并将其放入共享管道库中,例如在var/mySidebar.groovy
:
def call() {
properties([
sidebarLinks([[
displayName: 'My fancy sidebar url', iconFileName: '', urlName: 'https://example.com'
]])
])
}
然后,您可以在脚本化管道中使用它:
library('my-sidebar')
mySidebar()
node() {
stage('Hello') {
sh 'echo "Hello World!"'
}
}
Or a script
声明式管道的块:
library('my-sidebar')
script {
mySidebarScripted()
}
pipeline {
agent any
stages {
stage('Hello') {
steps {
echo 'Hello World'
}
}
}
}