2

私のカスタム シェフ クックブック ( https://github.com/sanguis/chef-omeka/tree/lwrpにあります)。

カスタム Solo.rb レシピから呼び出されているカスタム リソース (LWRP) 内から Apache2 リソース web_app を呼び出しています。

    include_recipe 'apache2' 
web_app url do
  server_name url
  server_aliases aliaes
  cookbook_name 'apache2'
  docroot dir
  allow_override 'All'
  directory_index 'false'
  # notifies :reload, 'service[apache2]', :delayed
end

これはエラーを返します:

[#] [2016-02-23T23:02:31+00:00] 致命的: バグ レポートを提出する場合は、stacktrace.out ファイルの内容を提供してください

[#] [2016-02-23T23:02:31+00:00] エラー: instanceomeka.dev にエラーがありました: Chef::Exceptions::ResourceNotFound: resource execute[a2enmod headers] is configured to notify resource service[apache2]アクション reload を使用しますが、リソース コレクションに service[apache2] が見つかりません。execute[a2enmod headers] は /tmp/kitchen/cache/cookbooks/apache2/definitions/apache_module.rb:35:in `block in from_file' で定義されています

ただし、ここでカスタム レシピの内部から直接同じリソースを呼び出すと(126 行目)、機能します。

私の実行リストは次のとおりです

   #      - recipe[build-essential]
  - recipe[php::default]
  - recipe[apache2]
  - recipe[apache2::mod_rewrite]
    # - recipe[apache2::mod_expires]
  - recipe[apache2::mod_ssl]
  - recipe[apache2::mod_php5]
  - recipe[omeka::default]
  - recipe[omeka::solo]
attributes:    #      - recipe[build-essential]
  - recipe[php::default]
  - recipe[apache2]
  - recipe[apache2::mod_rewrite]
    # - recipe[apache2::mod_expires]
  - recipe[apache2::mod_ssl]
  - recipe[apache2::mod_php5]
  - recipe[omeka::default]
  - recipe[omeka::solo]
attributes: 
  machine_fqdn: omeka.dev
  machine_fqdn_as_hostname: true
  apache2:
    listen_ports: ["80", "443"]

  machine_fqdn: omeka.dev
  machine_fqdn_as_hostname: true
  apache2:
    listen_ports: ["80", "443"]

これは、ubuntu 14.04 と centos7 の両方で失敗します。

4

1 に答える 1