Justin Lloyd
2011-Dec-05 18:53 UTC
[Puppet Users] Errors using puppetlabs dashboard, passenger, and mysql modules from github
I''m confused about certain Puppet parameterized class usage and
scoping.
The puppetlabs-dashboard module at
github<https://github.com/puppetlabs/puppetlabs-dashboard/blob/master/manifests/passenger.pp>starts
with the following:
class dashboard::passenger ($dashboard_site, $dashboard_port) inherits
dashboard {
Class [''::passenger''] -> Apache::Vhost[$dashboard_site]
class { ''::passenger'':
port => $dashboard_port,
}
I also have the puppetlabs-apache and puppetlabs-mysql classes in my
modules directory and I''m trying to install dashboard on a test host as
per
the instructions:
node test {
class { ''dashboard'':
dashboard_ensure => ''present'',
dashboard_user => ''puppet-dashboard'',
dashboard_group => ''puppet-dashboard'',
dashboard_password => ''changeme'',
dashboard_db => ''dashboard_production'',
dashboard_charset => ''utf8'',
dashboard_site => $fqdn,
dashboard_port => ''80'',
mysql_root_pw => ''changeme'',
passenger => true,
mysql_package_provider => ''yum'',
ruby_mysql_package => ''ruby-mysql'',
}
}
However, I''m getting the following error when running puppetd -t on the
test host:
# puppetd -t
notice: Ignoring --listen on onetime run
err: Could not retrieve catalog from remote server: Error 400 on SERVER:
Puppet::Parser::AST::Resource failed with error ArgumentError: Could not
find declared class ::passenger at
/etc/puppet/modules/dashboard/manifests/passenger.pp:21 on node
chelutlunx09.karmalab.net
warning: Not using cache on failed catalog
err: Could not retrieve catalog; skipping run
#
Does anyone know why I might be getting this error?
For what it''s worth, I''ve already had to make another change
to dashboard''s
init.pp due to a misuse of the mysql::server class by the dashboard class,
so I''m concerned that there are other issues I''ve not yet
encountered:
- class { ''mysql::server'': root_password => $mysql_root_pw
}
+ class { ''mysql::server'': config_hash => { root_password
=>
$mysql_root_pw } }
This is because of how the mysql::server class is actually defined:
class mysql::server(
$service_name = $mysql::params::service_name,
$config_hash = {},
$package_name = ''mysql-server''
)
Thanks,
Justin
--
You received this message because you are subscribed to the Google Groups
"Puppet Users" group.
To post to this group, send email to puppet-users@googlegroups.com.
To unsubscribe from this group, send email to
puppet-users+unsubscribe@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/puppet-users?hl=en.