[TIC-CORE] support local repository
[archive/20170607/tools/tic-core.git] / tic / parser / recipe_parser.py
index c506bbd..a830cb3 100644 (file)
@@ -26,6 +26,7 @@ import os
 from tic.utils import error
 from tic.utils.file import write, make_dirs
 import yaml
+from tic.config import configmgr
 
 
 def get_default_recipe():
@@ -60,45 +61,50 @@ def get_default_recipe():
         ),
         Configurations=[
             dict(
-                Name='default',
+                Name='tizen-headless',
                 Architecture='armv7l',
                 Schedule= "*",
                 Active= True,
                 Platform= 'Wayland',
                 Part= 'headless',
                 Mic2Options= '-f loop --pack-to=@NAME@.tar.gz',
-                FileName= 'default',
+                FileName= 'tizen-headless-tm1',
                 Repos=['tizen-unified', 'tizen-base'],
                 Groups=[],
-                ExtraPackages= ['building-blocks-root-Headless'],
+                ExtraPackages= [],
                 RemovePackages=[]
             )
         ],
         Repositories=[
             dict(Name='tizen-unified',
                  Url='http://download.tizen.org/live/devel:/Tizen:/Unified/standard/',
+                 #Url='file://home/shinchulwoo/Repo/Unified',
                  Options='--ssl_verify=no'),
             dict(Name='tizen-base',
                  Url='http://download.tizen.org/snapshots/tizen/base/latest/repos/arm/packages/',
+                 #Url='file://home/shinchulwoo/Repo/Base',
                  Options='--ssl_verify=no')
         ],
         Partitions=[
             dict(Name='headless',
-                 Contents='part / --size=2000 --ondisk mmcblk0p --fstype=ext4 --label=rootfs --extoptions=\"-J size=16\" \
-                 part /opt/ --size=1000 --ondisk mmcblk0p --fstype=ext4 --label=system-data --extoptions="-m 0" \
-                 part /boot/kernel/mod_tizen_tm1/lib/modules --size=12 --ondisk mmcblk0p --fstype=ext4 --label=modules')
+                 Contents='part / --size=2000 --ondisk mmcblk0p --fstype=ext4 --label=rootfs --extoptions=\"-J size=16\" \n\
+part /opt/ --size=1000 --ondisk mmcblk0p --fstype=ext4 --label=system-data --extoptions="-m 0" \n\
+part /boot/kernel/mod_tizen_tm1/lib/modules --size=12 --ondisk mmcblk0p --fstype=ext4 --label=modules \n')
         ]
     )
     return recipe
 
 def load_yaml(path):
+    logger = logging.getLogger(__name__)
     try:
         with file(path) as f:
             return yaml.load(f)
-    except IOError:
-        raise error.TICError('cannot read meta file: %s' % path)
-    except:
-        raise error.TICError('yaml format error of meta file: %s' % path)
+    except IOError as err:
+        logger(err)
+        raise error.TICError(configmgr.message['server_error'])
+    except yaml.YAMLError as err:
+        logger(err)
+        raise error.TICError(configmgr.message['recipe_parse_error'] % os.path.basename(path))
     
 
 def convert_recipe_to_yaml(recipe, filepath):