I am pretty sure a composite namevar won't be necessary. It will just be a new 
param such as pkgname that, if not specified, would default to the resource 
title/name for backward compatibility.

Since we have the go ahead from Puppet, does anyone have the know-how to do 
this? I could try to hack on it but experience and time may be a factor. I'll 
gladly defer to someone with these qualities. :) Let's not let this die here!

On Mar 11, 2014, at 8:13 PM, "Trevor Vaughan" 
<tvaug...@onyxpoint.com<mailto:tvaug...@onyxpoint.com>> wrote:

If possible, I would love to see this done without a composite namevar.

The issue is that you're going to start ending up with variables *everywhere* 
to figure out what you're actually installing.

If possible, I would like the same 'title' but that should be smoothly combined 
with the provider.

That said, if it ends up being a composite namevar, that's not the end of the 
world. We just need to use a delimiter that isn't used in package names. An @ 
maybe? Something wide makes it easy to read. The cases where I used a composite 
namevar I used a plus. So, mysql+rpm, which is quite easy to scan.

package { "mysql@rpm": ... }

Trevor


On Tue, Mar 11, 2014 at 5:23 PM, Pedro Côrte-Real 
<pe...@pedrocr.net<mailto:pe...@pedrocr.net>> wrote:
On Tue, Mar 11, 2014 at 5:29 PM, Andy Parker 
<a...@puppetlabs.com<mailto:a...@puppetlabs.com>> wrote:
> Personally, I would be ok with yet another hack in puppet 3 to handle this
> issue since it has been coming up so often and since I also don't know a
> clear timeline for getting new functionality in to address this specific
> issue in a better way. And yes, my idealism is cracking :/

It's great to finally see traction on this. I still don't understand
why this is a hack though. This is what is broken:

package {"foo_deb":
  name => foo,
  provider => apt,
}
package {"foo_gem":
  name => foo,
  provider => gem,
}

But the only reason this doesn't work is that we used $name to
override the deb/gem name. This on the other hand would work fine:

exec {"foo_as_root":
  command => "/bin/foo",
  user => root,
}
exec {"foo_as_someuser":
  command => "/bin/foo",
  user => someuser,
}

Yet the only difference between the two cases is that we used $command
and not $name to override the default given by $title.

Package was designed assuming the meaningless tokens we pass to apt to
select debs have some relation to the meaningless tokens we pass to
gem to select gems. Most of the time this doesn't bite us because
names are reasonably unique. But then someone goes and uses "memcache"
for the server deb and the client gem. These are totally different
software packages that just happen to use the same token in two
different package systems. Using $title as the default meaningless
token is economical in terms of keystrokes but then just like with
Exec there needs to be a not unique $meaningless_token variable.

This is just a bug in Package, fixing it isn't a hack.

Pedro

--
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 
puppet-dev+unsubscr...@googlegroups.com<mailto:puppet-dev%2bunsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/CALprHx_tTEKX%3D-%2B3iZiDDiWOS0fp20fT91TV%3DpWpd92eRNtVSA%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.



--
Trevor Vaughan
Vice President, Onyx Point, Inc
(410) 541-6699
tvaug...@onyxpoint.com<mailto:tvaug...@onyxpoint.com>

-- This account not approved for unencrypted proprietary information --

--
You received this message because you are subscribed to a topic in the Google 
Groups "Puppet Developers" group.
To unsubscribe from this topic, visit 
https://groups.google.com/d/topic/puppet-dev/LatVZFUkwEM/unsubscribe.
To unsubscribe from this group and all its topics, send an email to 
puppet-dev+unsubscr...@googlegroups.com<mailto:puppet-dev+unsubscr...@googlegroups.com>.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/CANs%2BFoVJxr7FwwqZPhKuZ4RuHihkt1pTD6c-hsXjys7N-7LTag%40mail.gmail.com<https://groups.google.com/d/msgid/puppet-dev/CANs%2BFoVJxr7FwwqZPhKuZ4RuHihkt1pTD6c-hsXjys7N-7LTag%40mail.gmail.com?utm_medium=email&utm_source=footer>.
For more options, visit https://groups.google.com/d/optout.

-- 
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 puppet-dev+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/puppet-dev/838895FD-9C94-4C9F-9C21-E03CD176F9E4%40Buckle.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to