From fbb07dc2d587057f4135ac075bcde24d9b901dd4 Mon Sep 17 00:00:00 2001 From: Igor Rzegocki Date: Mon, 18 Apr 2016 15:15:30 +0200 Subject: [PATCH] Added auto-start of nginx to setup phase. Resolves #15 --- libraries/drivers_webserver_nginx.rb | 12 +++++++++--- spec/unit/recipes/setup_spec.rb | 4 ++++ 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/libraries/drivers_webserver_nginx.rb b/libraries/drivers_webserver_nginx.rb index 1cb427f9..a2905379 100644 --- a/libraries/drivers_webserver_nginx.rb +++ b/libraries/drivers_webserver_nginx.rb @@ -15,6 +15,7 @@ def setup(context) node.default['nginx']['install_method'] = out[:build_type].to_s == 'source' ? 'source' : 'package' recipe = out[:build_type].to_s == 'source' ? 'source' : 'default' context.include_recipe("nginx::#{recipe}") + define_service(context, :start) end def configure(context) @@ -29,14 +30,19 @@ def configure(context) end def before_deploy(context) - context.service 'nginx' do - supports status: true, restart: true, reload: true - end + define_service(context) end alias before_undeploy before_deploy private + def define_service(context, default_action = :nothing) + context.service 'nginx' do + supports status: true, restart: true, reload: true + action default_action + end + end + def add_ssl_directory(context) context.directory '/etc/nginx/ssl' do owner 'root' diff --git a/spec/unit/recipes/setup_spec.rb b/spec/unit/recipes/setup_spec.rb index 33cf02e3..050ae528 100644 --- a/spec/unit/recipes/setup_spec.rb +++ b/spec/unit/recipes/setup_spec.rb @@ -79,5 +79,9 @@ expect(chef_run).to install_package('git') expect(chef_run).to install_package('libpq-dev') end + + it 'defines service which starts nginx' do + expect(chef_run).to start_service('nginx') + end end end