]> code.ossystems Code Review - openembedded-core.git/commitdiff
package_manager.py: RpmPM: don't add smart channel if already added
authorLaurentiu Palcu <laurentiu.palcu@intel.com>
Mon, 3 Mar 2014 09:43:31 +0000 (11:43 +0200)
committerRichard Purdie <richard.purdie@linuxfoundation.org>
Wed, 5 Mar 2014 15:24:05 +0000 (15:24 +0000)
Make sure the channel was not already added, before attempting to add.

[YOCTO #5890]

Signed-off-by: Laurentiu Palcu <laurentiu.palcu@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
meta/lib/oe/package_manager.py

index 6c133c37c91c90791243e8cecf74110616c736cd..ee42952046d268eaee412b302a9bd7ec74b66b5b 100644 (file)
@@ -604,11 +604,11 @@ class RpmPM(PackageManager):
         # self._invoke_smart('config --set rpm-log-level=debug')
         # cmd = 'config --set rpm-log-file=/tmp/smart-debug-logfile'
         # self._invoke_smart(cmd)
-
+        ch_already_added = []
         for canonical_arch in platform_extra:
             arch = canonical_arch.split('-')[0]
             arch_channel = os.path.join(self.deploy_dir, arch)
-            if os.path.exists(arch_channel):
+            if os.path.exists(arch_channel) and not arch in ch_already_added:
                 bb.note('Note: adding Smart channel %s (%s)' %
                         (arch, channel_priority))
                 self._invoke_smart('channel --add %s type=rpm-md baseurl=%s -y'
@@ -617,6 +617,8 @@ class RpmPM(PackageManager):
                                    (arch, channel_priority))
                 channel_priority -= 5
 
+                ch_already_added.append(arch)
+
         bb.note('adding Smart RPM DB channel')
         self._invoke_smart('channel --add rpmsys type=rpm-sys -y')