Skip to content

Latest commit

 

History

History
21 lines (16 loc) · 1.29 KB

08.Return-Code.md

File metadata and controls

21 lines (16 loc) · 1.29 KB

Return Codes - 返回码

saltsalt-call CLI命令导致错误时,该命令将以返回码1返回。错误情况包括以下内容:

  1. 运行状态时遇到错误,或任何一个状态返回False结果
  2. 引发任何异常
  3. 对于远程执行功能,当返回数据是带有名称为result或Success的键的Python字典时,其值为False

Retcode Passthrough

除上述情况外,如果状态或远程执行功能在__context__字典的retcode键中设置了非零值,则该命令将以返回码1退出。对于那些开发自定义状态和执行模块的用户,请使用 __context __ ['retcode']会是一种有用的方式来表示发生了错误:

if something_went_wrong:
    __context__['retcode'] = 42

实际上,这就是状态表示它们已失败的方式。 不同的情况会导致在__context__字典中设置不同的代码:

  1. 在状态编译器中遇到任何错误(缺少SLS文件等)时,设置为1
  2. 当任何状态返回False结果时设置2
  3. 当在运行状态之前无法编译pillar数据时,设置为5

--retcode-passthrough标志与salt-call一起使用时,salt-call将以在__context__字典中设置的retcode退出,而不是默认行为,对于任何的错误情况,默认行为仅以1退出。