厨师食谱:iis_pool periodical_restart_schedule 设置为空数组

问题描述 投票:0回答:1

我目前正在研究 Chef 配方,其中我使用特定服务帐户身份设置了 IIS 应用程序池。但是,我发现在每次 Chef 运行期间,periodic_restart_schedule 属性都被设置为空数组 ([]),即使我没有在配方中明确声明它也是如此。 这是我的食谱相关部分的片段:

iis_pool app_pool_name do
  action :config
  runtime_version '4.0'
  pipeline_mode :Integrated
  identity_type :SpecificUser
  username svc_account_name
  password svc_account_password
  start_mode :AlwaysRunning 
  ignore_failure true
end

如何解决这个问题?基本上,配方不应该触及回收属性(periodic_restart_schedule)。

iis chef-infra cookbook
1个回答
0
投票

Chef 编译资源时,它采用用户定义的属性值。任何未定义的属性都将恢复为默认值。因此,如果您没有显式声明

periodic_restart_schedule
的值,它将采用默认值,即一个空数组。

iis_pool
资源来自iis食谱。以下是该属性的定义方式:

property :periodic_restart_schedule, [Array, String], default: [], coerce: proc { |v| Array(v).sort }

因此,除非您在食谱中指定该属性,否则它将是

default: []

配方基本上不应该触及回收特性

将 Chef 视为配置即代码工具(确实如此),并使用 iis_pool 资源“

管理
”完整的 IIS 池,包括
periodic_restart_schedule
和其他设置,而不是运行 Chef 进行部分配置。

© www.soinside.com 2019 - 2024. All rights reserved.