On 01/15/2013 04:04 PM, Drew Fisher wrote:
> I'm working on a new provider for puppet 3.x and Solaris 11's dladm
> command. One of the subcommands is set-linkprop which is used to set
> various properties for networking links. The problem is there are
> dozens and dozens of properties that can be set depending on the type of
> link (physical or virtual) or what type of physical card is slotted on
> the system.
>
> I've been looking through some of the existing providers and the only
> thing that comes even remotely close is the ZFS provider. The problem
> with that provider is the list of possible properties is a hard-coded
> list. As stated above, I can't really do something like that.
>
> How can I design this provider, especially the exists? function, to
> handle a dynamic list of valid properties? I was thinking of setting
> the type to handle a manifest like:
>
> linkprop { /'linkname'/:
> ensure => present,
> properties => { propname1 => value1, propname2 => value2, .... },
> }
>
> The exists? function would need to keep track of each individual
> propname to pass off to create for later use. I'm assuming it's not an
> issue to keep a "processed" hash table, but is that the "right" way to
> do it? Is there a better way?
Why would you manage link property as a new resource? Why not manage it
simply as property of a resource 'link'?
--
Jakov Sosic
www.srce.unizg.hr