Ask Your Question
0

Getting "Could not find a suitable provider" for all puppetlabs-rabbitmq resources

asked 2016-11-18 18:19:44 -0500

OUberLord gravatar image

I am attempting to set up the puppetlabs-rabbitmq module for use in one of my manifests, and am having a surprising amount of issues. I'm convinced I'm simply doing something wrong, but I don't know what. Here is my configuration:

Module path (currently keeping everything in the global path):

[username@puppet manifests]$ ll /etc/puppetlabs/code/modules
...
drwxr-xr-x. 8 root root 4096 Nov 18 17:02 rabbitmq
...

Pertinent part of /etc/puppetlabs/code/environments/production/modules/abp_app/manifests/init.pp:

class abp_app {
  ...
  include abp_app::rabbitmq_install
  include abp_app::rabbitmq_setup
  ...
}

Pertinent part of /etc/puppetlabs/code/environments/production/modules/abpapp/manifests/rabbitmqsetup.pp:

include '::rabbitmq'

class abp_app::rabbitmq_setup {
  rabbitmq_vhost {'vhostname':
    ensure => present
  }
  ...
  rabbitmq_user { 'username':
    admin    => true,
    password => 'password',
  }
  ...
  rabbitmq_user_permissions { 'username@vhostname':
    configure_permission => '.*',
    read_permission      => '.*',
    write_permission     => '.*',
  }
}

Every other part of my manifests, which often include other modules from the global module path, work fine. However, when it comes to the rabbitmq module in particular I get this agent output:

C:\Users\username\Desktop>puppet agent -t
Info: Using configured environment 'production'
Info: Retrieving pluginfacts
Info: Retrieving plugin
Info: Loading facts
Info: Caching catalog for hostname.domain.local
Info: Applying configuration version '1479513869'
Error: Could not find a suitable provider for rabbitmq_vhost
Error: Could not find a suitable provider for rabbitmq_user
Error: Could not find a suitable provider for rabbitmq_user_permissions
Notice: Applied catalog in 3.77 seconds

Where am I going wrong? Every other time I've had to include a module, "include modulename" has worked perfectly. In this case the documentation states to use "include ::rabbitmq" but I've tried that as well and it simply isn't working as expected.

edit retag flag offensive close merge delete

Comments

As an experiment, can you bring the module into your environment? If it works in your environment but not from the general default module path, perhaps is is not quite what you expect? check puppet config print modulepath

DarylW gravatar imageDarylW ( 2016-11-18 20:15:19 -0500 )edit

1 answer

Sort by ยป oldest newest most voted
1

answered 2016-11-18 20:52:48 -0500

lupin gravatar image

Try this in your /etc/puppetlabs/code/environments/production/modules/abp_app/manifests/init.pp

class abp_app  {
    include '::rabbitmq'
}

That should be enough to install RabbitMQ setup with default configuration. If that doesn't work then paste the output of puppet config print | grep module

edit flag offensive delete link more

Comments

Well, technically speaking that worked. I say technically because a response from the module of "The rabbitmq module is not supported on an windows based system" at least indicates it is getting referenced properly. That said, why did it work? I feel like there's a learning moment to be had here.

OUberLord gravatar imageOUberLord ( 2016-11-18 21:48:37 -0500 )edit

And, obviously, I'm not looking for help to make it work past this point. I'm going to poke it with a stick to see if I can add Windows support to the module, but that's outside of the scope of this thread.

OUberLord gravatar imageOUberLord ( 2016-11-18 21:50:53 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

1 follower

Stats

Asked: 2016-11-18 18:19:44 -0500

Seen: 27 times

Last updated: Nov 18 '16