Bug #5
closedrake puppet:import:puppet_classes error.
Description
Hello,
nice work with foreman.
I try to do: rake puppet:import:puppet_classes from http://theforeman.org/wiki/foreman/External_Nodes
I did all the installation and setup steps, I use storeconfigs with mysql. This works fine.
When running "rake puppet:import:puppet_classes RAILS_ENV=production" I get:
@rake puppet:import:puppet_classes --trace RAILS_ENV=production(in /home/admin/foreman)
- Invoke puppet:import:puppet_classes (first_time)
- Invoke environment (first_time)
- Execute environment
- Execute puppet:import:puppet_classes
rake aborted!
private method `split' called for nil:NilClass
/home/admin/foreman/app/models/environment.rb:37:in `importClasses'
/home/admin/foreman/app/models/environment.rb:33:in `each_pair'
/home/admin/foreman/app/models/environment.rb:33:in `importClasses'
/home/admin/foreman/lib/tasks/puppet.rake:44
/usr/lib/ruby/1.8/rake.rb:636:in `call'
/usr/lib/ruby/1.8/rake.rb:636:in `execute'
/usr/lib/ruby/1.8/rake.rb:631:in `each'
/usr/lib/ruby/1.8/rake.rb:631:in `execute'
/usr/lib/ruby/1.8/rake.rb:597:in `invoke_with_call_chain'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/usr/lib/ruby/1.8/rake.rb:590:in `invoke_with_call_chain'
/usr/lib/ruby/1.8/rake.rb:583:in `invoke'
/usr/lib/ruby/1.8/rake.rb:2051:in `invoke_task'
/usr/lib/ruby/1.8/rake.rb:2029:in `top_level'
/usr/lib/ruby/1.8/rake.rb:2029:in `each'
/usr/lib/ruby/1.8/rake.rb:2029:in `top_level'
/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:2023:in `top_level'
/usr/lib/ruby/1.8/rake.rb:2001:in `run'
/usr/lib/ruby/1.8/rake.rb:2068:in `standard_exception_handling'
/usr/lib/ruby/1.8/rake.rb:1998:in `run'
/usr/bin/rake:28
@
@
dpkg -l rake ruby puppet facter ruby1.8
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Cfg-files/Unpacked/Failed-cfg/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Hold/Reinst-required/X=both-problems (Status,Err: uppercase=bad)
||/ Name Version Description
+++-===================-===================-======================================================
ii facter 1.5.6-2 a library for retrieving facts from operating systems
ii puppet 0.24.8-2 centralised configuration management for networks
ii rake 0.8.7-1 a ruby build program
ii ruby 4.2 An interpreter of object-oriented scripting language R
ii ruby1.8 1.8.7.72-3lenny1 Interpreter of object-oriented scripting language Ruby
@
Any clues where the problem could be?
Thanks,
udo
Updated by Ohad Levy over 15 years ago
Any chance your environments are not defined under the puppetmaster section?
Updated by Udo Waechter over 15 years ago
Ohad Levy wrote:
Any chance your environments are not defined under the puppetmaster section?
I do not have any envs defined. We do not use those.
Updated by Udo Waechter over 15 years ago
Ohad Levy wrote:
@could you paste your puppet.conf?
- $Id: puppet.conf.erb 2785 2009-08-29 10:22:10Z uwaechte $
[main]
confdir=/etc/puppet
logdir=/var/log/puppet
vardir=/var/lib/puppet
ssldir=$vardir/ssl
yamldir = $vardir/yaml
rundir=/var/run/puppet
factsignore = .svn CVS .git
pluginsync=true
factpath=$vardir/lib/facter
[puppetmasterd]
catalog_format=marshal
reports=log,rrdgraph,store
graph=true
rrdgraph=true
templatedir=/etc/puppet/templates
modulepath=/etc/puppet/modules:/etc/puppet/modules-public:/etc/puppet/modules-common
storeconfigs=true
dbmigrate=true
dbadapter=mysql
dbmigrate=true
dbname=<secret>
dbserver=<secret>
dbuser=<secret>
dbpassword=<secret>
rails_loglevel=info
- Make sure all log messages are sent to the right directory
- This directory must be writable by the puppet user
runinterval=1800
splay=false
report=true
server=puppetmaster.ikw.Uni-Osnabrueck.DE
configtimeout=720
#ca_server=puppetmaster.ikw.Uni-Osnabrueck.DE
#ca_port=18139
user=puppet
group=puppet
@
Updated by Udo Waechter over 15 years ago
ok, something went wrong in the prvious post:
Updated by Ohad Levy over 15 years ago
Udo Waechter wrote:
ok, something went wrong in the prvious post:
ok, try this diff:
diff --git a/app/models/environment.rb b/app/models/environment.rb index 37b0e0c..e24b8c9 100644 --- a/app/models/environment.rb +++ b/app/models/environment.rb @@ -22,7 +22,7 @@ class Environment < ActiveRecord::Base conf[:main][:environments].split(",").each {|e| env[e.to_sym] = conf[e.to_sym][:modulepath]} else # we dont use environments - env[:production] = conf[:main][:modulepath] + env[:production] = conf[:main][:modulepath] || conf[:puppetmasterd][:modulepath] end return env end
Updated by Udo Waechter over 15 years ago
Ohad Levy wrote:
ok, try this diff:
[...]
Yeah! It works now, thanks alot!
Updated by Ohad Levy over 15 years ago
- Status changed from New to Closed
- % Done changed from 0 to 100
Applied in changeset a3fb5d882f4a945293b47ba43c981174ad954327.