Skip to content

Instantly share code, notes, and snippets.

Created April 11, 2014 17:36
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save anonymous/1148775c37a95adee38c to your computer and use it in GitHub Desktop.
Save anonymous/1148775c37a95adee38c to your computer and use it in GitHub Desktop.
Getting conflicting errors from keystone module.
root@dessalines-003:~# puppet agent -t
Info: Retrieving plugin
Info: Loading facts in /var/lib/puppet/lib/facter/concat_basedir.rb
Info: Loading facts in /var/lib/puppet/lib/facter/facter_dot_d.rb
Info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb
Info: Loading facts in /var/lib/puppet/lib/facter/pe_version.rb
Info: Loading facts in /var/lib/puppet/lib/facter/root_home.rb
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid db connection mysql://keystone:@127.0.0.1/keystone at /etc/puppet/modules/ymd_ng/keystone/manifests/init.pp:254 on node dessalines-003.yourmessagedelivered.com
Warning: Not using cache on failed catalog
Error: Could not retrieve catalog; skipping run
-----
The complaining code looks like this:
class keystone(
<snip>
$sql_connection = 'sqlite:////var/lib/keystone/keystone.db',
<snip>
) {
<snip>
if($sql_connection =~ /mysql:\/\/\S+:\S+@\S+\/\S+/) {
require 'mysql::bindings::python'
} elsif($sql_connection =~ /postgresql:\/\/\S+:\S+@\S+\/\S+/) {
} elsif($sql_connection =~ /sqlite:\/\//) {
} else {
fail("Invalid db connection ${sql_connection}")
}
-----
This class is being invoked as follows:
class { 'keystone':
verbose => 'True',
db_password => $hesco_openstack::params::mysql_root_password,
admin_email => 'hesco@yourmessagedelivered.com',
admin_password => $hesco_openstack::params::keystone_admin_password,
glance_user_password => $hesco_openstack::params::glance_user_password,
nova_user_password => $hesco_openstack::params::nova_user_password,
cinder_user_password => $hesco_openstack::params::cinder_user_password,
quantum_user_password => $hesco_openstack::params::quantum_user_password,
public_address => $hesco_openstack::params::public_address,
admin_token => 'random_uuid',
}
# catalog_type => 'sql',
# sql_connection => $hesco_openstack::params::sql_connection,
-----
hesco_openstack/manifests/params.pp --
class hesco_openstack::params {
$sql_connection = 'mysql://keystone:secret@127.0.0.1/keystone'
. . .
-----
When I attempt to include the sql_connection attribute, I get an error which looks like this:
Error: Could not retrieve catalog from remote server: Error 400 on SERVER: Invalid parameter sql_connection at /etc/puppet/modules/ymd_ng/openstack/manifests/init.pp:29 on node dessalines-003.yourmessagedelivered.com
-----
which leaves me confused as to how to push past these errors to a successful catalogue compilation and run.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment