Issue #1652 has been updated by Mark Frost.
I just ran into this issue myself, on 2.7.12. Looks like it's still lingering.
I was trying to use the "range" function that comes with puppetlabs_stdlib to
create a large number of resources semi-automagically. As such:
bacula::vchanger::device {
range("0", "45"):
}
And encountered the exact error reported by the OP.
Reassigning the value to a variable first changed the error message, but still
didn't work. The new error was:
Failed to parse template bacula/device.erb: undefined method `empty?' for
1:Fixnum
----------------------------------------
Bug #1652: custom function not usable as name parameter of a define
https://projects.puppetlabs.com/issues/1652#change-68528
Author: Grumpus the Cat
Status: Accepted
Priority: Normal
Assignee:
Category: plumbing
Target version:
Affected Puppet version: 0.24.5
Keywords:
Branch:
I posted the question below on the puppet-users mailing list about
a week ago. I apologize for not opening an issue sooner:
On Oct 3, 2008, at 2:02 PM, Grumpus wrote:
>
>
> Using puppet 0.24.5 (server and client). I've written a trivial custom
> function:
>
> module Puppet::Parser::Functions
> newfunction(:seq, :type => :rvalue) do |args|
> (args[0].to_i .. args[1].to_i).to_a
> end
> end
>
> It seems to work as I expect when used as an rvalue in assignment to
> a variable:
>
> $somelist = seq(0, 10)
>
> But I get errors if I use it in this context:
>
>
> somedef { seq(0, 10):
> foo => bar,
> }
>
> I get an error like:
>
> err: Could not retrieve catalog: Could not parse for environment
> production: Syntax error at ':'; expected '}' at
> /etc/puppet/manifests/site.pp:34
>
> Is this expected? A bug?
This is a bug; the resource name is apparently set up to be more
restrictive than it needs to be.
--
Basic research is what I am doing when I don't know what I am doing.
--Wernher von Braun
---------------------------------------------------------------------
Luke Kanies | http://reductivelabs.com | http://madstop.com
--
You have received this notification because you have either subscribed to it,
or are involved in it.
To change your notification preferences, please click here:
http://projects.puppetlabs.com/my/account
--
You received this message because you are subscribed to the Google Groups
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/puppet-bugs?hl=en.