Error 'Command rabbitmqplugins is missing' on puppet apply

Bug #1201500 reported by Brad Woodward
16
This bug affects 3 people
Affects Status Importance Assigned to Milestone
puppet-openstack
Incomplete
Undecided
Unassigned

Bug Description

Running 'puppet apply tests/site.pp' results in the following error:

Notice: /Stage[main]/Concat::Setup/File[/var/lib/puppet/concat]/ensure: created
Notice: /Stage[main]/Nova::Compute/Package[bridge-utils]/ensure: ensure changed 'purged' to 'present'
Notice: /Stage[main]/Mysql::Python/Package[python-mysqldb]/ensure: ensure changed 'purged' to 'present'
Notice: /Stage[main]/Concat::Setup/File[/var/lib/puppet/concat/bin]/ensure: created
Notice: /Stage[main]/Concat::Setup/File[/var/lib/puppet/concat/bin/concatfragments.sh]/ensure: defined content as '{md5}adcc42dc82c1da54d5282681d9ed0ed4'
Error: /Stage[main]/Rabbitmq::Server/Rabbitmq_plugin[rabbitmq_management]: Could not evaluate: Command rabbitmqplugins is missing
[...]

The command proceeds and the apply completes after multiple 'unmet dependencies' messages. The test/site.pp and manifests/all.pp that I am using can be seen here:
https://github.com/Microcentillion/puppet-openstack/commit/90b1d7c61e231719ea04418ae9bf7ccc1a91fd32

This was working fine for me less than a week ago, although checking out previous commits doesn't have any effect.

Revision history for this message
James Luhrsen (jamo) wrote :

I just ran across this same error. Adding the path to rabbitmq-plugins to my puppet client's environment was
a workaround, but another rabbitmq failure occured later in my run (related to /var/tmp/rabbitmqadmin)

for me it was "export PATH=$PATH:/usr/lib/rabbitmq/lib/rabbitmq_server-2.7.1/sbin"

just fyi, in case it helps

Revision history for this message
James Luhrsen (jamo) wrote :

for the /var/tmp/rabbitmqadmin failure, I found that no rabbit user was getting created when running the
controller class. This caused the rabbitadmin curl grab to fail (unauthorized).

I manually added a rabbit admin user and hard coded those values in rabbitmq/manifests/server.pp :

# command => "curl http://${default_user}:${default_pass}@localhost:5${port}/cli/rabbitmqadmin -o /var/tmp/rabbitmqadmin",
    command => "curl http://myuser:mypassword@localhost:5${port}/cli/rabbitmqadmin -o /var/tmp/rabbitmqadmin",

following this, my puppet run for the controller class completed without error.

Revision history for this message
Mathieu Gagné (mgagne) wrote :

Do you still have this issue?

If yes, which version of Puppet and puppetlabs-rabbitmq are you using?

Changed in puppet-openstack:
status: New → Incomplete
Revision history for this message
Philip Cheong (philip-cheong) wrote :

I'm pretty confident this is the issue that I am hitting with puppetlabs-rabbitmq v3.1.0, which is the version pulled in from when I puppet module install puppetlabs-openstack (4.0.0 testing Icehouse).

Here is the specific failure from the puppet run:

Info: Class[Rabbitmq::Service]: Scheduling refresh of Service[rabbitmq-server]
Notice: /Stage[main]/Rabbitmq::Service/Service[rabbitmq-server]: Dependency Rabbitmq_plugin[rabbitmq_management] has failures: true
Warning: /Stage[main]/Rabbitmq::Service/Service[rabbitmq-server]: Skipping because of failed dependencies
...
Error: Could not find a suitable provider for rabbitmq_plugin

I tried out the puppetlabs-rabbitmq 4.0.0 but that but that is not compatible with the other modules.

As suggested above, if I add this to my path
export PATH=$PATH:/usr/lib/rabbitmq/lib/rabbitmq_server-3.1.5/sbin
then the puppet agent run will succeed.

Now I'm searching for a more permanent workaround.

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.