Sugarcrm-ce error


#1

Hi,

   When installing sugarcrm-ce in chefsolo it shows following error:

Generated at 2014-10-15 09:16:36 -0400
NoMethodError: application[sugarcrm] (sugarcrm-ce::default line 36) had an error: NoMethodError: application_php_mod_php_apache2[sugarcrm] (sugarcrm-ce::default line 117) had an error: NoMethodError: No resource or method named include_recipe' forChef::Provider::ApplicationPhpModPhpApache2 “”’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:46:in rescue in method_missing' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:43:inmethod_missing’
/root/chef-repo/cookbooks/application_php/providers/mod_php_apache2.rb:24:in block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in run_action' /root/chef-repo/cookbooks/application/providers/default.rb:63:inblock in before_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:61:in each' /root/chef-repo/cookbooks/application/providers/default.rb:61:inbefore_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:25:in block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in run_action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:49:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in block (2 levels) in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:ineach’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in block in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection.rb:98:inblock in execute_each_resource’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:in call' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:incall_iterator_block’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:85:in step' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:104:initerate’

my code is :

in application_php /providers/ mod_php_apache2 file)

include Chef::DSL::Recipe

action :before_compile do

include_recipe "apache2"
include_recipe "apache2::mod_rewrite"
include_recipe "apache2::mod_deflate"
include_recipe "apache2::mod_headers"
include_recipe “apache2::mod_php5”

unless new_resource.server_aliases
server_aliases = [ “#{new_resource.application.name}.#{node[‘domain’]}”, node[‘fqdn’] ]
if node.has_key?(“cloud”)
server_aliases << node[‘cloud’][‘public_hostname’]
end
new_resource.server_aliases server_aliases
end

unless new_resource.restart_command
new_resource.restart_command do
run_context.resource_collection.find(:service => “apache2”).run_action(:restart)
end
end

end

action :before_deploy do

new_resource = @new_resource

web_app new_resource.application.name do
docroot "#{new_resource.application.path}/current#{new_resource.app_root}"
template new_resource.webapp_template || 'php.conf.erb’
cookbook new_resource.webapp_template ? new_resource.cookbook_name.to_s : "application_php"
server_name "#{new_resource.application.name}.#{node[‘domain’]}"
server_aliases new_resource.server_aliases
log_dir node[‘apache2’][‘log_dir’]
if(new_resource.webapp_overrides)
new_resource.webapp_overrides.each do |attribute, value|
self.send(attribute, value)
end
end
end

apache_site “000-default” do
enable false
end

end

action :before_migrate do
end

action :before_symlink do
end

action :before_restart do
end

action :after_restart do
end

and my sugarcrm recipe is :

::Chef::Recipe.send(:include, Opscode::OpenSSL::Password)

include_recipe 'apt’
include_recipe 'apache2’
include_recipe 'git’
include_recipe 'application’
include_recipe ‘application_php’

node.set[‘mysql’][‘server_root_password’] = secure_password if node[‘mysql’][‘server_root_password’] == ‘ilikerandompasswords’

include_recipe ‘mysql::server’

include_recipe ‘php::module_mysql’

node.set_unless[‘sugarcrm-ce’][‘db’][‘password’] = secure_password
node.set_unless[‘sugarcrm-ce’][‘admin_pass’] = secure_password
puts "ssssss"
application ‘sugarcrm’ do
puts "s11111111"
path node[‘sugarcrm-ce’][‘webroot’]
owner node[‘apache2’][‘user’]
group node[‘apache2’][‘group’]
repository 'git://github.com/sugarcrm/sugarcrm_dev.git’
revision node[‘sugarcrm-ce’][‘version’] || 'master’
puts "s2222"
mod_php_apache2 do
puts "s333"
server_aliases [node[‘fqdn’], node[‘host_name’]]
webapp_template 'web_app.conf.erb’
end
php do
puts "s444"
local_settings_file 'config_si.php’
end
end

cron ‘sugarcron’ do
minute '*/2’
command "/usr/bin/php -f #{node[‘sugarcrm-ce’][‘webroot’]}/cron.php >> /dev/null"
user node[‘apache2’][‘user’]
end

Also i change apache to apache2 which i ve apache2 cookbook

Thanks & regards,
indra K


#2

----- Forwarded Message -----
From: Indra k indra.k@cloudenablers.com
To: "chef@lists.opscode.com" chef@lists.opscode.com
Sent: Wednesday, 15 October 2014 7:38 PM
Subject: SUGARCRM-CE ERROR

Hi,

   When installing sugarcrm-ce in chefsolo it shows following error:

Generated at 2014-10-15 09:16:36 -0400
NoMethodError: application[sugarcrm] (sugarcrm-ce::default line 36) had an error: NoMethodError: application_php_mod_php_apache2[sugarcrm] (sugarcrm-ce::default line 117) had an error: NoMethodError: No resource or method named include_recipe' forChef::Provider::ApplicationPhpModPhpApache2 “”’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:46:in rescue in method_missing' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:43:inmethod_missing’
/root/chef-repo/cookbooks/application_php/providers/mod_php_apache2.rb:24:in block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in run_action' /root/chef-repo/cookbooks/application/providers/default.rb:63:inblock in before_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:61:in each' /root/chef-repo/cookbooks/application/providers/default.rb:61:inbefore_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:25:in block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in run_action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:49:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in block (2 levels) in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:ineach’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in block in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection.rb:98:inblock in execute_each_resource’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:in call' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:incall_iterator_block’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:85:in step' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:104:initerate’

my code is :

in application_php /providers/ mod_php_apache2 file)

include Chef::DSL::Recipe

action :before_compile do

include_recipe "apache2"
include_recipe "apache2::mod_rewrite"
include_recipe "apache2::mod_deflate"
include_recipe "apache2::mod_headers"
include_recipe “apache2::mod_php5”

unless new_resource.server_aliases
server_aliases = [ “#{new_resource.application.name}.#{node[‘domain’]}”, node[‘fqdn’] ]
if node.has_key?(“cloud”)
server_aliases << node[‘cloud’][‘public_hostname’]
end
new_resource.server_aliases server_aliases
end

unless new_resource.restart_command
new_resource.restart_command do
run_context.resource_collection.find(:service => “apache2”).run_action(:restart)
end
end

end

action :before_deploy do

new_resource = @new_resource

web_app new_resource.application.name do
docroot "#{new_resource.application.path}/current#{new_resource.app_root}"
template
new_resource.webapp_template || 'php.conf.erb’
cookbook new_resource.webapp_template ? new_resource.cookbook_name.to_s : "application_php"
server_name "#{new_resource.application.name}.#{node[‘domain’]}"
server_aliases new_resource.server_aliases
log_dir node[‘apache2’][‘log_dir’]
if(new_resource.webapp_overrides)
new_resource.webapp_overrides.each do |attribute, value|
self.send(attribute, value)
end
end
end

apache_site “000-default” do

enable false
end

end

action :before_migrate do
end

action :before_symlink do
end

action :before_restart do
end

action :after_restart do
end

and my sugarcrm recipe is :

::Chef::Recipe.send(:include, Opscode::OpenSSL::Password)

include_recipe 'apt’
include_recipe 'apache2’
include_recipe 'git’
include_recipe 'application’
include_recipe ‘application_php’

node.set[‘mysql’][‘server_root_password’] = secure_password if node[‘mysql’][‘server_root_password’] == ‘ilikerandompasswords’

include_recipe ‘mysql::server’

include_recipe ‘php::module_mysql’

node.set_unless[‘sugarcrm-ce’][‘db’][‘password’] = secure_password
node.set_unless[‘sugarcrm-ce’][‘admin_pass’] = secure_password
puts "ssssss"
application ‘sugarcrm’ do
puts "s11111111"
path node[‘sugarcrm-ce’][‘webroot’]
owner node[‘apache2’][‘user’]
group node[‘apache2’][‘group’]
repository 'git://github.com/sugarcrm/sugarcrm_dev.git’
revision node[‘sugarcrm-ce’][‘version’] || 'master’
puts "s2222"
mod_php_apache2 do
puts "s333"
server_aliases [node[‘fqdn’], node[‘host_name’]]
webapp_template ‘web_app.conf.erb’

end
php do
puts "s444"
local_settings_file 'config_si.php’
end
end

cron ‘sugarcron’ do
minute '*/2’
command "/usr/bin/php -f #{node[‘sugarcrm-ce’][‘webroot’]}/cron.php >> /dev/null"
user node[‘apache2’][‘user’]
end

Also i change apache to apache2 which i ve apache2 cookbook

Thanks & regards,
indra K


#3

Hi Indra,

It’s considered impolite to forward your own message to the mailing
list if you don’t get a response. You are generally not getting a
response because folks probably don’t know the answer to your
question.

I’ve noticed that you’ve asked a lot of questions about cookbooks that
others in the community have written. It is probable that folks on
this list do not have experience with those specific cookbooks. You
are more likely to resolve your problem if you attempt to debug the
issues on your own.

  • Julian

On Thu, Oct 16, 2014 at 5:13 AM, Indra k indra.k@cloudenablers.com wrote:

----- Forwarded Message -----
From: Indra k indra.k@cloudenablers.com
To: "chef@lists.opscode.com" chef@lists.opscode.com
Sent: Wednesday, 15 October 2014 7:38 PM
Subject: SUGARCRM-CE ERROR

Hi,

   When installing sugarcrm-ce in chefsolo it shows following error:

Generated at 2014-10-15 09:16:36 -0400
NoMethodError: application[sugarcrm] (sugarcrm-ce::default line 36) had an
error: NoMethodError: application_php_mod_php_apache2[sugarcrm]
(sugarcrm-ce::default line 117) had an error: NoMethodError: No resource or
method named include_recipe' forChef::Provider::ApplicationPhpModPhpApache2 “”’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:46:in
rescue in method_missing' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:43:inmethod_missing’
/root/chef-repo/cookbooks/application_php/providers/mod_php_apache2.rb:24:in
block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in
block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in
run_action' /root/chef-repo/cookbooks/application/providers/default.rb:63:inblock in
before_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:61:in each' /root/chef-repo/cookbooks/application/providers/default.rb:61:inbefore_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:25:in block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in
block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in
run_action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:49:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in
block (2 levels) in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:ineach’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in
block in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection.rb:98:inblock in execute_each_resource’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:in
call' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:incall_iterator_block’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:85:in
step' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:104:initerate’

my code is :

in application_php /providers/ mod_php_apache2 file)

