继续chef客户端-运行以防失败
Continue the chef client-run in case of failure
我有一个由多个食谱组成的角色。我想继续
chef-client 运行 即使角色中的其中一个食谱失败了。
我知道 属性 "ignore_failure" 可以在资源级别设置,即使在失败的情况下也允许执行其余部分。
但是,我的要求是在任何时候失败的情况下跳过当前配方的执行,直接移动到角色中的下一个配方。
除此之外,我不希望将 "ignore_failure" 添加到每个资源。是否可以在配方级别而不是资源级别设置一些东西来实现类似的行为?
简短回答“不,在食谱级别和 运行 广泛级别都没有 ignore_failure”。
长格式:你不应该有失败的配方,如果它失败了,这意味着你缺少保护以防止在特定情况下执行资源,或者你在某处有实施问题。
忽略失败的想法 运行 广泛或在配方级别已经讨论过,它提出了一些其他问题,我们应该在什么时候提出或不提出失败,是在编译时吗(这个可以在纯 Ruby 中处理 try/catch) 或收敛时间或两者兼而有之?
归根结底,此功能的实施会增加 Chef 代码库的复杂性,以解决 99% 情况下实施不当的问题。
我有一个由多个食谱组成的角色。我想继续 chef-client 运行 即使角色中的其中一个食谱失败了。
我知道 属性 "ignore_failure" 可以在资源级别设置,即使在失败的情况下也允许执行其余部分。
但是,我的要求是在任何时候失败的情况下跳过当前配方的执行,直接移动到角色中的下一个配方。
除此之外,我不希望将 "ignore_failure" 添加到每个资源。是否可以在配方级别而不是资源级别设置一些东西来实现类似的行为?
简短回答“不,在食谱级别和 运行 广泛级别都没有 ignore_failure”。
长格式:你不应该有失败的配方,如果它失败了,这意味着你缺少保护以防止在特定情况下执行资源,或者你在某处有实施问题。
忽略失败的想法 运行 广泛或在配方级别已经讨论过,它提出了一些其他问题,我们应该在什么时候提出或不提出失败,是在编译时吗(这个可以在纯 Ruby 中处理 try/catch) 或收敛时间或两者兼而有之?
归根结底,此功能的实施会增加 Chef 代码库的复杂性,以解决 99% 情况下实施不当的问题。