my puppet version is 2.6.2 2011/2/13 Nan Liu <n...@puppetlabs.com>
> On Sat, Feb 12, 2011 at 9:06 AM, flex <frostyn...@gmail.com> wrote: > > This is my puppet script: > > modules/redarrow/manifests/add.pp: > > define redarrow::add($type = "file") { > > file { "/etc/redarrow.conf/$name.conf": > > owner => "root", > > group => "root", > > mode => 644, > > source => $type ? { > > "file" => > "puppet:///modules/$caller_module_name/redarrow.conf", > > default => undef, > > }, > > content => $type ? { > > "template" => template("$caller_module_name/redarrow.erb"), > > default => undef, > > }, > > } > > } > > modules/portage/manifests/init.pp: > > redarrow::add {test_portage: } > > Result: > > > (/Stage[main]/Portage/Redarrow::Add[test_portage]/File[/etc/redarrow.conf/test_portage.conf]) > > Could not evaluate: Error 400 on SERVER: Invalid module name; module > names > > must be alphanumeric (plus '-'), not 'redarrow.conf' Could not retrieve > file > > metadata for puppet:///modules//redarrow.conf: Error 400 on SERVER: > Invalid > > module name; module names must be alphanumeric (plus '-'), not > > 'redarrow.conf' at /home/flex/puppet/modules/redarrow/manifests/add.pp:14 > > What version of puppet are you using? This is limited to 2.6.x. > > > It seems that the variable $caller_module_name is not set, then i found > > another stange thing, i got what i want like this: > > define redarrow::add($module = $name, $type = "file") { > > file { "/etc/redarrow.conf/$name.conf": > > owner => "root", > > group => "root", > > mode => 644, > > source => $type ? { > > "file" => "puppet:///modules/$module/redarrow.conf", > > default => undef, > > }, > > content => $type ? { > > "template" => template("$module/redarrow.erb"), > > default => undef, > > }, > > } > > } > > the $name in varaible list of the define is not the same as the $name > below > > which is the resource name, it is this a bug or a hidden feature? > > $name is in scope within {..}. However this is fixed in 5061 which > will be released in 2.6.5 (currently rc2): > http://projects.puppetlabs.com/issues/5061 > > Thanks, > > Nan > > -- > 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. > > -- System Administrator, Focus on System Management and Basic Development -- 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.