summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEd Bartosh <ed.bartosh@linux.intel.com>2015-06-05 09:13:07 +0300
committerRichard Purdie <richard.purdie@linuxfoundation.org>2015-06-11 23:59:11 +0100
commitdec9156ce86eb00153493d3d49344f0623ec4562 (patch)
tree86a74bda320f47dbfd9c4d1df8cd9082d42e3db9
parent77e9243210b2283a5fbd3f40e7823a211d2be233 (diff)
downloadpoky-dec9156ce86eb00153493d3d49344f0623ec4562.tar.gz
wic: move checks to exec_native_cmd
Checked for return code and output of native commands inside exec_native_cmd. Removed similar code from a lot of places where exec_native_cmd is called. (From OE-Core rev: 9e3e933321d58c04619a585326fb291dbf2748f5) Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
-rw-r--r--scripts/lib/wic/kickstart/custom_commands/partition.py21
-rw-r--r--scripts/lib/wic/utils/oe/misc.py6
-rw-r--r--scripts/lib/wic/utils/partitionedfs.py12
3 files changed, 12 insertions, 27 deletions
diff --git a/scripts/lib/wic/kickstart/custom_commands/partition.py b/scripts/lib/wic/kickstart/custom_commands/partition.py
index d9f77d9a28..5d033bb562 100644
--- a/scripts/lib/wic/kickstart/custom_commands/partition.py
+++ b/scripts/lib/wic/kickstart/custom_commands/partition.py
@@ -257,10 +257,7 @@ class Wic_PartData(Mic_PartData):
257 257
258 mkfs_cmd = "mkfs.%s -F %s %s %s -d %s" % \ 258 mkfs_cmd = "mkfs.%s -F %s %s %s -d %s" % \
259 (self.fstype, extra_imagecmd, rootfs, label_str, image_rootfs) 259 (self.fstype, extra_imagecmd, rootfs, label_str, image_rootfs)
260 (rc, out) = exec_native_cmd(pseudo + mkfs_cmd, native_sysroot) 260 exec_native_cmd(pseudo + mkfs_cmd, native_sysroot)
261 if rc:
262 print "rootfs_dir: %s" % rootfs_dir
263 msger.error("ERROR: mkfs.%s returned '%s' instead of 0 (which you probably don't want to ignore, use --debug for details) when creating filesystem from rootfs directory: %s" % (self.fstype, rc, rootfs_dir))
264 261
265 # get the rootfs size in the right units for kickstart (kB) 262 # get the rootfs size in the right units for kickstart (kB)
266 du_cmd = "du -Lbks %s" % rootfs 263 du_cmd = "du -Lbks %s" % rootfs
@@ -307,9 +304,7 @@ class Wic_PartData(Mic_PartData):
307 304
308 mkfs_cmd = "mkfs.%s -b %d -r %s %s %s" % \ 305 mkfs_cmd = "mkfs.%s -b %d -r %s %s %s" % \
309 (self.fstype, rootfs_size * 1024, image_rootfs, label_str, rootfs) 306 (self.fstype, rootfs_size * 1024, image_rootfs, label_str, rootfs)
310 (rc, out) = exec_native_cmd(pseudo + mkfs_cmd, native_sysroot) 307 exec_native_cmd(pseudo + mkfs_cmd, native_sysroot)
311 if rc:
312 msger.error("ERROR: mkfs.%s returned '%s' instead of 0 (which you probably don't want to ignore, use --debug for details) when creating filesystem from rootfs directory: %s" % (self.fstype, rc, rootfs_dir))
313 308
314 # get the rootfs size in the right units for kickstart (kB) 309 # get the rootfs size in the right units for kickstart (kB)
315 du_cmd = "du -Lbks %s" % rootfs 310 du_cmd = "du -Lbks %s" % rootfs
@@ -357,9 +352,7 @@ class Wic_PartData(Mic_PartData):
357 exec_native_cmd(dosfs_cmd, native_sysroot) 352 exec_native_cmd(dosfs_cmd, native_sysroot)
358 353
359 mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (rootfs, image_rootfs) 354 mcopy_cmd = "mcopy -i %s -s %s/* ::/" % (rootfs, image_rootfs)
360 rc, out = exec_native_cmd(mcopy_cmd, native_sysroot) 355 exec_native_cmd(mcopy_cmd, native_sysroot)
361 if rc:
362 msger.error("ERROR: mcopy returned '%s' instead of 0 (which you probably don't want to ignore, use --debug for details)" % rc)
363 356
364 chmod_cmd = "chmod 644 %s" % rootfs 357 chmod_cmd = "chmod 644 %s" % rootfs
365 exec_cmd(chmod_cmd) 358 exec_cmd(chmod_cmd)
@@ -432,9 +425,7 @@ class Wic_PartData(Mic_PartData):
432 425
433 mkfs_cmd = "mkfs.%s -F %s %s %s" % \ 426 mkfs_cmd = "mkfs.%s -F %s %s %s" % \
434 (self.fstype, extra_imagecmd, label_str, fs) 427 (self.fstype, extra_imagecmd, label_str, fs)
435 (rc, out) = exec_native_cmd(mkfs_cmd, native_sysroot) 428 exec_native_cmd(mkfs_cmd, native_sysroot)
436 if rc:
437 msger.error("ERROR: mkfs.%s returned '%s' instead of 0 (which you probably don't want to ignore, use --debug for details)" % (self.fstype, rc))
438 429
439 self.source_file = fs 430 self.source_file = fs
440 431
@@ -458,9 +449,7 @@ class Wic_PartData(Mic_PartData):
458 449
459 mkfs_cmd = "mkfs.%s -b %d %s %s" % \ 450 mkfs_cmd = "mkfs.%s -b %d %s %s" % \
460 (self.fstype, self.size * 1024, label_str, fs) 451 (self.fstype, self.size * 1024, label_str, fs)
461 (rc, out) = exec_native_cmd(mkfs_cmd, native_sysroot) 452 exec_native_cmd(mkfs_cmd, native_sysroot)
462 if rc:
463 msger.error("ERROR: mkfs.%s returned '%s' instead of 0 (which you probably don't want to ignore, use --debug for details)" % (self.fstype, rc))
464 453
465 self.source_file = fs 454 self.source_file = fs
466 455
diff --git a/scripts/lib/wic/utils/oe/misc.py b/scripts/lib/wic/utils/oe/misc.py
index 9eaf039f95..f08ff15a34 100644
--- a/scripts/lib/wic/utils/oe/misc.py
+++ b/scripts/lib/wic/utils/oe/misc.py
@@ -86,6 +86,12 @@ def exec_native_cmd(cmd_and_args, native_sysroot, catch=3):
86 msger.error("A native program %s required to build the image " 86 msger.error("A native program %s required to build the image "
87 "was not found (see details above). Please make sure " 87 "was not found (see details above). Please make sure "
88 "it's installed and try again." % args[0]) 88 "it's installed and try again." % args[0])
89 if out:
90 msger.debug('"%s" output: %s' % (args[0], out))
91
92 if rc != 0:
93 msger.error("exec_cmd: '%s' returned '%s' instead of 0" % \
94 (cmd_and_args, rc))
89 95
90 return (rc, out) 96 return (rc, out)
91 97
diff --git a/scripts/lib/wic/utils/partitionedfs.py b/scripts/lib/wic/utils/partitionedfs.py
index eacf2679d2..8fd44a6a96 100644
--- a/scripts/lib/wic/utils/partitionedfs.py
+++ b/scripts/lib/wic/utils/partitionedfs.py
@@ -227,17 +227,7 @@ class Image:
227 args = ' '.join(args) 227 args = ' '.join(args)
228 msger.debug(args) 228 msger.debug(args)
229 229
230 rc, out = exec_native_cmd(args, self.native_sysroot) 230 exec_native_cmd(args, self.native_sysroot)
231
232 if out:
233 msger.debug('"parted" output: %s' % out)
234
235 if rc != 0:
236 # We don't throw exception when return code is not 0, because
237 # parted always fails to reload part table with loop devices. This
238 # prevents us from distinguishing real errors based on return
239 # code.
240 msger.error("WARNING: parted returned '%s' instead of 0 (use --debug for details)" % rc)
241 231
242 def __create_partition(self, device, parttype, fstype, start, size): 232 def __create_partition(self, device, parttype, fstype, start, size):
243 """ Create a partition on an image described by the 'device' object. """ 233 """ Create a partition on an image described by the 'device' object. """