Issue #1238 has been updated by Gerard Bernabeu.
Status changed from Closed to Re-opened
Target version set to 3.x
Hi,
first of all sorry for my late answer. The issue is not really resolved, and
here's how to reproduce it with puppetlabs yum repo and puppet-3.0.1-1 in both
server and client.
Puppet code:
package { 'puppetlabs-release':
ensure => 'present',
provider => 'rpm',
source =>
"http://yum.puppetlabs.com/el/${lsbmajdistrelease}/products/x86_64/puppetlabs-release-${lsbmajdistrelease}-7.noarch.rpm",
}
yumrepo { #We use a local repo, which should only get updated if really
necessary. No priority set, so will use the default 99 (lowest priority), as
well as epel
'puppetlabs-products':
enabled => "0",
require => Package['puppetlabs-release'],;
'puppetlabs-deps':
enabled => "0",
require => Package['puppetlabs-release'],;
}
To successfully reproduce it one must make sure there's no puppetlabs-* repo
before:
[root@fcl-puppet ~]# yum -y remove puppetlabs-release; rm -f
/etc/yum.repos.d/puppetlabs-*; yum clean all; ls /etc/yum.repos.d/puppet*
Loaded plugins: fastestmirror, priorities, protectbase, security
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package puppetlabs-release.noarch 0:6-7 will be erased
--> Finished Dependency Resolution
Repository 'puppetlabs-deps' is missing name in configuration, using id
Repository 'puppetlabs-products' is missing name in configuration, using id
Repository puppetlabs-products is listed more than once in the configuration
Repository puppetlabs-deps is listed more than once in the configuration
puppetlabs-deps-fermi
| 1.9 kB 00:00
puppetlabs-products-fermi
| 1.9 kB 00:00
Dependencies Resolved
=============================================================================================================================================================
Package Arch
Version Repository Size
=============================================================================================================================================================
Removing:
puppetlabs-release noarch
6-7 installed 2.9 k
Transaction Summary
=============================================================================================================================================================
Remove 1 Package(s)
Installed size: 2.9 k
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Warning: RPMDB altered outside of yum.
Erasing : puppetlabs-release-6-7.noarch
1/1
Verifying : puppetlabs-release-6-7.noarch
1/1
Removed:
puppetlabs-release.noarch 0:6-7
Complete!
Loaded plugins: fastestmirror, priorities, protectbase, security
Cleaning repos: epel-fermi fermigrid osg-fermi slf slf-security
Cleaning up Everything
Cleaning up list of fastest mirrors
ls: cannot access /etc/yum.repos.d/puppet*: No such file or directory
[root@fcl-puppet ~]# puppet agent --test
Info: Retrieving plugin
Info: Loading facts in /etc/puppet/modules/stdlib/lib/facter/root_home.rb
Info: Loading facts in /etc/puppet/modules/stdlib/lib/facter/puppet_vardir.rb
Info: Loading facts in /etc/puppet/modules/stdlib/lib/facter/pe_version.rb
Info: Loading facts in /etc/puppet/modules/stdlib/lib/facter/facter_dot_d.rb
Info: Loading facts in
/etc/puppet/modules/postgresql/lib/facter/postgres_default_version.rb
Info: Loading facts in /etc/puppet/modules/puppet/lib/facter/etckepper_puppet.rb
Info: Loading facts in /etc/puppet/modules/firewall/lib/facter/iptables.rb
Info: Loading facts in /var/lib/puppet/lib/facter/etckepper_puppet.rb
Info: Loading facts in /var/lib/puppet/lib/facter/iptables.rb
Info: Loading facts in /var/lib/puppet/lib/facter/root_home.rb
Info: Loading facts in /var/lib/puppet/lib/facter/puppet_vardir.rb
Info: Loading facts in /var/lib/puppet/lib/facter/postgres_default_version.rb
Info: Loading facts in /var/lib/puppet/lib/facter/pe_version.rb
Info: Loading facts in /var/lib/puppet/lib/facter/facter_dot_d.rb
Info: Caching catalog for fcl-puppet.mysite.com
Info: Applying configuration version '1366658163'
/Stage[pre]/Yum::Repos::Puppet/Package[puppetlabs-release]/ensure: created
Info: create new repo puppetlabs-deps in file
/etc/yum.repos.d/puppetlabs-deps.repo
/Stage[pre]/Yum::Repos::Puppet/Yumrepo[puppetlabs-deps]/enabled: enabled
changed '' to '0'
Info: changing mode of /etc/yum.repos.d/puppetlabs-deps.repo from 600 to 644
Info: create new repo puppetlabs-products in file
/etc/yum.repos.d/puppetlabs-products.repo
/Stage[pre]/Yum::Repos::Puppet/Yumrepo[puppetlabs-products]/enabled: enabled
changed '' to '0'
Info: changing mode of /etc/yum.repos.d/puppetlabs-products.repo from 600 to 644
Finished catalog run in 8.48 seconds
Now if we look at what happened at the repo level:
[root@fcl-puppet ~]# ls /etc/yum.repos.d/puppet*
/etc/yum.repos.d/puppetlabs-deps.repo
/etc/yum.repos.d/puppetlabs-products.repo /etc/yum.repos.d/puppetlabs.repo
[root@fcl-puppet ~]# cat /etc/yum.repos.d/puppetlabs-deps.repo
[puppetlabs-deps]
enabled=0
[root@fcl-puppet ~]# cat /etc/yum.repos.d/puppetlabs-products.repo
[puppetlabs-products]
enabled=0
[root@fcl-puppet ~]# cat /etc/yum.repos.d/puppetlabs.repo
[puppetlabs-products]
name=Puppet Labs Products El 6 - $basearch
baseurl=http://yum.puppetlabs.com/el/6/products/$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
enabled=1
gpgcheck=1
[puppetlabs-deps]
name=Puppet Labs Dependencies El 6 - $basearch
baseurl=http://yum.puppetlabs.com/el/6/dependencies/$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
enabled=1
gpgcheck=1
[puppetlabs-devel]
name=Puppet Labs Devel El 6 - $basearch
baseurl=http://yum.puppetlabs.com/el/6/devel/$basearch
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
enabled=0
gpgcheck=1
[puppetlabs-products-source]
name=Puppet Labs Products El 6 - $basearch - Source
baseurl=http://yum.puppetlabs.com/el/6/products/SRPMS
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
failovermethod=priority
enabled=0
gpgcheck=1
[puppetlabs-deps-source]
name=Puppet Labs Source Dependencies El 6 - $basearch - Source
baseurl=http://yum.puppetlabs.com/el/6/dependencies/SRPMS
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
enabled=0
gpgcheck=1
[puppetlabs-devel-source]
name=Puppet Labs Devel El 6 - $basearch - Source
baseurl=http://yum.puppetlabs.com/el/6/devel/SRPMS
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-puppetlabs
enabled=0
gpgcheck=1
So this is not behaving as I'd expect.
Thanks,
Gerard
----------------------------------------
Bug #1238: strange yumrepo/package interaction
https://projects.puppetlabs.com/issues/1238#change-89801
* Author: BMDan -
* Status: Re-opened
* Priority: Normal
* Assignee: Charlie Sharpsteen
* Category: yumrepo
* Target version: 3.x
* Affected Puppet version:
* Keywords:
* Branch:
----------------------------------------
Yumrepo appears to be checking file existence before allowing the package
command to complete, meaning that it creates a file containing only "[remi]"
and "enabled=1", overwriting the file that the RPM installed.
Manifests, additional debug output, etc., available upon request. Just tell me
what you need to know. Workarounds especially welcomed. Puppet v. 0.24.4,
running with --debug --test, on Ruby 1.8.6.114-1, compiled from source with
default options.
<pre>
debug: //Node[default]/remi_enabled/Yumrepo[remi]/require: requires
Package[remi-release-5-4.el5.remi]
</pre>
...
<pre>
debug: Puppet::Type::Package::ProviderRpm: Not suitable: false value
debug: Puppet::Type::Package::ProviderRpm: Executing '/bin/rpm -q
remi-release-5-4.el5.remi --nosignature --nodigest --qf %{NAME}
%|EPOCH?{%{EPOCH}}:{0}| %{VERSION} %{RELEASE} %{ARCH}'
debug: /Package[remi-release-5-4.el5.remi]: Changing ensure
debug: /Package[remi-release-5-4.el5.remi]: 1 change(s)
debug: Puppet::Type::Package::ProviderRpm: Executing '/bin/rpm -i --oldpackage
http://rpms.famillecollet.com/el5.x86_64/remi-release-5-4.el5.remi.noarch.rpm'
notice: /Package[remi-release-5-4.el5.remi]/ensure: created
info: create new repo remi in file /etc/yum.repos.d/remi.repo
debug: //Node[default]/remi_enabled/Yumrepo[remi]: Changing enabled
debug: //Node[default]/remi_enabled/Yumrepo[remi]: 1 change(s)
notice: //Node[default]/remi_enabled/Yumrepo[remi]/enabled: defined 'enabled'
as '1'
info: Filebucket[/var/lib/puppet/clientbucket]: Adding
/etc/yum.repos.d/remi.repo(18f7009978e772c9c646b9410fa3a8b6)
</pre>
--
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 unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/puppet-bugs?hl=en.
For more options, visit https://groups.google.com/groups/opt_out.