【发布时间】:2017-07-04 03:02:16
【问题描述】:
与 chef-provisioning 一起使用以下收敛选项来配置一组 Windows Server 2012 VM。
convergence_options: {
chef_config: "ssl_verify_mode :verify_none", # String containing additional text to inject into client.rb
chef_version: '12.18.31',
install_msi_url: 'https://packages.chef.io/files/stable/chef/12.18.31/windows/2012r2/chef-client-12.18.31-1-x64.msi',
ignore_failure: [259, 35, 37]
}
根据文档,ignore_failure 属性应忽略指定退出代码的失败,但该属性似乎根本没有任何效果。
已配置机器上的收敛失败(从重新启动时的非零退出代码)仍在停止整个配置操作。
================================================================================
Error executing action `converge` on resource 'machine[dvps01]'
================================================================================
RuntimeError
------------
Error: command '$env:path = [System.Environment]::GetEnvironmentVariable('PATH', 'MACHINE');chef-client -l auto' exited with code 259.
有什么想法吗?
【问题讨论】:
-
请粘贴整机资源调用。
-
ignore_failure 可以忽略特定资源上的结果代码。您在此处的哈希似乎是您传递给 chef_config 属性的内容,如果它用于
machine资源选项,那么它不可能是正确的,那么 ignore_failure 应该是 True 或 False。正如 Szymon 所说,给出全貌,否则我们无能为力
标签: ruby windows server chef-infra devops