The Puppet Labs Issue Tracker has Moved: https://tickets.puppetlabs.com

This issue tracker is now in read-only archive mode and automatic ticket export has been disabled. Redmine users will need to create a new JIRA account to file tickets using https://tickets.puppetlabs.com. See the following page for information on filing tickets with JIRA:

Bug #18238

Upgrading multilib versions (i686 + x86_64) not working

Added by Jon Skarpeteig over 3 years ago. Updated almost 3 years ago.

Status:DuplicateStart date:
Priority:HighDue date:
Assignee:-% Done:

0%

Category:-
Target version:-
Affected Puppet version:2.6.17 Branch:
Keywords:CentOS, multilib

We've Moved!

Ticket tracking is now hosted in JIRA: https://tickets.puppetlabs.com


Description

CentOS 6.3 using Puppet client from epel repo:

$pkg_name = ["libtiff.i686", "libtiff.x86_64"]
package {
        $pkg_name :
            ensure => "latest"
    }

Result:

err: /Stage[main]/Buildserverclass/Package[libtiff.x86_64]/ensure: change from 3.9.4-6.el6_3 to 3.9.4-9.el6_3 failed: 
Could not update: Execution of '/usr/bin/yum -d 0 -e 0 -y install libtiff.x86_64' returned 1: Error: Protected multilib versions: 
libtiff-3.9.4-9.el6_3.x86_64 != libtiff-3.9.4-6.el6_3.i686
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
 at /etc/puppet/manifests/profiles.pp:187

err: /Stage[main]/Buildserverclass/Package[libtiff.i686]/ensure: change from 3.9.4-6.el6_3 to 3.9.4-9.el6_3 failed: 
Could not update: Execution of '/usr/bin/yum -d 0 -e 0 -y install libtiff.i686' returned 1: Error: Protected multilib versions: 
libtiff-3.9.4-9.el6_3.i686 != libtiff-3.9.4-6.el6_3.x86_64
 You could try using --skip-broken to work around the problem
 You could try running: rpm -Va --nofiles --nodigest
 at /etc/puppet/manifests/profiles.pp:187

Using

    $pkg_name = ["libtiff"]

Gives same result (but only for x86_64)

Expected behavior:

yum install libtiff.i686 libtiff.x86_64 -y

Which successfully upgrades the library when run at the OS level.


Related issues

Duplicates Puppet - Feature #2198: Install multiple package within a single call to the pack... Investigating 04/25/2009

History

#1 Updated by Jon Skarpeteig over 3 years ago

Am I blind, or is there no way to edit the initial bug to get formatting right?

#2 Updated by eric sorenson over 3 years ago

  • Status changed from Unreviewed to Duplicate

Description editing is under the “More” link on “Change properties” when you update the bug. (I believe this is accessible to the bug originator but I could be wrong)

I’m not sure how to make this work in puppet as it is today. Putting the two package names in an array does not do the same thing as your commandline (run them both in one yum/rpm transaction); it generates two different transactions, hence the error. This is in essence bug #2198. You could work around the problem by using an exec resource:

exec { 'install_libtiff':
  path => '/bin:/sbin:/usr/bin:/usr/sbin',
  command => 'yum -y install libtiff.i686 libtiff.x86_64',
  unless => 'rpm -qa | grep -q libtiff'
}

This is a duplicate of #2198, so I am closing this ticket in favor of the older one. Please add yourself as a watcher on that ticket to track the progress of the fix.

#3 Updated by eric sorenson almost 3 years ago

  • Description updated (diff)

Also available in: Atom PDF