Skip to content

Fix SDK downloads forbuilds

Ed Bartosh bitbake-devel yocto-toaster 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest3 patches 1 replyIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/3toaster: toasterui: listen for bb.event.MetadataEventlib/bb/ui/toasterui.py+2 -10 replies
2/3toaster: toasterui: log OSErrorException metadata eventslib/bb/ui/toasterui.py+2 -00 replies
3/3toaster: toastergui: make artifact download more robustlib/toaster/toastergui/templates/unavailable_artifact.html lib/toaster/toastergui/views.py+47 -630 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [PATCH 0/3] Fix SDK downloads forbuilds

Hi,

Artifacts could not be downloaded for a build as they were not being listed. It was not possible to download them manually either, as the artifact download code was broken for SDK artifacts produced by command line builds.

Fix how toaster.bbclass hooks onto bitbake's build tasks, so that the SDK artifacts are picked up after do_populate_sdk runs.

Fix Toaster code for returning SDK artifacts in HTTP responses.

Changes since b53df3c (toaster-next) are in
git://git.yoctoproject.org/poky-contrib, elliot/toaster/sdk_artifacts-7603
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=elliot/toaster/sdk_artifacts-7603

NB one of the commits on this branch (fbc2024) has been submitted to oe-core:
http://lists.openembedded.org/pipermail/openembedded-core/2016-January/115366.html
This patch set contains the other commits on the branch.

Related bug: https://bugzilla.yoctoproject.org/show_bug.cgi?id=7603

To test:

1. Ensure that your database has no build artifacts in it, either by removing the database, clearing the relevant table with SQL via the command line (delete from orm_buildartifact), or removing the objects via the Django shell (orm.models.BuildArtifact.objects.all().delete()).

Note that the current behaviour, where we only associate SDK artifacts with the first build which produces them, has not been modified. So if you have already run a build and have files in tmp/deploy/sdk associated with it, subsequent builds will not be associated with those files.

2. Start a new build from the command line or Toaster, invoking the populate_sdk target:

# command line
bitbake -c populate_sdk core-image-minimal

# Toaster (NB you must use the "Local" release) run a build like "core-image-minimal:populate_sdk"

3. View the build dashboard for the build when it completes and ensure it contains an "Other artifacts" section, as shown in the bug report.

4. Click on one of the "Other artifact" links and ensure that the artifact downloads correctly.

As this code slightly modifies all other artifact downloads, you could also check downloads for the following, too:

* cooker logs
* task logs
* image files
* licence manifests

The following changes since commit d1cdf28a40489c9d730dfed3a48e67cb34e8890b:

toaster: tests Remove symlinks from toasteruitest folder (2016-01-18 15:23:51 +0200)

are available in the git repository at:

git://git.yoctoproject.org/poky-contrib ed/toaster/submit/elliot/toaster/sdk_artifacts-7603
http://git.yoctoproject.org/cgit.cgi/poky-contrib/log/?h=ed/toaster/submit/elliot/toaster/sdk_artifacts-7603

Elliot Smith (3):
toaster: toasterui: listen for bb.event.MetadataEvent
toaster: toasterui: log OSErrorException metadata events
toaster: toastergui: make artifact download more robust

 lib/bb/ui/toasterui.py                             |  5 +-
 .../toastergui/templates/unavailable_artifact.html | 13 ++-
 lib/toaster/toastergui/views.py                    | 97 +++++++++-------------
 3 files changed, 51 insertions(+), 64 deletions(-)

--
Regards,
Ed