include Chef::DSL::Recipe

action :before_compile do

include_recipe "apache2"
include_recipe "apache2::mod_rewrite"
include_recipe "apache2::mod_deflate"
include_recipe "apache2::mod_headers"
include_recipe “apache2::mod_php5”

unless new_resource.server_aliases
server_aliases = [ “#{new_resource.application.name}.#{node[‘domain’]}”,
node[‘fqdn’] ]
if node.has_key?(“cloud”)
server_aliases << node[‘cloud’][‘public_hostname’]
end
new_resource.server_aliases server_aliases
end

unless new_resource.restart_command
new_resource.restart_command do
run_context.resource_collection.find(:service =>
“apache2”).run_action(:restart)
end
end

end

action :before_deploy do

new_resource = @new_resource

web_app new_resource.application.name do
docroot
"#{new_resource.application.path}/current#{new_resource.app_root}"
template new_resource.webapp_template || 'php.conf.erb’
cookbook new_resource.webapp_template ? new_resource.cookbook_name.to_s
: "application_php"
server_name "#{new_resource.application.name}.#{node[‘domain’]}"
server_aliases new_resource.server_aliases
log_dir node[‘apache2’][‘log_dir’]
if(new_resource.webapp_overrides)
new_resource.webapp_overrides.each do |attribute, value|
self.send(attribute, value)
end
end
end

