我正在使用AWS Data Pipeline,特别是ShellCommandActivity对象。此对象调用python脚本,该脚本通过ftp等提取数据。文件可能不存在或文件可能类型错误且管道无法再运行。如果python脚本出错或失败,ShellCommandActivity对象仍然被标记为已完成,当我试图将其变为失败时。我已经尝试过,在python中,在失败时执行sys.exit(500)
,但对象仍然存在被标记为已完成。如何从python脚本中失败ShellCommandActivity?
答案 0 :(得分:0)
您可以尝试以下方式:
cd $INPUT1_STAGING_DIR
chmod +x #{myBashScript}
bash #{myBashScript}
EXIT_CODE=$?
mv $INPUT1_STAGING_DIR/output $OUTPUT1_STAGING_DIR
exit $EXIT_CODE
数据管道可能会使用最后一个命令的退出代码。我没有测试过这个。