In Puppet 3.5's future parser there is a new type system that makes it much easier to write validation logic for parameters (and much more). I have written a series of blog posts about the new type system - and this post is just an index to the series.
It works best if they are read in the order they were published:
- What Type of Type are you - introduction
- Type Hierarchy and Scalars - the basic types and overview of all types
- Lets talk about Undef - about undefined, emptiness and collections
- Variant, Data, and Type - and a bit of Type Theory
- Class and Resource Types
- Operations on Type
- Adding Struct and Tuple - two late additions to the type system
- Stdlib Functions vs. Future Parser/Evaluator - a comparison of (mostly) Type related stdlib functions and the alternative operations available when using the future parser/evaluator
- Optionally Typed Parameters - How to use the type system to get automatic type checking (and more).
- The Puppet 4.0.0 type system changes - an update on recent changes/additions to the type system.
I will update this index blog post when there are new posts in the series. Also, if there are changes to the implementation, I will try to keep the blog posts updated.
There are also posts about the Puppet Type System's Ruby API. These posts are for those that contribute to Puppet itself or write plugins.
- Puppet Type System Ruby API - overview of the API
- Integer Type Ruby API - using Integer range
New post in this series shows how to do type operations with future parser as an alternative to using the functions in stdlib,
ReplyDeletePost updated with links to the Puppet Type System Ruby API posts.
ReplyDeleteNice post!
ReplyDeletePost updated with a link to "The Puppet 4.0.0 type system changes" which describes some recent updates to the type system.
ReplyDelete