apache_site “000-default” do
enable false
end

end

action :before_migrate do
end

action :before_symlink do
end

action :before_restart do
end

action :after_restart do
end

and my sugarcrm recipe is :

::Chef::Recipe.send(:include, Opscode::OpenSSL::Password)

include_recipe 'apt’
include_recipe 'apache2’
include_recipe 'git’
include_recipe 'application’
include_recipe ‘application_php’

node.set[‘mysql’][‘server_root_password’] = secure_password if
node[‘mysql’][‘server_root_password’] == ‘ilikerandompasswords’

include_recipe ‘mysql::server’

include_recipe ‘php::module_mysql’

node.set_unless[‘sugarcrm-ce’][‘db’][‘password’] = secure_password
node.set_unless[‘sugarcrm-ce’][‘admin_pass’] = secure_password
puts "ssssss"
application ‘sugarcrm’ do
puts "s11111111"
path node[‘sugarcrm-ce’][‘webroot’]
owner node[‘apache2’][‘user’]
group node[‘apache2’][‘group’]
repository 'git://github.com/sugarcrm/sugarcrm_dev.git’
revision node[‘sugarcrm-ce’][‘version’] || 'master’
puts "s2222"
mod_php_apache2 do
puts "s333"
server_aliases [node[‘fqdn’], node[‘host_name’]]
webapp_template 'web_app.conf.erb’
end
php do
puts "s444"
local_settings_file 'config_si.php’
end
end

cron ‘sugarcron’ do
minute '*/2’
command "/usr/bin/php -f #{node[‘sugarcrm-ce’][‘webroot’]}/cron.php >>
/dev/null"
user node[‘apache2’][‘user’]
end

Also i change apache to apache2 which i ve apache2 cookbook

Thanks & regards,
indra K


