我正在尝试使用sh
在Jenkins中运行命令。这是我的工作:
ecsOracleClusterName = "foo"
ecsServiceName = sh(returnStdout: true, script: 'aws ecs list-services --cluster "${ecsOracleClusterName}" --region us-east-1').trim()
我注意到ecsOracleClusterName
变成空白。不知道为什么会这样,但是在詹金斯,我收到此错误消息:
+ aws ecs list-services --cluster --region us-east-1
An error occurred (ClusterNotFoundException) when calling the ListServices operation: Cluster not found.
如您所见,集群名称变量未传递值。这使我相信字符串插值有问题(或者至少我是如何实现的)。有人可以告诉我这里发生了什么吗?
答案 0 :(得分:2)
尝试使用双引号..
ecsOracleClusterName = "foo"
ecsServiceName = sh(returnStdout: true, script: "aws ecs list-services --cluster $ecsOracleClusterName --region us-east-1").trim()
println "Service name: ${ecsServiceName}"