шеф-повар редактирует существующий конфиг с помощью кулинарной книги обертки - PullRequest
0 голосов
/ 02 мая 2018

У меня есть две кулинарные книги-обертки и поваренная книга сообщества apache2. Первая кулинарная книга - наша core_dispatcher оболочка, в которой используется apache2, широко используемая для всех клиентов. Вторая обертка для конкретного клиента client_dispatcher поваренная книга. Я хочу внести изменения только в одного клиента, поэтому я использую 2-й client_dispatcher упаковщик, который упаковывает core_dispatcher упаковщик.

Это строка, которую я хочу добавить к client_dispatcher обертке

ErrorDocument 404 /content/en/error/404.html

Я создал новый шаблон anon_errordoc.erb в своем client_dispatcher и просто жестко запрограммировал его ErrorDocument 404 /content/en/error/404.html в файле erb. Я хочу, чтобы это было добавлено к моему существующему vhost anoncom.conf, который уже существует на моем сервере.

в моем рецепте client_wrapper у меня есть следующее:

include_recipe 'core_dispatcher::default'

edit_resource(:template, '/etc/httpd/sites-available/anoncom.conf') do
  source 'anon-errordoc.erb'
  cookbook 'client_dispatcher'
end

Ошибка после запуска chef-client

Recipe: <Dynamically Defined Resource>
* template[/etc/httpd/sites-available/anoncom.conf] action create

================================================================================
Error executing action `create` on resource 'template[/etc/httpd/sites-available/anoncom.conf]'
================================================================================

Chef::Exceptions::FileNotFound
------------------------------
Cookbook 'client_dispatcher' (0.1.13) does not contain a file at any of these locations:
  templates/amazon-2017.09/dispatcher-vhost.conf.erb
  templates/amazon/dispatcher-vhost.conf.erb
  templates/default/dispatcher-vhost.conf.erb
  templates/dispatcher-vhost.conf.erb

This cookbook _does_ contain: ['/var/chef/cache/cookbooks/client_dispatcher/templates/default/filters-anon.conf.erb','/var/chef/cache/cookbooks/client_dispatcher/templates/default/anoncom-errordoc.erb']

Resource Declaration:
---------------------
# In /var/chef/cache/cookbooks/apache2/definitions/web_app.rb

 28:   template "#{node['apache']['dir']}/sites-available/#{application_name}.conf" do
 29:     source params[:template]
 30:     local params[:local]
 31:     owner 'root'
 32:     group node['apache']['root_group']
 33:     mode '0644'
 34:     cookbook params[:cookbook] if params[:cookbook]
 35:     variables(
 36:       :application_name => application_name,
 37:       :params           => params
 38:     )
 39:     if ::File.exist?("#{node['apache']['dir']}/sites-enabled/#{application_name}.conf")
 40:       notifies :reload, 'service[apache2]', :delayed
 41:     end
 42:   end

Compiled Resource:
------------------
# Declared in /var/chef/cache/cookbooks/apache2/definitions/web_app.rb:28:in `block in from_file'

  template("/etc/httpd/sites-available/anoncom.conf") do
  params {:template=>"dispatcher-vhost.conf.erb", :local=>false, :enable=>true, :server_port=>"80", :server_name=>"dev-anoncom.ctmsp.com", :server_aliases=>["dev-anoncom.ctmsp.com"], :docroot=>"/var/www/cache/publish/anoncom", :name=>"anoncom"}
  action [:create]
  retries 0
  retry_delay 2
  default_guard_interpreter :default
  source "dispatcher-vhost.conf.erb"
  cookbook "client_dispatcher"
  variables {:application_name=>"anoncom", :params=>{:template=>"dispatcher-vhost.conf.erb", :local=>false, :enable=>true, :server_port=>"80", :server_name=>"dev-anoncom.ctmsp.com", :server_aliases=>["dev-anoncom.ctmsp.com"], :docroot=>"/var/www/cache/publish/anoncom", :name=>"anoncom"}}
  declared_type :template
  cookbook_name "core_dispatcher"
  mode "0644"
  owner "root"
  group "root"
  path "/etc/httpd/sites-available/anoncom.conf"
  verifications []
end

Platform:
---------
x86_64-linux


Running handlers:
Running handlers complete
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...