kubernetes 作业不会终止

问题描述

我有一个 kubernetes cronjob 规范:

          containers:
          - args:
            - -c
            - |
              export NLS_LANG=AMERICAN_AMERICA.UTF8 ;
              echo "Exporting addresses" ;
              sqlplus bta/$ORACLE_PASSWORD@//10.203.0.34/bta @adm_address_export.sql > /dev/null ;
              if [[ ! -f address.tsv ]]; echo 'File "address.tsv" is not there,aborting.'; echo $? ; then exit 0; fi ;
              echo "Ready to import addresses" ;

如果之前没有通过命令创建 address.tsv,我希望此作业失败。但由于某种原因,如果文件存在,它也会失败。

在这里做错了什么?

解决方法

if 语句不正确,则需要跟在 if [[ ... ]] 之后:

if [[ ! -f address.tsv ]]; then echo 'File "address.tsv" is not there,aborting.'; echo $? ; exit 0; fi