[ Julian C. Dunn jdunn@aquezada.com * Sorry, I’m ]
[ WWW: http://www.aquezada.com/staff/julian * only Web 1.0 ]
[ gopher://sdf.org/1/users/keymaker/ * compliant! ]
[ PGP: 91B3 7A9D 683C 7C16 715F 442C 6065 D533 FDC2 05B9 ]


#4

Or reaching out to the Cookbook author. I had a question about a community
cookbook, strait to the author. He responded, and I got answers to my
questions.
It might not always work, but contacting the autho directly can sometimes
be a great way to get really in depth answers, as they are often the most
knowledgeable about the cookbook.

Mind indicating what line is the line 37 (where the error is being
determined), and the line 117?

On Thu, Oct 16, 2014 at 9:11 AM, Julian C. Dunn jdunn@aquezada.com wrote:

Hi Indra,

It’s considered impolite to forward your own message to the mailing
list if you don’t get a response. You are generally not getting a
response because folks probably don’t know the answer to your
question.

I’ve noticed that you’ve asked a lot of questions about cookbooks that
others in the community have written. It is probable that folks on
this list do not have experience with those specific cookbooks. You
are more likely to resolve your problem if you attempt to debug the
issues on your own.

  • Julian

On Thu, Oct 16, 2014 at 5:13 AM, Indra k indra.k@cloudenablers.com
wrote:

----- Forwarded Message -----
From: Indra k indra.k@cloudenablers.com
To: "chef@lists.opscode.com" chef@lists.opscode.com
Sent: Wednesday, 15 October 2014 7:38 PM
Subject: SUGARCRM-CE ERROR

Hi,

   When installing sugarcrm-ce in chefsolo it shows following error:

Generated at 2014-10-15 09:16:36 -0400
NoMethodError: application[sugarcrm] (sugarcrm-ce::default line 36) had
an
error: NoMethodError: application_php_mod_php_apache2[sugarcrm]
(sugarcrm-ce::default line 117) had an error: NoMethodError: No resource
or
method named include_recipe' forChef::Provider::ApplicationPhpModPhpApache2 “”’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:46:in

`rescue in method_missing’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:43:in

`method_missing’

/root/chef-repo/cookbooks/application_php/providers/mod_php_apache2.rb:24:in

`block in class_from_file’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in

`instance_eval’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in

`block in action’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:in

`run_action’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in

run_action' /root/chef-repo/cookbooks/application/providers/default.rb:63:inblock
in
before_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:61:in each' /root/chef-repo/cookbooks/application/providers/default.rb:61:inbefore_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:25:in `block
in
class_from_file’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in

`instance_eval’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in

`block in action’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:in

`run_action’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in

`run_action’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:49:in

`run_action’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in

`block (2 levels) in converge’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in

`each’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in

`block in converge’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection.rb:98:in

`block in execute_each_resource’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:in

`call’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:in

`call_iterator_block’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:85:in

`step’

/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:104:in

`iterate’

my code is :

in application_php /providers/ mod_php_apache2 file)

include Chef::DSL::Recipe

action :before_compile do

include_recipe "apache2"
include_recipe "apache2::mod_rewrite"
include_recipe "apache2::mod_deflate"
include_recipe "apache2::mod_headers"
include_recipe “apache2::mod_php5”

unless new_resource.server_aliases
server_aliases = [ “#{new_resource.application.name
}.#{node[‘domain’]}”,
node[‘fqdn’] ]
if node.has_key?(“cloud”)
server_aliases << node[‘cloud’][‘public_hostname’]
end
new_resource.server_aliases server_aliases
end

unless new_resource.restart_command
new_resource.restart_command do
run_context.resource_collection.find(:service =>
“apache2”).run_action(:restart)
end
end

end

action :before_deploy do

new_resource = @new_resource

web_app new_resource.application.name do
docroot
"#{new_resource.application.path}/current#{new_resource.app_root}"
template new_resource.webapp_template || 'php.conf.erb’
cookbook new_resource.webapp_template ?
new_resource.cookbook_name.to_s
: "application_php"
server_name "#{new_resource.application.name}.#{node[‘domain’]}"
server_aliases new_resource.server_aliases
log_dir node[‘apache2’][‘log_dir’]
if(new_resource.webapp_overrides)
new_resource.webapp_overrides.each do |attribute, value|
self.send(attribute, value)
end
end
end

apache_site “000-default” do
enable false
end

end

action :before_migrate do
end

action :before_symlink do
end

action :before_restart do
end

action :after_restart do
end

and my sugarcrm recipe is :

::Chef::Recipe.send(:include, Opscode::OpenSSL::Password)

include_recipe 'apt’
include_recipe 'apache2’
include_recipe 'git’
include_recipe 'application’
include_recipe ‘application_php’

node.set[‘mysql’][‘server_root_password’] = secure_password if
node[‘mysql’][‘server_root_password’] == ‘ilikerandompasswords’

include_recipe ‘mysql::server’

include_recipe ‘php::module_mysql’

node.set_unless[‘sugarcrm-ce’][‘db’][‘password’] = secure_password
node.set_unless[‘sugarcrm-ce’][‘admin_pass’] = secure_password
puts "ssssss"
application ‘sugarcrm’ do
puts "s11111111"
path node[‘sugarcrm-ce’][‘webroot’]
owner node[‘apache2’][‘user’]
group node[‘apache2’][‘group’]
repository 'git://github.com/sugarcrm/sugarcrm_dev.git’
revision node[‘sugarcrm-ce’][‘version’] || 'master’
puts "s2222"
mod_php_apache2 do
puts "s333"
server_aliases [node[‘fqdn’], node[‘host_name’]]
webapp_template 'web_app.conf.erb’
end
php do
puts "s444"
local_settings_file 'config_si.php’
end
end

cron ‘sugarcron’ do
minute '*/2’
command "/usr/bin/php -f #{node[‘sugarcrm-ce’][‘webroot’]}/cron.php >>
/dev/null"
user node[‘apache2’][‘user’]
end

Also i change apache to apache2 which i ve apache2 cookbook

Thanks & regards,
indra K


[ Julian C. Dunn jdunn@aquezada.com * Sorry, I’m ]
[ WWW: http://www.aquezada.com/staff/julian * only Web 1.0 ]
[ gopher://sdf.org/1/users/keymaker/ * compliant! ]
[ PGP: 91B3 7A9D 683C 7C16 715F 442C 6065 D533 FDC2 05B9 ]

Kenneth Barry
TuneIn | Build and Release Engineer
M: 409-673-0544
www.tunein.com


#5

Saw with Indra, the problem is only that lwrp can’t call include_recipe
directly, its not part of their ‘context’.

As LWRP have their own run_context and a specific DSL an include_recipe
within a lwrp should be written run_context.include_recipe

line 36 is the recipe calling the lwrp from ‘application’ cookbook with
’mod_php_apache2’ which call in turn ‘application_php_mod_php_apache2’.

line 117 is the first include_recipe touched inside the lwrp.

What is strange is that according to


it should be fixed. so maybe a version incompatible with Chef version
somewhere.

Regards,

Le 2014-10-16 20:08, Kenneth Barry a écrit :

Or reaching out to the Cookbook author. I had a question about a community cookbook, strait to the author. He responded, and I got answers to my questions.
It might not always work, but contacting the autho directly can sometimes be a great way to get really in depth answers, as they are often the most knowledgeable about the cookbook.

Mind indicating what line is the line 37 (where the error is being determined), and the line 117?

On Thu, Oct 16, 2014 at 9:11 AM, Julian C. Dunn jdunn@aquezada.com wrote:

Hi Indra,

It’s considered impolite to forward your own message to the mailing
list if you don’t get a response. You are generally not getting a
response because folks probably don’t know the answer to your
question.

I’ve noticed that you’ve asked a lot of questions about cookbooks that
others in the community have written. It is probable that folks on
this list do not have experience with those specific cookbooks. You
are more likely to resolve your problem if you attempt to debug the
issues on your own.

  • Julian

On Thu, Oct 16, 2014 at 5:13 AM, Indra k indra.k@cloudenablers.com wrote:

----- Forwarded Message -----
From: Indra k indra.k@cloudenablers.com
To: "chef@lists.opscode.com" chef@lists.opscode.com
Sent: Wednesday, 15 October 2014 7:38 PM
Subject: SUGARCRM-CE ERROR

Hi,

When installing sugarcrm-ce in chefsolo it shows following error:

Generated at 2014-10-15 09:16:36 -0400
NoMethodError: application[sugarcrm] (sugarcrm-ce::default line 36) had an
error: NoMethodError: application_php_mod_php_apache2[sugarcrm]
(sugarcrm-ce::default line 117) had an error: NoMethodError: No resource or
method named include_recipe' forChef::Provider::ApplicationPhpModPhpApache2 “”’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:46:in
rescue in method_missing' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/dsl/recipe.rb:43:inmethod_missing’
/root/chef-repo/cookbooks/application_php/providers/mod_php_apache2.rb:24:in
block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in
block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in
run_action' /root/chef-repo/cookbooks/application/providers/default.rb:63:inblock in
before_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:61:in each' /root/chef-repo/cookbooks/application/providers/default.rb:61:inbefore_compile’
/root/chef-repo/cookbooks/application/providers/default.rb:25:in block in class_from_file' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:ininstance_eval’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider/lwrp_base.rb:138:in
block in action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/provider.rb:125:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource.rb:648:in
run_action' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:49:inrun_action’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in
block (2 levels) in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:ineach’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/runner.rb:81:in
block in converge' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection.rb:98:inblock in execute_each_resource’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:in
call' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:116:incall_iterator_block’
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:85:in
step' /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/chef-11.16.4/lib/chef/resource_collection/stepable_iterator.rb:104:initerate’

my code is :

in application_php /providers/ mod_php_apache2 file)

include Chef::DSL::Recipe

action :before_compile do

include_recipe "apache2"
include_recipe "apache2::mod_rewrite"
include_recipe "apache2::mod_deflate"
include_recipe "apache2::mod_headers"
include_recipe “apache2::mod_php5”

unless new_resource.server_aliases
server_aliases = [ “#{new_resource.application.name [1]}.#{node[‘domain’]}”,
node[‘fqdn’] ]
if node.has_key?(“cloud”)
server_aliases << node[‘cloud’][‘public_hostname’]
end
new_resource.server_aliases server_aliases
end

unless new_resource.restart_command
new_resource.restart_command do
run_context.resource_collection.find(:service =>
“apache2”).run_action(:restart)
end
end

end

action :before_deploy do

new_resource = @new_resource

web_app new_resource.application.name [1] do
docroot
"#{new_resource.application.path}/current#{new_resource.app_root}"
template new_resource.webapp_template || 'php.conf.erb’
cookbook new_resource.webapp_template ? new_resource.cookbook_name.to_s
: "application_php"
server_name "#{new_resource.application.name [1]}.#{node[‘domain’]}"
server_aliases new_resource.server_aliases
log_dir node[‘apache2’][‘log_dir’]
if(new_resource.webapp_overrides)
new_resource.webapp_overrides.each do |attribute, value|
self.send(attribute, value)
end
end
end

apache_site “000-default” do
enable false
end

end

action :before_migrate do
end

action :before_symlink do
end

action :before_restart do
end

action :after_restart do
end

and my sugarcrm recipe is :

::Chef::Recipe.send(:include, Opscode::OpenSSL::Password)

include_recipe 'apt’
include_recipe 'apache2’
include_recipe 'git’
include_recipe 'application’
include_recipe ‘application_php’

node.set[‘mysql’][‘server_root_password’] = secure_password if
node[‘mysql’][‘server_root_password’] == ‘ilikerandompasswords’

include_recipe ‘mysql::server’

include_recipe ‘php::module_mysql’

node.set_unless[‘sugarcrm-ce’][‘db’][‘password’] = secure_password
node.set_unless[‘sugarcrm-ce’][‘admin_pass’] = secure_password
puts "ssssss"
application ‘sugarcrm’ do
puts "s11111111"
path node[‘sugarcrm-ce’][‘webroot’]
owner node[‘apache2’][‘user’]
group node[‘apache2’][‘group’]
repository 'git://github.com/sugarcrm/sugarcrm_dev.git [2]'
revision node[‘sugarcrm-ce’][‘version’] || 'master’
puts "s2222"
mod_php_apache2 do
puts "s333"
server_aliases [node[‘fqdn’], node[‘host_name’]]
webapp_template 'web_app.conf.erb’
end
php do
puts "s444"
local_settings_file 'config_si.php’
end
end

cron ‘sugarcron’ do
minute '*/2’
command "/usr/bin/php -f #{node[‘sugarcrm-ce’][‘webroot’]}/cron.php >>
/dev/null"
user node[‘apache2’][‘user’]
end

Also i change apache to apache2 which i ve apache2 cookbook

Thanks & regards,
indra K


[ Julian C. Dunn jdunn@aquezada.com * Sorry, I’m ]
[ WWW: http://www.aquezada.com/staff/julian [3] * only Web 1.0 ]
[ gopher://sdf.org/1/users/keymaker/ [4] * compliant! ]
[ PGP: 91B3 7A9D 683C 7C16 715F 442C 6065 D533 FDC2 05B9 ]

Kenneth Barry

TuneIn | Build and Release Engineer
M: 409-673-0544
www.tunein.com [5]

Links:

[1] http://new_resource.application.name
[2] http://github.com/sugarcrm/sugarcrm_dev.git
[3] http://www.aquezada.com/staff/julian
[4] http://sdf.org/1/users/keymaker/
[5] http://www.tunein.com/