包名称与服务名称不匹配

时间:2015-08-12 11:35:36

标签: chef cookbook recipe

我正在尝试编写将在ubuntu和debian下工作的cookbook。 我正在使用ubuntu和debian中具有相同名称的包。但在debian包名称中不符合服务名称。

实施例: ubuntu - package name = foo, service = foo. debian - package name = foo, servie = xxxx

我需要显式启动/重启服务的名称或通知服务。那么,使用正确的服务名称的最佳方法是什么?当然,我可以在属性文件中为ubuntu和debian分别预定义名称,但我想尝试自动执行此操作。

1 个答案:

答案 0 :(得分:1)

由于在许多情况下会出现这种差异,因此厨师关于service resource的文档中也包含了一个示例:

service 'crond' do
  case node['platform']
  when 'redhat', 'centos', 'scientific', 'fedora', 'amazon'
    service_name 'crond'
  when 'debian', 'ubuntu', 'suse'
    service_name 'cron'
  end
  action [:start, :enable]
end