3ba62f5d025ad94714ef5c0c028af0010a8334b0
[archive/20170607/tools/tic-core.git] / tic / command.py
1 import base64
2 from tic.dependency import analyze_dependency
3 from tic.parser.repo_parser import RepodataParser
4 from tic.parser.view_parser import make_view_data
5
6 from tic.repo import Repo
7 from tic.repo import get_repodata_from_repos
8
9
10 DEFAULT_CACHEDIR = '/var/tmp/tic-core/cached'
11
12 def analyze(repo_list, recipe_list=None):
13     repos = []
14     for repo_url in repo_list:
15         repos.append(Repo(base64.urlsafe_b64encode(repo_url), repo_url))
16     
17     #Download repodata from repositories (Remote/Local)
18     repodata_list = get_repodata_from_repos(repos, DEFAULT_CACHEDIR)
19     
20     # Parse the xml files for the analysis of package (.rpm)
21     repo_parser = RepodataParser(repodata_list)
22     pkg_group = repo_parser.parse()
23     #print('pkg_list:', len(pkg_group['pkg_list']), ', pkg2id:', len(pkg_group['pkg2id']))
24     
25     # package install-dependency analysis
26     analyze_dependency(pkg_group)
27     # Make a data for TIC (Tizen image creation)
28     view_data = make_view_data(pkg_group)
29     
30     return view_data