Issue #14527 has been updated by Stefan Schulte.
You can write standard ruby code inside an erb template and since ruby <1.9 does have an `id` method you do not get the expected results. But facts can (should) be accessed in erb templates as instance variables (see http://docs.puppetlabs.com/guides/templating.html#facts) so the following should work in your case: template: <pre> <%= @id %> </pre> ---------------------------------------- Bug #14527: id throws an error when used in a template https://projects.puppetlabs.com/issues/14527#change-63349 Author: Garrett Honeycutt Status: Unreviewed Priority: Normal Assignee: Category: Target version: Affected Puppet version: Keywords: id Branch: Error message <pre> /etc/puppetlabs/puppet/templates/motd.erb:17: warning: Object#id will be deprecated; use Object#object_id </pre> Reproduce with template <pre> <%= id %> </pre> manifest <pre> file { '/tmp/id_bug': content => template('/path/to/template.erb'), } </pre> Sample Output. This changes every run. <pre> -607180458 </pre> <pre> puppetversion => 2.7.12 (Puppet Enterprise 2.5.0) facterversion => 1.6.7 </pre> -- 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.
