在 jenkins 声明性管道 cloudformation 中使用带有 shell 命令的 If 语句
Using If statement with shell commands in jenkins Declarative pipeline cloudformation
我正在将 aws cloudformation 集成到我的 jenkins 管道中。我要执行 a
$ aws cloudformation describe-stacks --stack-name dev-nics-proxyservlet-svc --region us-west-2
命令查看是否有包含我要查找的名称的堆栈。如果命令发现栈存在,我要删除栈:
$ aws cloudformation delete-stack --stack-name dev-nics-proxyservlet-svc
但是如果堆栈不存在,我想创建堆栈:
aws cloudformation create-stack --stack-name dev-nics-proxyservlet-svc --region us-west-2 --template-body file://dev-nics-proxyservlet-cluster.yml --parameters file://dev-nics-proxyservlet-svc-param.json --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM"
如何在声明性多分支 jenkins 管道中编写此 shell 命令?任何帮助表示赞赏。
谢谢!
我认为按照这些思路应该可行:
if aws cloudformation describe-stacks --stack-name dev-nics-proxyservlet-svc --region us-west-2 &>/dev/null
then
aws cloudformation delete-stack --stack-name dev-nics-proxyservlet-svc
else
aws cloudformation create-stack --stack-name dev-nics-proxyservlet-svc --region us-west-2 --template-body file://dev-nics-proxyservlet-cluster.yml --parameters file://dev-nics-proxyservlet-svc-param.json --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM"
fi
if
通过检查 aws cloudformation describe-stacks
的 退出代码 来工作。如果为0则栈存在,如果不为0则栈不存在
我正在将 aws cloudformation 集成到我的 jenkins 管道中。我要执行 a
$ aws cloudformation describe-stacks --stack-name dev-nics-proxyservlet-svc --region us-west-2
命令查看是否有包含我要查找的名称的堆栈。如果命令发现栈存在,我要删除栈:
$ aws cloudformation delete-stack --stack-name dev-nics-proxyservlet-svc
但是如果堆栈不存在,我想创建堆栈:
aws cloudformation create-stack --stack-name dev-nics-proxyservlet-svc --region us-west-2 --template-body file://dev-nics-proxyservlet-cluster.yml --parameters file://dev-nics-proxyservlet-svc-param.json --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM"
如何在声明性多分支 jenkins 管道中编写此 shell 命令?任何帮助表示赞赏。 谢谢!
我认为按照这些思路应该可行:
if aws cloudformation describe-stacks --stack-name dev-nics-proxyservlet-svc --region us-west-2 &>/dev/null
then
aws cloudformation delete-stack --stack-name dev-nics-proxyservlet-svc
else
aws cloudformation create-stack --stack-name dev-nics-proxyservlet-svc --region us-west-2 --template-body file://dev-nics-proxyservlet-cluster.yml --parameters file://dev-nics-proxyservlet-svc-param.json --capabilities "CAPABILITY_IAM" "CAPABILITY_NAMED_IAM"
fi
if
通过检查 aws cloudformation describe-stacks
的 退出代码 来工作。如果为0则栈存在,如果不为0则栈不存在