Hi -- I've been looking at the Solaris zones type and provider, and evaluating how to add some additional support to it. I'm interested in putting this back into the puppet code base at some point in the future.
I've been experimenting with creating an ERB template, using that to populate a zone configuration property, and then passing that in as a parameter to the provider. I've done a bit of prototyping to test it. By doing it this way, it reduces the code in the type and the provider significantly. I started to look at the ERB template as a solution for a couple of reasons. First, there are a lot of zone configuration parameters/properties that aren't currently defined in the zone type. The way the provider is implemented, for each new property that need to be managed, there is a corresponding function call that has to be implemented (either def_prop or def_multi_prop). Currently, each property is hard coded in the provider in multiple places. This could pose a bit of a maintenance problem (IMHO). By implementing with an ERB template, I've eliminated most of the properties in the type by defining them in the template. I then use the template to populate a zone configuration parameter, and use that parameter to generate the zone configuration in the provider. My initial question....is having most of the work done through an ERB template acceptable as a solution, rather than defining the properties in the type? The way I envision it, there would be a separate ERB template for Solaris 10, Solaris 11, and so on. This moves the creation of the zone configuration data out of the provider, which simplifies the code. I'm interested in getting feedback, since I'm pretty new to Puppet. Any thoughts about this are appreciated. Thanks, Ginnie -- You received this message because you are subscribed to the Google Groups "Puppet Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/puppet-dev?hl=en. For more options, visit https://groups.google.com/groups/opt_out.
