On May 3, 2010, at 7:22 AM, Daniel Pittman wrote:

G'day.

I have a problem. Mostly a theoretical problem, granted, but a problem:

We have machines with a variety of hardware RAID controllers, and some that don't have one at all. We want these monitored, which usually involves some
vendor-specific binary blob, plus support code, installed and running.

Supporting *a* RAID controller isn't too hard; I have a fact that pulls that
out and lets me install the right support.

In the event we got two RAID controllers in a single machine (or,
theoretically, I run into this elsewhere), how would I best go about this?

As far as I can tell, this doesn't work; it matches nothing, ever:

   $test = ['one', 'two']
   case $test {
       'one': { ... }
       'two': { ... }
   }

So, how can I make decisions about the content of that array?

My best guess, right now, is that I would need to use a define, then expand that using the array as the name, and have the content perform the case
statement to include the appropriate class.  Ick.

 define what_a_nasty_hack () {
     case $name {
         'one': { ... }
         'two': { ... }
     }
 }

 what_a_nasty_hack { $test: }


Anyway, is there a better way to handle this that I can't see right now, or is
this perhaps something that the language could stand enhancing?

It probably is a deserved language enhancement, but in the short term a function is your best bet.

--
Getting caught is the mother of invention. --Robert Byrne
---------------------------------------------------------------------
Luke Kanies  -|-   http://puppetlabs.com   -|-   +1(615)594-8199

--
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.

Reply via email to