我已经注意到Jenkins管道文件-Jenkinsfile具有两种语法
我已经完成了声明式脚本的工作,以指定运行任务的节点。但是我不知道如何将脚本修改为脚本语法。
我的声明性脚本
pipeline {
agent none
stages {
stage('Build') {
agent { label 'my-label' }
steps {
echo 'Building..'
sh '''
'''
}
}
stage('Test') {
agent { label 'my-label' }
steps {
echo 'Testing..'
sh '''
'''
}
}
stage('Deploy') {
agent { label 'my-label' }
steps {
echo 'Deploying....'
sh '''
'''
}
}
}
}
我尝试以这种方式使用:
node('my-label') {
stage 'SCM'
git xxxx
stage 'Build'
sh ''' '''
}
但是Jenkins似乎找不到要运行的节点。
答案 0 :(得分:0)
这个简单的例子怎么样?
stage("one") {
node("linux") {
echo "One"
}
}
stage("two") {
node("linux") {
echo "two"
}
}
stage("three") {
node("linux") {
echo "three"
}
}
或下面的答案,这样,如果有多个带有相同标签的节点并被另一个作业中断,则可以确保这些阶段在同一节点上运行。 上面的示例将在每个阶段之后释放节点,下面的示例将保留所有三个阶段的节点。
node("linux") {
stage("one") {
echo "One"
}
stage("two") {
echo "two"
}
stage("three") {
echo "three"
}
}