Issue #14660 has been updated by Evgeny Dudin.

Assignee changed from Evgeny Dudin to James Turnbull

Many thanks for the quick reply.
Ok, so here is the story. I maintain this gems in my custom repository, and I 
want puppet to update the gem on the box, once I've pushed a new version of gem 
to the repo.
The box has 0.6.1 version of gem installed currently. I've pushed 0.6.2 version 
to the repo. The public repository contains "official" 0.6.0 version.
When I declare package with my custom repo as a source and say  "ensure => 
latest", I expect puppet to run:
`/usr/bin/gem list --remote --source http://mylocalrepo/gem-repository/ moneta$ 
` and get my new 0.6.2 custom version as latest, but instead of that I can see 
`/usr/bin/gem list --remote  moneta$ ` which pulls latest version from the 
public repo (0.6.0) and I am getting downgrade 0.6.1 -> 0.6.0
Here is the part of the output I am getting
<pre>
debug: Puppet::Type::Package::ProviderGem: Executing '/usr/bin/gem list 
--remote moneta$'
debug: /Stage[main]/Trocla/Package[moneta]/ensure: moneta ["0.6.1"] is 
installed, latest is "0.6.0"
notice: /Stage[main]/Trocla/Package[moneta]/ensure: current_value 0.6.1, should 
be 0.6.0 (noop)
</pre>
but I expect 
<pre>
current_value 0.6.1, should be 0.6.2 (noop)
</pre>

----------------------------------------
Bug #14660: package provider gem does not use the specified source if ensure => 
latest
https://projects.puppetlabs.com/issues/14660#change-63558

Author: Evgeny Dudin
Status: Needs More Information
Priority: Normal
Assignee: James Turnbull
Category: package
Target version: 
Affected Puppet version: 2.7.14
Keywords: gem,latest,source
Branch: 


I have a local gem repository where I put my gems. In the manifest I specify a 
package with ensure => latest and explicitly set the source
<pre>
class trocla {
    package { "moneta":
        ensure      => "latest",
        provider    => "gem",
        source      => "http://mylocalrepo/gem-repository/";,
    }
}
</pre>
In spite of that, puppet does not use my repo to fetch the list of available 
gems (which is confusing - if I explicitly specify my custom repository, I 
expect this package to be pulled from this particular repository).

This can be seen in the output puppet with --debug option:
`debug: Puppet::Type::Package::ProviderGem: Executing '/usr/bin/gem list 
--remote moneta$'`
  As you can see --source option is missing here



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
http://projects.puppetlabs.com/my/account

-- 
You received this message because you are subscribed to the Google Groups 
"Puppet Bugs" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/puppet-bugs?hl=en.

Reply via email to