我正在尝试为我的CI / CD管道Jenkinsfile
部署在kubernetes
中添加条件语句。我只是在部署阶段添加了一个If-Else
条件,并访问了创建的Jenkins环境变量。但是我收到以下错误,
java.lang.NoSuchMethodError: No such DSL method '$' found among steps
我的Jenkinsfile
内容包含以下内容,
agent any
environment
{
NAME = "myapp"
VERSION = "${env.BUILD_ID}"
}
.
.
.// Scripts for project and image builds
.
.
stage ('Test Deployment'){
steps{
script{
if (${VERSION} == 1){
sh 'kubectl apply -f deployment/testdeployment.yaml'
sh 'kubectl apply -f deployment/testservice.yaml'
}
else{
sh 'kubectl set image deployment/test-kube-deployment test-kube-deployment-container=spacestudymilletech010/spacestudykubernetes:${VERSION} --record'
sh 'kubectl rollout restart deployment/test-kube-deployment'
}
}
}
}
在这里,我正在使用符号VERSION
作为变量${VERSION}
访问内部版本号,用于构建映像并检查部署状态。在映像构建阶段,它可以正常工作。从那时起,当我添加用于定义条件语句的脚本块时,我得到了这样的错误。请引导我解决这个问题。
谢谢