[TIC-CORE] provides default-recipe for 1st-release
[archive/20170607/tools/tic-core.git] / tic / repo.py
index 6a28659..faeb817 100644 (file)
@@ -22,8 +22,8 @@
 import logging
 import os
 import base64
-import collections
 import hashlib
+import collections
 from lxml import etree
 from tic.utils import file
 from tic.utils import process
@@ -48,7 +48,7 @@ def _get_metadata_from_repo(baseurl, proxies, cachedir, reponame, filename,
                             sumtype=None, checksum=None):
     logger = logging.getLogger(__name__)
     url = os.path.join(baseurl, filename)
-    filename_tmp = str("%s/%s/%s" % (cachedir, reponame, os.path.basename(filename)))
+    filename_tmp = str("%s/%s" % (cachedir, os.path.basename(filename)))
     if os.path.splitext(filename_tmp)[1] in (".gz", ".bz2"):
         filename = os.path.splitext(filename_tmp)[0]
     else:
@@ -74,9 +74,9 @@ def _get_metadata_from_repo(baseurl, proxies, cachedir, reponame, filename,
 def get_repodata_from_repos(repos, cachedir):
     my_repodata = []
     for repo in repos:
-        reponame = repo.name
-        baseurl = repo.baseurl
-        cache_dir = os.path.join(cachedir, reponame)
+        reponame = repo.get('name')
+        baseurl = repo.get('url')
+        cache_dir = os.path.join(cachedir, base64.urlsafe_b64encode(baseurl))
         cache_file = os.path.join(cache_dir, 'repomd.xml')
         
         # make directory for caching
@@ -119,7 +119,7 @@ def get_repodata_from_repos(repos, cachedir):
                 continue
             filepaths[item] = _get_metadata_from_repo(baseurl,
                                                       None,
-                                                      cachedir,
+                                                      cache_dir,
                                                       reponame,
                                                       filepaths[item],
                                                       sumtypes[item],
@@ -129,7 +129,7 @@ def get_repodata_from_repos(repos, cachedir):
                             "baseurl":baseurl,
                             "repomd":repomd,
                             "primary":filepaths['primary'],
-                            "cachedir":cachedir,
+                            "cachedir":cache_dir,
                             "proxies":None,
                             "patterns":filepaths['patterns'],
                             "comps":filepaths['comps']})
@@ -137,7 +137,7 @@ def get_repodata_from_repos(repos, cachedir):
     return my_repodata
 
 
-RepoType = collections.namedtuple('Repo', 'name, baseurl')
+RepoType = collections.namedtuple('Repo', 'name, url')
 def Repo(name, baseurl):
     return RepoType(name, baseurl)
 
@@ -145,8 +145,8 @@ if __name__ == '__main__':
     repo_url_1 = 'https://download.tizen.org/snapshots/tizen/base/latest/repos/arm64/packagesaaa'
     repo_url_2 = 'https://download.tizen.org/snapshots/tizen/mobile/latest/repos/arm64-wayland/packages'
     repos = []
-    repos.append(Repo(base64.urlsafe_b64encode(repo_url_1), repo_url_1))
-    repos.append(Repo(base64.urlsafe_b64encode(repo_url_2), repo_url_2))
+    repos.append(Repo('repo_1', repo_url_1))
+    repos.append(Repo('repo_2', repo_url_2))
     cachedir = '/var/tmp/tic-core/cached'
     repodata = get_repodata_from_repos(repos, cachedir)
     print(repodata)