On Sep 25, 2010, at 10:02 AM, Nigel Kersten wrote: > On Fri, Sep 24, 2010 at 12:34 PM, Nan Liu <n...@puppetlabs.com> wrote: >> On Fri, Sep 24, 2010 at 11:20 AM, Nigel Kersten <nig...@google.com> wrote: >>> eg the proposal is that if you don't specify the protocol, server >>> address, modules prefix, module name, it is assumed you are referring >>> to a file path relative to the 'files' subdirectory of the current >>> module. >>> >>> If you wish to fully specify the source URI, you're free to do so. >> >> Since we can determine module_name in 2.6, I agree with this change. >> But we should update template behavior so it's the same as file. >> Currently for templates: >> >> content => template("foo.erb"), > > Ah I missed addressing this point. > > I don't think we can do this and still have backwards compatibility. > > How do you tell whether 'foo/bar.erb' refers to 'foo' the module or a > subdirectory 'foo' in the current module? Which should take > precedence? How do we throw a deprecation warning? > > I don't think we can feasibly forbid references to templates outside > the current module. That would have a significant effect upon our > ability to share modules. > > With the benefit of hindsight, we should possibly have made the source > parameter, file function and template function consistent... > > Can we get there from here?
What about instead defining something uncommon to be "module root". Something like, as a random example, "~/". Then the syntax goes from "file:///modules/$modulename/file" to "~/file". -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To post to this group, send email to puppet-us...@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.