All of lore.kernel.org
 help / color / mirror / Atom feed
From: Richard Purdie <richard.purdie@linuxfoundation.org>
To: "Smith, Elliot" <elliot.smith@intel.com>,
	"Barros Pena, Belen" <belen.barros.pena@intel.com>
Cc: "toaster@yoctoproject.org" <toaster@yoctoproject.org>
Subject: Re: improving display of build artifacts
Date: Wed, 25 May 2016 10:25:05 +0100	[thread overview]
Message-ID: <1464168305.9570.98.camel@linuxfoundation.org> (raw)
In-Reply-To: <CA+1hgUivY-BvM4en6Hgf5SzcFqrJNQqY-vQ=aSh3=nUXgtg2jQ@mail.gmail.com>

On Wed, 2016-05-25 at 09:28 +0100, Smith, Elliot wrote:
> Thanks for putting this together.
> 
> Some of these should be relatively easy (like 1.1, 1.2, 2.2).
> 
> (NB there is also 
> https://bugzilla.yoctoproject.org/show_bug.cgi?id=8556, which is
> really the same bug: image_fstypes *is* being passed, but we don't
> detect the output vmdk file correctly. This should also be relatively
> easy to fix.)
> 
> However, the fundamental problem at the moment is that we don't get a
> precise notification about which files are built when, or about which
> targets they belong to. We rely on trying to guess and erring on the
> side of caution, which is why we don't show files we have previously
> associated with a build.
> 
> I am going to spend some time trying to figure out a way to provide
> this information, as anything we do without this is going to be prone
> to error and guesswork (which is why it works as it does at the
> moment).

I can give a braindump here which may or may not help.

In the cases where we need to track artefacts in general we use sstate.
sstate works by providing an output directory which the task writes
data to, then sstate itself moves the files into the final position.

We use sstate for deploy, package, package_write_*, packagedata and so
on but one thing we don't use it for are images. Why?

Images are large and we don't want the overhead of compressing the
image into an sstate tarball or the overhead of downloading such sstate
artefacts when its likely cheaper to build the image.

There is one task we take a "half way house" approach with which is the
kernel source population. Here, it behaves like an sstate task from a
dependency graph point of view but its generally cheaper to run the
build rather than compress and extract it.

I have wondered if we should make images behave a bit more like sstate,
in that they could write to an intermediate directory which is then
moved into position.

That way, toaster could know that a set of files come from a given task
for sure.

Its obviously a pretty invasive change in behaviour but also partly in
keeping with the rework of the image generation we've been pursusing.

Is it just the do_image_* output we have the issue with?

Cheers,

Richard




  reply	other threads:[~2016-05-25  9:25 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-05-24 17:07 improving display of build artifacts Barros Pena, Belen
2016-05-25  8:28 ` Smith, Elliot
2016-05-25  9:25   ` Richard Purdie [this message]
2016-05-25 10:27     ` Smith, Elliot

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1464168305.9570.98.camel@linuxfoundation.org \
    --to=richard.purdie@linuxfoundation.org \
    --cc=belen.barros.pena@intel.com \
    --cc=elliot.smith@intel.com \
    --cc=toaster@yoctoproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.