configmgr.create['ignore_ksrepo'] = args.ignore_ksrepo\r
if args.run_script:\r
configmgr.create['run_script'] = args.run_script\r
+ if args.tpk_install:\r
+ configmgr.create['tpk_install'] = args.tpk_install\r
\r
creater = createrClass()\r
creater.do_create(args)\r
from mic.utils import misc, grabber, runner, fs_related as fs
from mic.chroot import kill_proc_inchroot
from mic.archive import get_archive_suffixes
+from mic.conf import configmgr
#post script max run time
MAX_RUN_TIME = 120
runner.show('umount -l %s' % self.workdir)
+ def cp_tpk(self):
+ #Add tpk-install option
+ createopts = configmgr.create
+ if createopts['tpk_install']:
+ path = createopts['tpk_install']
+ file_list = os.listdir(path)
+ for f in file_list:
+ sub = os.path.splitext(f)[1]
+ if sub != ".tpk":
+ raise CreatorError("Not all files in the path: "+path +" is tpk")
+
+ tpk_dir = "/usr/apps/.preload-tpk"
+ fs.makedirs(self._instroot + "/usr/apps")
+ fs.makedirs(self._instroot + tpk_dir)
+ for f in file_list:
+ shutil.copy(path+"/"+f,self._instroot + tpk_dir)
+
def mount(self, base_on = None, cachedir = None):
"""Setup the target filesystem in preparation for an install.
fs.makedirs(self._instroot + d)
if self.target_arch and self.target_arch.startswith("arm") or \
- self.target_arch == "aarch64" or self.target_arch == "mipsel" :
+ self.target_arch == "aarch64":
self.qemu_emulator = misc.setup_qemu_emulator(self._instroot,
self.target_arch)
# get size of available space in 'instroot' fs
self._root_fs_avail = misc.get_filesystem_avail(self._instroot)
+ self.cp_tpk()
def unmount(self):
"""Unmounts the target filesystem.
help='interactive output')
parent_parser.add_argument('--run_script', action='store', dest='run_script',
default=None, help='Run script on local PC after image created')
+ parent_parser.add_argument('--tpk_install', action='store', dest='tpk_install',
+ default=None, help='Copy tpk file to /usr/apps/.preload-tpk')
parser.set_defaults(alias="cr")