Pretty sure you could use use 'version' in both your node declaration or in 
hiera.

Matt

On Apr 10, 2013, at 1:48 PM, Larry Fast <[email protected]> wrote:

> I'm guessing that the problem is in example42/mcollective/manifests/init.pp...
> 
> class mcollective (
>   $install_dependencies = params_lookup( 'install_dependencies' ),
>   $stomp_host           = params_lookup( 'stomp_host' ),
>   $stomp_port           = params_lookup( 'stomp_port' ),
>   $stomp_user           = params_lookup( 'stomp_user' ),
>   $stomp_password       = params_lookup( 'stomp_password' ),
>   $stomp_admin          = params_lookup( 'stomp_admin' ),
>   $stomp_admin_password = params_lookup( 'stomp_admin_password' ),
>   $install_client       = params_lookup( 'install_client' ),
>   $install_stomp_server = params_lookup( 'install_stomp_server' ),
>   $install_plugins      = params_lookup( 'install_plugins' ),
>   $psk                  = params_lookup( 'psk' ),
>   $package_client       = params_lookup( 'package_client' ),
>   $config_file_client   = params_lookup( 'config_file_client' ),
>   $template_client      = params_lookup( 'template_client' ),
>   $template_stomp_server = params_lookup( 'template_stomp_server' ),
>   $my_class             = params_lookup( 'my_class' ),
>   $source               = params_lookup( 'source' ),
>   $source_dir           = params_lookup( 'source_dir' ),
>   $source_dir_purge     = params_lookup( 'source_dir_purge' ),
>   $template             = params_lookup( 'template' ),
>   $service_autorestart  = params_lookup( 'service_autorestart' , 'global' ),
>   $options              = params_lookup( 'options' ),
>   $version              = params_lookup( 'version' ),
>   $absent               = params_lookup( 'absent' ),
>   $disable              = params_lookup( 'disable' ),
>   $disableboot          = params_lookup( 'disableboot' ),
>   $monitor              = params_lookup( 'monitor' , 'global' ),
>   $monitor_tool         = params_lookup( 'monitor_tool' , 'global' ),
>   $monitor_target       = params_lookup( 'monitor_target' , 'global' ),
>   $puppi                = params_lookup( 'puppi' , 'global' ),
>   $puppi_helper         = params_lookup( 'puppi_helper' , 'global' ),
>   $firewall             = params_lookup( 'firewall' , 'global' ),
>   $firewall_tool        = params_lookup( 'firewall_tool' , 'global' ),
>   $firewall_src         = params_lookup( 'firewall_src' , 'global' ),
>   $firewall_dst         = params_lookup( 'firewall_dst' , 'global' ),
>   $debug                = params_lookup( 'debug' , 'global' ),
>   $audit_only           = params_lookup( 'audit_only' , 'global' ),
>   $package              = params_lookup( 'package' ),
>   $service              = params_lookup( 'service' ),
>   $service_status       = params_lookup( 'service_status' ),
>   $process              = params_lookup( 'process' ),
>   $process_args         = params_lookup( 'process_args' ),
>   $process_user         = params_lookup( 'process_user' ),
>   $config_dir           = params_lookup( 'config_dir' ),
>   $config_file          = params_lookup( 'config_file' ),
>   $config_file_mode     = params_lookup( 'config_file_mode' ),
>   $config_file_owner    = params_lookup( 'config_file_owner' ),
>   $config_file_group    = params_lookup( 'config_file_group' ),
>   $config_file_init     = params_lookup( 'config_file_init' ),
>   $pid_file             = params_lookup( 'pid_file' ),
>   $data_dir             = params_lookup( 'data_dir' ),
>   $log_dir              = params_lookup( 'log_dir' ),
>   $log_file             = params_lookup( 'log_file' ),
>   $port                 = params_lookup( 'port' ),
>   $protocol             = params_lookup( 'protocol' )
>   ) inherits mcollective::params {
> 
>   $bool_install_dependencies =any2bool($install_dependencies )
>   $bool_source_dir_purge=any2bool($source_dir_purge)
>   $bool_service_autorestart=any2bool($service_autorestart)
>   $bool_absent=any2bool($absent)
>   $bool_disable=any2bool($disable)
>   $bool_disableboot=any2bool($disableboot)
>   $bool_monitor=any2bool($monitor)
>   $bool_puppi=any2bool($puppi)
>   $bool_firewall=any2bool($firewall)
>   $bool_debug=any2bool($debug)
>   $bool_audit_only=any2bool($audit_only)
>   $bool_install_client=any2bool($install_client)
>   $bool_install_stomp_server=any2bool($install_stomp_server)
>   $bool_install_plugins=any2bool($install_plugins)
> 
>   ### Definition of some variables used in the module
>   $manage_package = $mcollective::bool_absent ? {
>     true  => 'absent',
>     false => $mcollective::version,
>   }
> 
>   $manage_service_enable = $mcollective::bool_disableboot ? {
>     true    => false,
>     default => $mcollective::bool_disable ? {
>       true    => false,
>       default => $mcollective::bool_absent ? {
>         true  => false,
>         false => true,
>       },
>     },
>   }
> 
>   $manage_service_ensure = $mcollective::bool_disable ? {
>     true    => 'stopped',
>     default =>  $mcollective::bool_absent ? {
>       true    => 'stopped',
>       default => 'running',
>     },
>   }
> 
>   $manage_service_autorestart = $mcollective::bool_service_autorestart ? {
>     true    => Service[mcollective],
>     false   => undef,
>   }
> 
>   $manage_file = $mcollective::bool_absent ? {
>     true    => 'absent',
>     default => 'present',
>   }
> 
>   if $mcollective::bool_absent == true
>   or $mcollective::bool_disable == true
>   or $mcollective::bool_disableboot == true {
>     $manage_monitor = false
>   } else {
>     $manage_monitor = true
>   }
> 
>   if $mcollective::bool_absent == true
>   or $mcollective::bool_disable == true {
>     $manage_firewall = false
>   } else {
>     $manage_firewall = true
>   }
> 
>   $manage_audit = $mcollective::bool_audit_only ? {
>     true  => 'all',
>     false => undef,
>   }
> 
>   $manage_file_replace = $mcollective::bool_audit_only ? {
>     true  => false,
>     false => true,
>   }
> 
>   $manage_file_source = $mcollective::source ? {
>     ''        => undef,
>     default   => $mcollective::source,
>   }
> 
>   # A default template is provided if $mcollective::stomp_host is
>   # set and no $mcollective::source or $mcollective::template
>   # is explicitely set
>   $manage_file_content = $mcollective::template ? {
>     ''        => $mcollective::source ? {
>       ''      => $mcollective::stomp_host ? {
>         ''      => undef,
>         default => template('mcollective/server.cfg.erb'),
>       },
>       default => undef,
>     },
>     default   => template($mcollective::template),
>   }
> 
>   $manage_file_content_client = $mcollective::template_client ? {
>     ''        => template('mcollective/client.cfg.erb'),
>     default   => template($mcollective::template_client),
>   }
> 
>   ### Managed resources
>   package { $mcollective::package:
>     ensure => $mcollective::manage_package,
>   }
> 
>   service { 'mcollective':
>     ensure     => $mcollective::manage_service_ensure,
>     name       => $mcollective::service,
>     enable     => $mcollective::manage_service_enable,
>     hasstatus  => $mcollective::service_status,
>     pattern    => $mcollective::process,
>     require    => Package[$mcollective::package],
>   }
> 
>   file { 'mcollective.conf':
>     ensure  => $mcollective::manage_file,
>     path    => $mcollective::config_file,
>     mode    => $mcollective::config_file_mode,
>     owner   => $mcollective::config_file_owner,
>     group   => $mcollective::config_file_group,
>     require => Package[$mcollective::package],
>     notify  => $mcollective::manage_service_autorestart,
>     source  => $mcollective::manage_file_source,
>     content => $mcollective::manage_file_content,
>     replace => $mcollective::manage_file_replace,
>     audit   => $mcollective::manage_audit,
>   }
> 
>   # The whole mcollective configuration directory can be recursively overriden
>   if $mcollective::source_dir {
>     file { 'mcollective.dir':
>       ensure  => directory,
>       path    => $mcollective::config_dir,
>       require => Package[$mcollective::package],
>       notify  => $mcollective::manage_service_autorestart,
>       source  => $mcollective::source_dir,
>       recurse => true,
>       purge   => $mcollective::bool_source_dir_purge,
>       replace => $mcollective::manage_file_replace,
>       audit   => $mcollective::manage_audit,
>     }
>   }
> 
> 
>   ### Include custom class if $my_class is set
>   if $mcollective::my_class {
>     include $mcollective::my_class
>   }
> 
>   ### Include mcollective client if $install_client == true
>   if $mcollective::bool_install_client == true {
>     include mcollective::client
>   }
> 
>   ### Include Stomp Server (ActiveMQ) if $install_stomp_server == true
>   if $mcollective::bool_install_stomp_server == true {
>     include mcollective::stomp_server
>   }
> 
>   ### Include Mcollective Plugins
>   if $mcollective::bool_install_plugins == true {
>     include mcollective::plugins
>   }
> 
>   ### Provide puppi data, if enabled ( puppi => true )
>   if $mcollective::bool_puppi == true {
>     $classvars=get_class_args()
>     puppi::ze { 'mcollective':
>       ensure    => $mcollective::manage_file,
>       variables => $classvars,
>       filter    => '.*content.*|.*password.*|.*psk.*',
>       helper    => $mcollective::puppi_helper,
>     }
>     # Mcollective puppi plugin
>     include puppi::mcollective::server
>   }
> 
> 
>   ### Service monitoring, if enabled ( monitor => true )
>   if $mcollective::bool_monitor == true {
>     monitor::port { 
> "mcollective_stomp_${mcollective::stomp_host}_${mcollective::stomp_port}":
>       protocol    => $mcollective::protocol,
>       port        => $mcollective::stomp_port,
>       target      => $mcollective::stomp_host,
>       tool        => $mcollective::monitor_tool,
>       checksource => 'local',
>       enable      => $mcollective::manage_monitor,
>     }
>     monitor::process { 'mcollective_process':
>       process  => $mcollective::process,
>       service  => $mcollective::service,
>       pidfile  => $mcollective::pid_file,
>       user     => $mcollective::process_user,
>       argument => $mcollective::process_args,
>       tool     => $mcollective::monitor_tool,
>       enable   => $mcollective::manage_monitor,
>     }
>   }
> 
> 
>   ### Firewall management, if enabled ( firewall => true )
>   if $mcollective::bool_firewall == true {
>     firewall { "mcollective_${mcollective::protocol}_${mcollective::port}":
>       source      => $mcollective::firewall_src,
>       destination => $mcollective::firewall_dst,
>       protocol    => $mcollective::protocol,
>       port        => $mcollective::port,
>       action      => 'allow',
>       direction   => 'input',
>       tool        => $mcollective::firewall_tool,
>       enable      => $mcollective::manage_firewall,
>     }
>   }
> 
> 
>   ### Debugging, if enabled ( debug => true )
>   if $mcollective::bool_debug == true {
>     file { 'debug_mcollective':
>       ensure  => $mcollective::manage_file,
>       path    => "${settings::vardir}/debug-mcollective",
>       mode    => '0640',
>       owner   => 'root',
>       group   => 'root',
>       content => inline_template('<%= scope.to_hash.reject { |k,v| k.to_s =~ 
> /(uptime.*|path|timestamp|free|.*password.*|.*psk.*|.*key)/ }.to_yaml %>'),
>     }
>   }
> 
>   ### Yaml based fact source for mcollective.
>   file { 'facts.yaml':
>     ensure   => $mcollective::manage_file,
>     path     => "${mcollective::config_dir}/facts.yaml",
>     mode     => '0400',
>     owner    => 'root',
>     group    => 'root',
>     require  => Package[$mcollective::package],
>     loglevel => debug,  # this is needed to avoid it being logged and 
> reported on every run
>     # avoid including highly-dynamic facts as they will cause unnecessary 
> template writes
>     content  => inline_template('<%= scope.to_hash.reject { |k,v| k.to_s =~ 
> /(uptime.*|last_run|manage_file_content|classvars|path|timestamp|free|.*password.*|.*psk.*|.*key)/
>  }.to_yaml %>'),
>   }
> 
> }
> 
> 
> 
> 
> -- 
> 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 post to this group, send email to [email protected].
> Visit this group at http://groups.google.com/group/puppet-users?hl=en.
> For more options, visit https://groups.google.com/groups/opt_out.
>  
>  

-- 
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 post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-users?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.


Reply via email to