[oe-commits] [openembedded-core] 02/14: image_types_wic.bbclass: Copy the .wks and .env files to deploy image dir

git at git.openembedded.org git at git.openembedded.org
Thu Aug 8 21:49:37 UTC 2019


This is an automated email from the git hooks/post-receive script.

rpurdie pushed a commit to branch master-next
in repository openembedded-core.

commit 42293d75404486e20db9f7a80d0d1756887b576d
Author: Jason Wessel <jason.wessel at windriver.com>
AuthorDate: Thu Aug 8 13:23:57 2019 -0700

    image_types_wic.bbclass: Copy the .wks and .env files to deploy image dir
    
    When using a .wks.in file, the only place that the generated .wks file
    exists in the tmp/work area.  A copy should be left behind in the
    deploy directory so that you can easily run the wic tool to
    re-generate or modify a new image without running bitbake.  Custom
    .wks.in files can reference any number of bitbake variables, so it is
    important to save the result.
    
    below is an example of using the generated .wks file in the deploy
    area.  The full name of my generated .wks file was
    core-image-minimal-ostree-uboot-ab.wks, but since you usually only
    have a single .wks file per image you can use a wild card like:
    
      cd tmp*/deploy/images/*
      wic create --vars . -e core-image-minimal -s -m core-image-minimal-*.wks
    
    Signed-off-by: Jason Wessel <jason.wessel at windriver.com>
    Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
 meta/classes/image_types_wic.bbclass | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/meta/classes/image_types_wic.bbclass b/meta/classes/image_types_wic.bbclass
index 519aeb1..f350dc2 100644
--- a/meta/classes/image_types_wic.bbclass
+++ b/meta/classes/image_types_wic.bbclass
@@ -77,6 +77,11 @@ python do_write_wks_template () {
     wks_file = d.getVar('WKS_FULL_PATH')
     with open(wks_file, 'w') as f:
         f.write(template_body)
+    f.close()
+    # Copy the finalized wks file to the deploy directory for later use
+    depdir = d.getVar('IMGDEPLOYDIR')
+    basename = d.getVar('IMAGE_BASENAME')
+    bb.utils.copyfile(wks_file, "%s/%s" % (depdir, basename + '-' + os.path.basename(wks_file)))
 }
 
 python () {
@@ -105,7 +110,7 @@ python () {
                 # file in process_wks_template as well, so just put it in
                 # a variable and let the metadata deal with the deps.
                 d.setVar('_WKS_TEMPLATE', body)
-                bb.build.addtask('do_write_wks_template', 'do_image_wic', None, d)
+                bb.build.addtask('do_write_wks_template', 'do_image_wic', 'do_image', d)
         bb.build.addtask('do_image_wic', 'do_image_complete', None, d)
 }
 
@@ -127,6 +132,10 @@ python do_rootfs_wicenv () {
             value = d.getVar(var)
             if value:
                 envf.write('%s="%s"\n' % (var, value.strip()))
+    envf.close()
+    # Copy .env file to deploy directory for later use with stand alone wic
+    depdir = d.getVar('IMGDEPLOYDIR')
+    bb.utils.copyfile(os.path.join(outdir, basename) + '.env', os.path.join(depdir, basename) + '.env')
 }
 addtask do_rootfs_wicenv after do_image before do_image_wic
 do_rootfs_wicenv[vardeps] += "${WICVARS}"

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the Openembedded-commits mailing list