2017-12-07 22 views
0

間違ったレシピを実行しています。私は他の人たちによって設立されたシステムには新しく、私は一般的な初心者です。シェフは、私がシェフを使用してWordpressのマルチサイトの前にニスを設定しようとしている

私は新しいレシピを作成し、実行リストにこれを追加しましたが、私はシェフ・クライアントを実行すると、それは私が書いた1の代わりに、異なるレシピを実行しています。具体的には、レシピに含まれる唯一のレシピを実行します。ここで

は、私たちは別のサイトで使用既存の、作業のレシピから、ほぼそのままコピー私のレシピ、次のとおりです。

# 
# Cookbook Name:: web_varnish_config 
# Recipe:: wordpress 
# 

include_recipe 'web_varnish_config::default' 

all_wordpress_backends = search(:node, "chef_environment:#{node.chef_environment} AND roles:web_wordpress") 
all_wordpress_backends.sort_by!{ |n| n[:fqdn] } # Sort the nodes to prevent config-order thrashing. 

# Error state 
if all_wordpress_backends.empty? 
    Chef::Log.warn("At least one node with recipes:web_wordpress must exist for chef_environment:#{node.chef_environment}. Skipping Varnish configuration.") 
    return 
end 

template "/etc/varnish/default.vcl" do 
    source "etc/varnish/wordpress.vcl.erb" 
    mode "0644" 
    variables(
    :all_wordpress_backends => all_wordpress_backends 
) 
    notifies :restart, "service[varnish]", :delayed 
end 

# Use a share secret for our Varnish instances that is available to our Webservers 
# so that Wordpress can clear the Varnish cache. 
include_recipe 'chef-vault' 
settings = chef_vault_item_for_environment("web_wordpress", "varnish") 
if !settings.nil? and settings.key?('secret') 
    file "/etc/varnish/secret" do 
    content settings['secret'] 
    mode "0600" 
    notifies :restart, "service[varnish]", :delayed 
    end 
end 

私はシェフ・クライアントを実行すると、それはweb_varnish_config ::デフォルトを実行しますこのレシピの代わりに、web_varnish_config :: wordpress。

Starting Chef Client, version 13.6.4 
resolving cookbooks for run list: ["yum-epel::default", "serversetup-midd::cent7", "serversetup-midd::rootpassword", "midd_yum_cron::default", "fw-midd::default", "chef-client::config", "chef-client::default", "chef_client_updater::default", "centrify-midd::default", "centrify-midd::sshd", "midd_spacewalk::client", "commvault-midd::default", "serversetup-midd::webserver", "fw-midd::webserver", "centrify-midd::webserver", "chef-vault::default", "ssl-config-midd::miis", "ssl-config-midd::midd", "php-midd::default", "ssl-config-midd::wordpress", "web_php_config", "web_apache_config", "web_apache_config::ssl_context", "web_wordpress", "cookbook_versions::all", "ssl-config-midd::davisfellowsforpeace", "ssl-config-midd::davisprojectsforpeace", "ssl-config-midd::davisuwcscholars", "varnish-midd::default", "fw-midd::varnishserver", "web_varnish_config::backend", "web_varnish_config::wordpress"] 
Synchronizing Cookbooks: 
    - smbfs (0.5.0) 
    - compat_resource (12.19.0) 
    - web_php_config (1.1.0) 
    - ohai (5.1.0) 
    - midd_spacewalk (0.4.3) 
    - windows (3.0.5) 
    - yum (5.0.1) 
    - firewalld (1.1.5) 
    - cookbook_versions (1.0.0) 
    - serversetup-midd (2.6.10) 
    - commvault-midd (2.3.1) 
    - cron (4.1.3) 
    - php-midd (2.0.6) 
    - ssl-config-midd (2.2.1) 
    - chef-vault (3.0.0) 
    - logrotate (2.2.0) 
    - selinux (2.0.3) 
    - ssh_authorized_keys (0.4.0) 
    - chef_client_updater (2.0.3) 
    - web_wordpress (2.0.10) 
    - varnish-midd (2.0.3) 
    - chef-client (8.1.6) 
    - users (5.1.0) 
    - yum-epel (2.1.2) 
    - web_apache_config (2.0.10) 
    - web_varnish_config (2.3.2) 
    - sshd (1.3.1) 
    - fw-midd (3.2.5) 
    - midd_yum_cron (1.0.0) 
    - web_sshkeys (1.0.2) 
    - web_git_tracking_branch (1.1.0) 
    - centrify-midd (3.1.1) 

そして最後に:これは私のシェフ・クライアントの出力は、(私が最も関連性の高いと思われるもの、それのすべてをコピーしようとしましたが、ので、ここで最初と最後だことができませんでした)のようになります。

Recipe: web_varnish_config::backend 
    * cookbook_file[/var/www/html/check.html] action create (up to date) 
    * web_apache_config_vhost[vhost-7-wwwhealthcheck.conf] action create 
    * template[/etc/httpd/conf.d/vhost-7-wwwhealthcheck.conf] action create (up to date) 
(up to date) 
# NOTE: Below is where I'm expecting web_varnish_config:wordpress 
Recipe: web_varnish_config::default 
    * service[varnish] action enable (up to date) 
    * template[/etc/varnish/varnish.params] action create (up to date) 
    * service[varnishncsa] action enable (up to date) 
    * service[varnishncsa] action start (up to date) 
    * cookbook_file[/etc/systemd/system/varnishncsa.service] action create (up to date) 

私がインクルード行を削除した場合、chef-clientはこれをエラーなしで完全にスキップします。

アイデア?ダウンコメントからコピー

+0

あなたはこのレシピが実行されていないと思うのですか? – coderanger

+0

カップルの事:web_varnish_config :: default'を代わりに 'レシピの::シェフ・クライアントからの出力を見ると、それが特異的レシピ'言うweb_varnish_config :: wordpress'。証拠の別の部分は、 –

+0

シェフ、クライアントからの出力を含めるようにあなたの質問を編集してください(最初の場所でこのウサギの穴を私を導いた何)私はワードプレスのレシピで作る変更がこれまでにニスの行動に反映されていないということです。 – coderanger

答えて

0

だから、私は役割の名前を更新するのを忘れていたが判明:私の問題は、それが非常に具体的で、おそらく他の人に有用ではないが、そこにいた意味はどの

# I needed to change roles:web_wordpress to roles:web_wordpress_new 
all_wordpress_backends = search(:node, "chef_environment:#{node.chef_environment} AND roles:web_wordpress") 

0

、レシピ内の検索は、おそらく何のノードを返していないと、それが行うことに書かれたようにレシピは、自分自身を飛ばしています。

関連する問題