I've been doing like this. (Don't know if it is the better ways.. but.. :))

if ($operatingsystemrelease >= 4) and ($operatingsystemrelease < 5) {
 $release = "el4"
}
else {
 if ($operatingsystemrelease >= 5) and ($operatingsystemrelease < 6) {
$release = "el5"
 }
}

package { abc: ensure => "0.25.5-1.${release}" }

PS.: I am running puppet 0.25.x in 2.6 I believe there is a elsif or
something like that...

Gus

On Wed, Aug 11, 2010 at 1:52 PM, Nigel Kersten <nig...@google.com> wrote:

> On Wed, Aug 11, 2010 at 9:48 AM, Nan Liu <n...@puppetlabs.com> wrote:
> > On Wed, Aug 11, 2010 at 11:55 AM, Jason Amato <amato_ja...@yahoo.com>
> wrote:
> >>
> >> How can I create a class to install a RPM based on the o/s type and
> >> the o/s release.
> >> I want to install a package on SLES, but only if it's release 11, not
> >> 10.
> >>
> >
> > I suppose you can write nested if statements. Not sure if there are other
> > more elegant methods. Assuming facter $operatingsystemrelease for SLES 11
> > returns 11.x,  is this what you are looking for?
> >
> > $os_release = "${operatingsystem}-${operatingsystemrelease}"
> >
> > $pkg = ${os_release} ? {
> >   /^OEL-/ =>  redhat-lsb,
> >   /^SLES-11./ =>  lsb,
> >   default =>  redhat-lsb,
> > }
> >
> > package { $pkg:
> >   ensure => installed,
> > }
>
> Won't that try to install 'redhat-lsb' on SLES 10 ?
>
> I think you want
>
> ensure => undef
>
> for SLES 10 if you truly want to not manage it.
>
> I tend to be more of a fan of explicit conditional statements outside
> resource definitions these days, nested selectors are harder to parse
> quickly, and now we have decent conditional logic, it's much easier.
>
>
>
> >
> > Thanks,
> >
> > Nan
> >
> > --
> > 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<puppet-users%2bunsubscr...@googlegroups.com>
> .
> > For more options, visit this group at
> > http://groups.google.com/group/puppet-users?hl=en.
> >
>
>
>
> --
> nigel
>
> --
> 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<puppet-users%2bunsubscr...@googlegroups.com>
> .
> For more options, visit this group at
> http://groups.google.com/group/puppet-users?hl=en.
>
>

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