开始采用的是通过 $?
对 exit code 进行判断
kubectl get cm macl-api-appsettings > /dev/null
if [ $? != 0 ] ; then
kubectl create configmap ...
fi
但发现脚本文件中有 set -e
,ConfigMap 不存在时脚本就直接退出了,走不到下面的判断代码。
后来改为根据命令输出内容是否为空进行判断
if [[ ! $(kubectl get cm | grep $CM_NAME) ]] ; then
kubectl create configmap ...
fi