[OE-core] do_image: Adding support for IMAGE_ROOTFS_EXCLUDE_PATH.

Ed Bartosh ed.bartosh at linux.intel.com
Mon May 22 08:46:22 UTC 2017


On Mon, May 22, 2017 at 09:08:41AM +0200, Kristian Amlie wrote:
> Ping. Would be great to get some feedback so I can continue working on this.
> 
I like the idea.

Lately I was working on generic EFI implementation
and thought that it would be nice to be able to package EFI artifacts
and get them installed the same way as other packages. With
IMAGE_ROOTFS_EXCLUDE_PATH = '<directory with efi artifacts>' it would be
possible to not include that directory into the rootfs if needed.

> --
> Kristian
> 
> On 26/04/17 17:03, Kristian Amlie wrote:
> > This is a direct followup from the earlier f6a064d969f414 commit in wic. It
> > works more or less the same way: The variable specifies a list of directories
> > relative to the root of the rootfs, and these directories will be excluded from
> > the resulting rootfs image. If an entry ends with a slash, only the contents are
> > omitted, not the directory itself.
> > 
> > This is early feedback call, and several things are missing here (see
> > below). However, I would like to know if at least the basic approach is
> > acceptable. Reviewers pressed on time really only need to look at the topmost
> > hunk as well as the last couple of lines of the two functions. Those show what
> > the basic idea is.
> > 
> > What's missing:
> > 
> > * Documentation
> > 
> > * Test coverage
> > 
> > * Respecting IMAGE_ROOTFS_EXCLUDE_PATH is a behavior change, and isn't
> >   appropriate for all image creators. In fact, for the the main use case [1] to
> >   work it must not always be respected.
> > 
> > My idea for the last point is that the variable will not be respected by
> > default, and each of the pure filesystem image creators (btrfs, ext2/3/4, etc)
> > will set a flag that mark their image creator as a "pure filesystem", which
> > would respect this variable. Image creators that make partitions, however,
> > should not respect it, because they will use wic for that purpose instead, and
> > then they need to have access to the entire rootfs. Hence they should not set
> > the flag.
> > 
> > I'm imagining something like this:
> > 
> >   d.setVarFlag('do_image_%s' % t, 'respect_exclude_path', '1')
> > 
> > although I'm not sure if that's the best approach (tips are welcome).
> > 
> > [1] The use case for this feature is the following: We are creating two types of
> > images in Mender: One complete partitioned image, and one image containing only
> > the rootfs. In order to be able to populate non-rootfs partitions, we want to
> > use the regular bitbake recipes for building these components, but then exclude
> > certain directories from the rootfs image. Using wic, we are adding those
> > directories back into the partitioned image, but under different
> > partitions. Unlike the rootfs image, the other partitions are not expected to be
> > rebuilt after the first rollout.
> > 
> 

-- 
--
Regards,
Ed



More information about the Openembedded-core mailing list