Merge release-0.28.17 from 'tools/mic'
[platform/upstream/mic.git] / plugins / imager / fs_plugin.py
index c639211..21bb544 100755 (executable)
@@ -1,4 +1,4 @@
-#!/usr/bin/python -tt
+#! /usr/bin/python2
 #
 # Copyright (c) 2011 Intel, Inc.
 #
@@ -19,7 +19,6 @@ import subprocess
 from mic import chroot, msger, rt_util
 from mic.utils import misc, errors, fs_related, runner
 from mic.imager import fs
-from mic.conf import configmgr
 from mic.plugin import pluginmgr
 
 from mic.pluginbase import ImagerPlugin
@@ -30,53 +29,8 @@ class FsPlugin(ImagerPlugin):
     def do_create(self, args):
         """${cmd_name}: create fs image
 
-        Usage:
-            ${name} ${cmd_name} <ksfile> [OPTS]
-
-        ${cmd_option_list}
         """
-
-        if args is None:
-            raise errors.Usage("Invalid arguments.")
-
-        creatoropts = configmgr.create
-        ksconf = args.ksfile
-
-        if creatoropts['runtime'] == 'bootstrap':
-            configmgr._ksconf = ksconf
-            rt_util.bootstrap_mic()
-
-        recording_pkgs = []
-        if len(creatoropts['record_pkgs']) > 0:
-            recording_pkgs = creatoropts['record_pkgs']
-
-        if creatoropts['release'] is not None:
-            if 'name' not in recording_pkgs:
-                recording_pkgs.append('name')
-            if 'vcs' not in recording_pkgs:
-                recording_pkgs.append('vcs')
-
-        configmgr._ksconf = ksconf
-
-        # try to find the pkgmgr
-        pkgmgr = None
-        backends = pluginmgr.get_plugins('backend')
-        if 'auto' == creatoropts['pkgmgr']:
-            for key in configmgr.prefer_backends:
-                if key in backends:
-                    pkgmgr = backends[key]
-                    break
-        else:
-            for key in backends.keys():
-                if key == creatoropts['pkgmgr']:
-                    pkgmgr = backends[key]
-                    break
-
-        if not pkgmgr:
-            raise errors.CreatorError("Can't find backend: %s, "
-                                      "available choices: %s" %
-                                      (creatoropts['pkgmgr'],
-                                       ','.join(backends.keys())))
+        creatoropts, pkgmgr, recording_pkgs = rt_util.prepare_create(args)
 
         creator = fs.FsImageCreator(creatoropts, pkgmgr)
         creator._include_src = args.include_src
@@ -108,7 +62,7 @@ class FsPlugin(ImagerPlugin):
             creator.package(creatoropts["destdir"])
             creator.create_manifest()
             if creatoropts['release'] is not None:
-                creator.release_output(ksconf, creatoropts['destdir'],
+                creator.release_output(args.ksfile, creatoropts['destdir'],
                         creatoropts['release'])
             creator.print_outimage_info()
         except errors.CreatorError:
@@ -121,7 +75,7 @@ class FsPlugin(ImagerPlugin):
             cmd = creatoropts['run_script']
             try:
                 runner.show(cmd)
-            except OSError,err:
+            except OSError as err:
                 msger.warning(str(err))