treydock
2014-Sep-23 02:19 UTC
[Puppet Users] Puppet 3.6.2 package gem provider unable to update r10k gem
I have Puppet 3.6.2 on CentOS 7 server acting as Puppetmaster. I had r10k 1.2.1 installed and I changed my ensure to 1.3.4. My other Puppetmaster running CentOS 6 had no problem with this (except for NOTICE output being printed as an error). The CentOS 7 system fails with the following: Debug: Executing '/usr/bin/gem install -v 1.3.4 --no-rdoc --no-ri r10k ' Error: Could not update: Execution of '/usr/bin/gem install -v 1.3.4 --no-rdoc --no-ri r10k ' returned 1: ERROR: Can't use --version w/ multiple gems. Use name:ver instead. <snip trace output> Error: /Stage[main]/R10k::Install/Package[r10k]/ensure: change from ["1.2.1"] to 1.3.4 failed: Could not update: Execution of '/usr/bin/gem install -v 1.3.4 --no-rdoc --no-ri r10k ' returned 1: ERROR: Can't use --version w/ multiple gems. Use name:ver instead. If I run that "gem install" command outside Puppet, on the same server, it works just fine. # /usr/bin/gem install -v 1.3.4 --no-rdoc --no-ri r10k Fetching: r10k-1.3.4.gem (100%) NOTICE ===== If you are upgrading from 1.1.0 and are using multiple sources, please read this. (If not, feel free to continue with your regularly scheduled day.) GH-48 (https://github.com/adrienthebo/r10k/issues/48) introduced the ability for environments to be prefixed with the source name so that multiple sources installed into the same directory would not overwrite each other. However prefixing was automatically enabled and would break existing setups where multiple sources were cloned into different directories. Because this introduced a breaking change, SemVer dictates that the automatic prefixing has to be rolled back. Prefixing can be enabled but always defaults to off. If you are relying on this behavior you will need to update your r10k.yaml to enable prefixing on a per-source basis. Please see the issue (https://github.com/adrienthebo/r10k/issues/48) for more information. Successfully installed r10k-1.3.4 1 gem installed # echo $? 0 - Trey -- You received this message because you are subscribed to the Google Groups "Puppet Users" group. To unsubscribe from this group and stop receiving emails from it, send an email to puppet-users+unsubscribe@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/puppet-users/b3dbd100-1a14-4b79-a41b-a11950761355%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.