[chef] Re: Re: Re: Re: NGINX -- default_site_enabled issue


Chronological Thread 
  • From: Liam Kirsher < >
  • To:
  • Subject: [chef] Re: Re: Re: Re: NGINX -- default_site_enabled issue
  • Date: Wed, 12 Jun 2013 16:52:39 -0700
  • Openpgp: id=7011F7B7; url=http://liam.numenet.com/pgp/

The docs say:
  • default.rb: Use this recipe if you have a native package for Nginx.
  • repo.rb: The developer of Nginx also maintain stable packages for several platforms.
  • source.rb: Use this recipe if you do not have a native package for Nginx, or if you want to install a newer version than is available, or if you have custom module compilation needs.
nginx::default failed on the box I was using, opscode-ubuntu-1204, so I used repo.

Don't know if it's related, but I'm also using application_nginx, which creates an entry in sites-enabled:
<node fqdn>.conf




On 06/12/2013 02:36 PM, AJ Christensen wrote:
" type="cite">
service[nginx] is provided by a different recipe, not nginx::repo. You
probably need nginx::server or nginx::default.

Cheers,

AJ

On 13 June 2013 05:38, Liam Kirsher 
 
 "><
 > wrote:
Nic,

Thanks for your response.

I tried that but it didn't work. When I included it in my recipe the
converge threw an exception

include_recipe "nginx::repo"

nginx_site "default" do
  enable false
end


[2013-06-12T17:32:36+00:00] FATAL: Chef::Exceptions::ResourceNotFound:
resource execute[nxdissite default] is configured to notify resource
service[nginx] with action reload, but service[nginx] cannot be found in the
resource collection. execute[nxdissite default] is defined in
/srv/chef/file_store/cookbooks/nginx/definitions/nginx_site.rb:32:in `block
in from_file'

Am I not referencing it correctly?

I looked in the nginx_site definition, and that only seems to deal with the
ubuntu style of linking sites in the sites-enabled directory -- so this may
be a moot point anyway.
In this case (I think because it comes from the repo) nginx.conf  *also* is
including conf.d/*.conf.  That directory includes a default.conf which is
also listening on the same interface and port, so that creates a conflict.

The default template nginx.conf.erb ends with:
  include <%= node['nginx']['dir'] %>/conf.d/*.conf;
  include <%= node['nginx']['dir'] %>/sites-enabled/*;

It seems like the two host configuration schemes are colliding.  (Or,
perhaps, conf.d could be used for other type of configuration includes.  But
in this case, it has a default site defined.)

I kinda think this is a bug in the template, but it may be correct for other
versions of nginx (it's getting 1.4.1 from the repo).

In any case, thanks for the suggestion.

Liam




On 06/12/2013 08:04 AM, Nic Grayson wrote:

The upstream nginx cookbook enables the default site. I just call the
nginx_site definition on default to disable it.

nginx_site "default" do
  enable false
end

Nic


On Tue, Jun 11, 2013 at 4:52 PM, Liam Kirsher 
 
 "><
 > wrote:
Hi --

I'm using the application_nginx cookbook which includes the nginx
cookbook.
In my wrapper cookbook I have

cookbooks/bti_api/attributes/default.rb:
override[:nginx][:default_site_enabled] = false

However, the NGINX default site is still enabled!  At the bottom of the
nginx.conf file is
  include /etc/nginx/conf.d/*.conf;
  include /etc/nginx/sites-enabled/*;
}
And conf.d/default.conf exists.

So, it seems that default_site_enabled is being ignored.  Is this not
the way to turn off the default_site?


Possibly relevant info:
I'm using the nginx::repo recipe

The run_list:
INFO: Loading cookbooks [application, application_nginx,
application_python, apt, aws, bti_api, build-essential, chef_handler,
erlang, gunicorn, mercurial, nginx, ohai, python, rabbitmq, runit,
supervisor, windows, yum]




The

--
Liam Kirsher
PGP: http://liam.numenet.com/pgp/


--
Liam Kirsher
PGP: http://liam.numenet.com/pgp/

    

-- 
Liam Kirsher
PGP: http://liam.numenet.com/pgp/



Archive powered by MHonArc 2.6.16.

§