On Sep 4, 1:46 am, Julian Simpson <simpsonjul...@gmail.com> wrote:
> You need to tell Puppet to manage both a gem and an RPM.  Adding
> 'provider => gem' to the appropriate package declaration will do that.

> 2009/9/4 Matt Delves <m.del...@ballarat.edu.au>:
> > The problem is that I currently have the mysql package installed as an
> > rpm via puppet, though I'm also wanting to use puppet to manage the
> > mysql ruby gem. Unfortunately when I do this, puppet complains with the
> > following error:
> > ArgumentError: Duplicate definition: Package[mysql] is already defined
>
> > Is there a way to get around this?

Do try Julian's suggestion first, but I suspect that it will not be
sufficient.  The root problem appears to be that you are using the
same name for the RPM package resource and the gem package resource.
I don't think Puppet will allow two resources of the same name and
type, even if they have different providers.  If you do need package
name uniqueness then you *might* be able to arrange it like so:

# Puppet should refer to this Package resource as "mysql-gem", whereas
gem should consider the gem name to be "mysql".  Maybe.
package { "mysql-gem":
    name => "mysql"
    # Must specify the provider when it is not the system default:
    provider => "gem"
    [...]
}

If that doesn't work either then you might need custom code to get
around the problem.

Good luck.


John
--~--~---------~--~----~------------~-------~--~----~
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+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/puppet-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to