Locally built mic-bootstrap using gbs cannot be used in mic. 76/151576/1
authorxiaojuan.mao <xiaojuan.mao@samsung.com>
Tue, 8 Aug 2017 08:26:19 +0000 (16:26 +0800)
committerxiaojuan.mao <xiaojuan.mao@samsung.com>
Thu, 21 Sep 2017 08:14:04 +0000 (16:14 +0800)
Change-Id: I9fe14df33b74670321ca302d1783f647e87c216d

mic/utils/misc.py
tests/test_configmgr.py [changed mode: 0644->0755]

index 5a9fac3..873ebbe 100755 (executable)
@@ -619,7 +619,8 @@ def get_metadata_from_repos(repos, cachedir):
                                  "proxies":proxies,
                                  "patterns":filepaths['patterns'],
                                  "comps":filepaths['comps'],
-                                 "repokey":repokey})
+                                 "repokey":repokey,
+                                 "priority":repo.priority})
 
     return my_repo_metadata
 
@@ -697,6 +698,7 @@ def get_arch(repometadata):
 
 def get_package(pkg, repometadata, arch = None):
     ver = ""
+    priority = 99
     target_repo = None
     if not arch:
         arches = []
@@ -714,6 +716,16 @@ def get_package(pkg, repometadata, arch = None):
             for elm in root.getiterator("%spackage" % ns):
                 if elm.find("%sname" % ns).text == pkg:
                     if elm.find("%sarch" % ns).text in arches:
+                        if repo["priority"] != None:
+                            tmpprior = int(repo["priority"])
+                            if tmpprior < priority:
+                                priority = tmpprior
+                                location = elm.find("%slocation" % ns)
+                                pkgpath = "%s" % location.attrib['href']
+                                target_repo = repo
+                                break
+                            elif tmpprior > priority:
+                                break
                         version = elm.find("%sversion" % ns)
                         tmpver = "%s-%s" % (version.attrib['ver'], version.attrib['rel'])
                         if tmpver > ver:
old mode 100644 (file)
new mode 100755 (executable)
index 2f15f10..08c3744
@@ -64,7 +64,8 @@ class ConfigMgrTest(unittest.TestCase):
              'primary': '%s/test/primary.sqlite' % cachedir,
              'proxies': None,
              'repokey': None,
-             'repomd': '%s/test/repomd.xml' % cachedir}]
+             'repomd': '%s/test/repomd.xml' % cachedir,
+             'priority': None}]
         self.configmgr._ksconf = KSCONF
         self.assertTrue(isinstance(self.configmgr.create['ks'], KickstartParser))
         #self.assertEqual(self.configmgr.create['name'], 'test')