On Mon, Aug 1, 2011 at 12:16 PM, Daniel Pittman <[email protected]> wrote:

> I can't honestly say if I like this as an interim step on the way: it
> gives us the capability now, and cheaply, which is pretty darn
> awesome.  We would really benefit from some uniform way to do this,
> and it would let us test kwalify in the real world.

I agree.  Shippable solutions win over perfect designs.

However, I share Daniel's concerns about the schema being a separate
file, particularly if we're going to ship modules with this.  For
someone new to the idea, there's no visible connection between a
`validate_resource()` call and a schema file.  Inline comments might
help ameliorate this (e.g., "This function loads a .schema file in the
current directory"), but that's a fragile approach.

What if we included the schema in the manifest within the
`validate_resource()` call?  This would make the connection more
explicit and avoid an extra file (and extra file /type/, which worries
me at least as much).

It would make manifests which use it larger, but I prefer ugly and
explicit communication over elegant and obfuscated[1].

Once we ship this we can work on a syntax to bring it into the
language and make the full schema obsolete.  I imagine this wouldn't
land until Telly, so we have some time.

r

----

1. Not to imply that your current approach, Ken, is intentionally obfuscated :)

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Developers" 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-dev?hl=en.

Reply via email to