Octopus Runbook 似乎忽略了 bash 退出代码

Octopus Runbook seems to ignore bash exit code

我可能遗漏了一些明显的东西...

在简单的 post-部署检查中添加一些轻度自动化

但我无法获取失败退出代码以使 运行本书失败 运行

我错过了什么?

url=$(get_octopusvariable "SmokeTestURL")
statusCode=$(curl -X POST \
  --silent \
  --output /dev/null \
  --write-out "%{http_code}" \
  --header "accept: application/json" \
  --header "Content-Type: application/json" \
  --data "..." \
  $url)
 
 echo $statusCode
 
 exitStatus=$(if [ $statusCode=200 ]; then echo 0; else echo 1; fi)
 exit $exitStatus
if [ $statusCode=200 ];

我认为这里必须有空格。此外,您应该使用引号以防万一 $statusCode 为空或包含空格。

您也可以使用更短的代码:

[ "$statusCode" = "200" ] && exit 0 || exit 1