Here is my logstash.pp at 
/etc/puppet/modules/profiles/manifests/logstash.pp:

class profiles::logstash(
   $version = "1.4.1-1_bd507eb",
   $enable  = true,
   $start   = true
) {
   class{'profiles::logstash::install': } ->
   class{'profiles::logstash::config': } ~>
   class{'profiles::logstash::service': } ->
   Class["profiles::logstash"]
}


On Saturday, May 31, 2014 8:17:34 AM UTC-4, Brian Wilkins wrote:
>
> I am using the puppet logstash module from Forge installed at 
> /etc/puppet/modules/logstash
>
> I am trying to setup my profile class as profiles::logstash. My manifest 
> is at /etc/puppet/modules/profiles/manifests/logstash.pp
>
> In my /etc/puppet/modules/profiles/manifests/logstash directory I have:
>
> install.pp
> config.pp
> service.pp
>
> In my install.pp:
>
> class profiles::logstash::install() {
>   $ensure = $profiles::logstash::enable ? {true => present, default => 
> absent}
>
>   class { 'logstash':
>     ensure  => $ensure,
>     version => $profiles::logstash::version
>   }
> }
>
> Here, class refers to the /etc/puppet/modules/logstash  not 
> /etc/puppet/modules/profiles/manifests/logstash
>
> However, when I do a run, it tells me
>
> Could not retrieve catalog from remote server: Error 400 on SERVER: 
> Duplicate declaration: Class[Profiles::Logstash] is already declared; 
> cannot redeclare at 
> /etc/puppet/modules/profiles/manifests/logstash/install.pp:8
>
> It is referring to the "class {'logstash'" line. 
>
> What's the proper way to disambiguate so I can still tell the puppet 
> logstash module to install logstash and ensure the right version?
>

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-users/b28a3239-f0eb-4ca8-aa35-cb12e2e0ee44%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to