diff options
Diffstat (limited to 'scripts')
| -rw-r--r-- | scripts/lib/wic/plugins/source/otaimage.py | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/scripts/lib/wic/plugins/source/otaimage.py b/scripts/lib/wic/plugins/source/otaimage.py index 4b30776..1f82af7 100644 --- a/scripts/lib/wic/plugins/source/otaimage.py +++ b/scripts/lib/wic/plugins/source/otaimage.py | |||
| @@ -19,6 +19,7 @@ import logging | |||
| 19 | import os | 19 | import os |
| 20 | import sys | 20 | import sys |
| 21 | 21 | ||
| 22 | from wic import WicError | ||
| 22 | from wic.plugins.source.rawcopy import RawCopyPlugin | 23 | from wic.plugins.source.rawcopy import RawCopyPlugin |
| 23 | from wic.misc import get_bitbake_var | 24 | from wic.misc import get_bitbake_var |
| 24 | 25 | ||
| @@ -32,6 +33,18 @@ class OTAImagePlugin(RawCopyPlugin): | |||
| 32 | name = 'otaimage' | 33 | name = 'otaimage' |
| 33 | 34 | ||
| 34 | @classmethod | 35 | @classmethod |
| 36 | def _get_src_file(cls, image_dir_var): | ||
| 37 | """ | ||
| 38 | Get OTA image file from image directory variable. | ||
| 39 | """ | ||
| 40 | image_dir = get_bitbake_var(image_dir_var) | ||
| 41 | if not image_dir: | ||
| 42 | raise WicError("Couldn't find %s, exiting" % image_dir_var) | ||
| 43 | |||
| 44 | image_file = image_dir + "/" + get_bitbake_var("IMAGE_LINK_NAME") + ".ota-ext4" | ||
| 45 | return image_file if os.path.exists(image_file) else "" | ||
| 46 | |||
| 47 | @classmethod | ||
| 35 | def do_prepare_partition(cls, part, source_params, cr, cr_workdir, | 48 | def do_prepare_partition(cls, part, source_params, cr, cr_workdir, |
| 36 | oe_builddir, bootimg_dir, kernel_dir, | 49 | oe_builddir, bootimg_dir, kernel_dir, |
| 37 | rootfs_dir, native_sysroot): | 50 | rootfs_dir, native_sysroot): |
| @@ -39,13 +52,12 @@ class OTAImagePlugin(RawCopyPlugin): | |||
| 39 | Called to do the actual content population for a partition i.e. it | 52 | Called to do the actual content population for a partition i.e. it |
| 40 | 'prepares' the partition to be incorporated into the image. | 53 | 'prepares' the partition to be incorporated into the image. |
| 41 | """ | 54 | """ |
| 42 | bootimg_dir = get_bitbake_var("IMGDEPLOYDIR") | ||
| 43 | if not bootimg_dir: | ||
| 44 | logger.error("Couldn't find DEPLOY_DIR_IMAGE, exiting\n") | ||
| 45 | |||
| 46 | logger.debug('Bootimg dir: %s' % bootimg_dir) | ||
| 47 | 55 | ||
| 48 | src = bootimg_dir + "/" + get_bitbake_var("IMAGE_LINK_NAME") + ".ota-ext4" | 56 | src = cls._get_src_file("IMGDEPLOYDIR") |
| 57 | if not src: | ||
| 58 | src = cls._get_src_file("DEPLOY_DIR_IMAGE") | ||
| 59 | if not src: | ||
| 60 | raise WicError("Couldn't find ota image in IMGDEPLOYDIR or DEPLOY_DIR_IMAGE, exiting") | ||
| 49 | 61 | ||
| 50 | logger.debug('Preparing partition using image %s' % (src)) | 62 | logger.debug('Preparing partition using image %s' % (src)) |
| 51 | source_params['file'] = src | 63 | source_params['file'] = src |
