aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-07-19ref-manual: Updated the "Recipe Logging Mechanisms" sectioned/oe-core/packages-split-9863Scott Rifenbark
Fixes [YOCTO #9950] Added more detail on the functions for logging. (From yocto-docs rev: b7ed4d84ae5221765201fe661af3741fb01da738) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Applied review changes to the DEPENDS variable.Scott Rifenbark
Updated the note with some formatting and grammar changes. Fixes [YOCTO #9933] (From yocto-docs rev: afef28ae894c313f85ddbaeef8b0abbc2700ba2c) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Added review changes to BBCLASSEXTEND descriptionScott Rifenbark
Fixes [YOCTO #9909] Added some technical clarifications to the existing note to be clear about what is causing the limitations in this case. Applied some formatting fixed to for the use of the include word. (From yocto-docs rev: cbbd960d8665d9fb6b92698c14728d1c0bcc659f) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Added notes to the DEPENDS variable description.Scott Rifenbark
Fixes [YOCTO #9933] Added two notes to help clarify how DEPENDS works with pre-compiled objects. There are some details that trip people up. (From yocto-docs rev: 06917e97adf24816b0aee6fdfdd14aa79d4c6ab2) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: Changed the Webport address:Scott Rifenbark
Using 0.0.0.0:8400 as a better way to set up this address. Easier on the user. (From yocto-docs rev: bef463d2743989596388fda7e97119f43da045a8) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Added clarifying note to the BBCLASSEXTEND variable.Scott Rifenbark
Fixes [YOCTO #9909] Added a note that talks about how the BBCLASSEXTEND mechanism adds recipe variants. (From yocto-docs rev: a05990ecb760519a685a1c5ddcf2ce3e048bfbf2) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Added cross-referencing to tasks and dependenciesScott Rifenbark
Fixes [YOCTO #9861] Placed some section links into the "Tasks" and the "Dependencies" sections of the BB manual from several areas: * The "Normal Recipe Build Tasks" section * The variable description for DEPENDS * The variable description for RDEPENDS (From yocto-docs rev: d96347fdb4c3d5a34695f20e995f165c5ba91c32) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Added new glossary entry for REMOVE_PKG_SUPPORT.Scott Rifenbark
Fixes [YOCTO #9899] New variable description added. (From yocto-docs rev: 95b740d719a7a6ffe3a06a1f152af4d877ee08c7) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: splitted long lineEd Bartosh
The TOASTER_DIR=... checksettings line is too long and got truncated when documenation in pdf format is made. Splitting it to two lines should fix this. (From yocto-docs rev: f3bf1c7b4094a9fda60f7f9d99363a947afed261) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: point keywords to Django documentationEd Bartosh
Pointed SECRET_KEY, STATIC_ROOT and DATABASE keywords to the Django documentation. (From yocto-docs rev: d4a6291ad6ef40963c601e60dd861c76499d8b3f) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: Update toaster start documentationMichael Wood
- Update starting toaster to source toaster start - Add webport address documentation - Remove redundant "syncdb" call - Make it clearer that collectstatic uses STATIC_ROOT (From yocto-docs rev: 75516923f72b8d1f52cfd62281f71b637c9cac93) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: add OpenSUSE to the list of distrosEd Bartosh
Updated instructions of restarting apache. As OpenSUSE way of restarting apache is the same as Ubuntu and Debian it's enough to just add OpenSUSE to the list of distros. (From yocto-docs rev: 0aed02ca72303574d17996dc56484f76c772c864) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: update runbuilds instructionsEd Bartosh
Added sample configuration files and instructions for the runbuilds systemd service. Service runs runbuilds in a screen session for user convenience. User can attach to the session to see the runbuilds output, monitor logs and build environment. (From yocto-docs rev: 40beaa575fb96a06992a1d62bb45cd0cbbe2ae86) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: update apache configuration fileEd Bartosh
Changed access control instructions to work with Apache 2.4 according to https://httpd.apache.org/docs/current/upgrading.html. Added 'Require all granted' for wsgi.py according to https://docs.djangoproject.com/en/1.9/howto/deployment/wsgi/modwsgi/. Changed python module path for WSGIDaemonProcess as python version changed and modules are installed to the different path. (From yocto-docs rev: 503b6c3c250936e889ce146bfcd301ed55e638d2) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: add instructions for OpenSUSEEd Bartosh
Added description of the location of apache configuration file for OpenSUSE Leap 42.1 (From yocto-docs rev: 50f9a376072ce0b7d3ed4650ca3c3ea8e5ff14dc) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: change mysql driverEd Bartosh
Here is a quote from Django 1.9 documentation regarding this: mysqlclient is a fork of MySQLdb which notably supports Python 3 and can be used as a drop-in replacement for MySQLdb. At the time of this writing, this is the recommended choice for using MySQL with Django. (From yocto-docs rev: deb02aeea4912f9d7978de3529467e4503eeeffb) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: add instructions to create userEd Bartosh
Creating separate toaster account would make production setup more isolated and maintainable. (From yocto-docs rev: 50ed20ad881da8d454a520903dadff20c5011fae) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: add list of packages for openSUSEEd Bartosh
Added package installation instructions for openSUSE Leap 42.1 (From yocto-docs rev: 895fd65a8641c877ef6eba49e20d34fd71dd7d66) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: update list of packagesEd Bartosh
Changed mod_wsgi package names as Toaster requires python 3 version of mod_wsgi. Added missing python3-pip, mariadb-server, mariadb-devel and python3-devel to the list of packages for Fedora. (From yocto-docs rev: 8a2da9855c0ed5dd137808fa976cbe707048551e) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: update distro versionsEd Bartosh
Changed Ubuntu and Fedora versions to the latest ones. (From yocto-docs rev: 50a7d0110e9f8c7c3c8c8c5b6e3a1495c9f9ff79) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: Switch to pip3 dependency installerbrian avery
Our switch to python3 requires us to dump the virtualenv approach as long as we need python to resolve to python2 in the same shell that python3 resolves to python3. To enable users to install Toaster's python package dependencies locally, we are changing to using pip3 and these doc changes explain how to do that. (From yocto-docs rev: 06b8820bcb90d1855ccb2712b616bb89847a148f) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster-manual: add instructions to create userEd Bartosh
Creating separate toaster account would make production setup more isolated and maintainable. (From yocto-docs rev: 33c638d3e9a68d06d929276c6064d567ed7fe696) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Added a new section on setscene task variantsScott Rifenbark
Fixes [YOCTO #9251] I added a new section on the task variants for setscene, which uses the shared state cache. The section describes the BitBake processing that helps the build system to not have to build everything from scratch. (From yocto-docs rev: 6aa0e6b837de14dd7d6c5ef34328bbf268dd6d71) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Fixed typo in the "Shared State" section.Scott Rifenbark
Fixes [YOCTO #9823] The do_deploy[sstate-inputdirs] string was wrongly do_deploy[sstate-inputsdirs]. (From yocto-docs rev: 49e7cb239f4f4f70dc5738686f1bca135772bcbe) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Review edits to the PR variable in glossary.Scott Rifenbark
Fixes [YOCTO #9843] Some minor rewordings and removal of a stray comma. (From yocto-docs rev: 0b0c8b0b1c4edb86eb2b20c73ffb83d640f6b916) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Updated the RDEPENDS variable description in the glossaryScott Rifenbark
Fixes [YOCTO #9380] Updated the shlibdeps description for this variable to try and satisfy automatically added version restrictions. (From yocto-docs rev: d94de0b24591206620c83a9022a9d813141a7637) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Updated the PR variable description.Scott Rifenbark
Fixes [YOCTO #9843] The variable description was very brief. These changes added some substance to the description and how the OpenEmbedded build system uses the variable. (From yocto-docs rev: cc9117d4e16c56dd54f81804fda94561e61d91a7) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19dev-manual: Review edits to the package installation sectionScott Rifenbark
Fixes [YOCTO #9672] A couple typos here needed fixed. Also, a missing statement in the JSON example. (From yocto-docs rev: 8756cb363a70a8b77077a666c62c0f678ffb3d3e) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Updated the flag descriptions for shared state detailsScott Rifenbark
Fixes [YOCTO 9823] I added more details to the explanations of how shared state is implemented. Included a bulleted list of the various statements of code to help explain flags and settings. (From yocto-docs rev: 518352f88c8dda16f2915a7bb9901ffd7686d739) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19dev-manual: Edits to the package feed creation section.Scott Rifenbark
Updated the introduction of the trio of variables used for package feed naming in the "Build Considerations" section. Fixes [YOCTO #1882] (From yocto-docs rev: 4c7efd08f9f543dd3c4f2e6d68c72d16fd7b0b8c) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19ref-manual: Updated the DISTRO_FEATURES description of Bluez5Scott Rifenbark
Edits to explain that by default, DISTRO_FEATURES backfills bluetooth support with Bluez5. If the user wants to use the Bluez4 feature, they need to backfill consider Bluez5. (From yocto-docs rev: 4e8b34c8c5841cdc1cae564decae4689ae4f2b11) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: fetch2: implement progress supportPaul Eggleton
Implement progress reporting support specifically for the fetchers. For fetch tasks we don't necessarily know which fetcher will be used (we might initially be fetching a git:// URI, but if we instead download a mirror tarball we may fetch that over http using wget). These programs also have different abilities as far as reporting progress goes (e.g. wget gives us percentage complete and rate, git gives this some of the time depending on what stage it's at). Additionally we filter out the progress output before it makes it to the logs, in order to prevent the logs filling up with junk. At the moment this is only implemented for the wget and git fetchers since they are the most commonly used (and svn doesn't seem to support any kind of progress output, at least not without doing a relatively expensive remote file listing first). Line changes such as the ones you get in git's output as it progresses don't make it to the log files, you only get the final state of the line so the logs aren't filled with progress information that's useless after the fact. Part of the implementation for [YOCTO #5383]. (Bitbake rev: 4027649f422ee64b1c4e1ad8d48ac295050afbff) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster.bbclass: only scan files-in-image.txt if it existsElliot Smith
We can reach the method in toaster.bbclass which tries to read from the files-in-image.txt file via a build which doesn't create that file (e.g. "bitbake core-image-minimal -c rootfs"). This causes the build to fail with an exception. Check that this file exists before trying to read from it. [YOCTO #9784] (From OE-Core rev: 8b369cdd73ab17cdf834a591b97b25840caeb740) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19toaster.bbclass: remove directory scan logic for detecting artifactsElliot Smith
toaster.bbclass does a scan of the image deploy and SDK directories when a build finishes. However, this brings no benefit and could be better managed and made easier to modify if moved to toasterui and carried out when the BuildCompleted event occurs. Remove the image scan code from toaster.bbclass, prior to moving it to toasterui and buildinfohelper. Also remove the license manifest update code, as this can also be done from toasterui. The postfuncs for do_populate_sdk are retained, but no longer do the directory scan for SDK artifacts. Instead, they fire an event with the value of the TOOLCHAIN_OUTPUTNAME variable, as this is only accessible at the point when the do_populate_sdk and do_populate_sdk_ext tasks are run. The value of this can then be used by buildinfohelper to find the SDK artifacts produced by a target. [YOCTO #9002] (From OE-Core rev: 67ebb5406c0fcdd1b28bf446249aa6fe34a741a8) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster-tests: package count/size shouldn't show for non-image buildsElliot Smith
If a build doesn't produce any image files, the package count and size shouldn't be shown. Also add some metadata to build dashboard elements so it is clear what they're for, and so they can be queried by the tests. (Bitbake rev: 3d5090af4475b1d0bb56911a8e30abf9097c1b3c) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster-tests: new custom image button shouldn't show for non-image ↵Elliot Smith
builds [YOCTO #9514] (Bitbake rev: 9bc014d89434400c1493fa9f07ce3a51d37dab51) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster-tests: add tests for build artifact display on build dashboardElliot Smith
Add tests for display of image, kernel and SDK artifacts on the build dashboard, checking that the "Images" option in the left-hand menu and the "Build artifacts" section display correctly for different types of build. Also add metadata to elements on the build dashboard so it's clearer what they represent, and to assist in finding them in the tests. Add a method to the test helper to make it more convenient to check whether a single element matching a selector exists. [YOCTO #8556] [YOCTO #8563] [YOCTO #9500] (Bitbake rev: 644a888ce5a2141f2e6e1c22430e196b65cb1313) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: the customise image button shouldn't rely on targetsElliot Smith
The build dashboard customise image button (for creating a new custom image based on an image recipe used by a build) shouldn't rely on targets: whether a new custom image can be created or not depends on whether any of the recipes used by the build are image recipes. Modify the method used to determine whether a build has customisable images to look at the image recipes used during the build, rather than whether the targets run by the build refer to image recipes. (Bitbake rev: 6648876c91134bda8498b4f8d7ace9147ec0d985) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: add package manifest path to Target objectsElliot Smith
Store the path to the *.rootfs.manifest file for targets which generate images. A link to the package manifest is displayed in the build dashboard for targets which produce image files. Like the license manifest path, if a target would have produced the package manifest (but didn't, because it already existed), that path is copied from the target which did produce the package manifest. (Bitbake rev: 79b8e349a0da2ea6b97ad82daa5837e6dfffe0af) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: better display of targets which produced no imagesElliot Smith
SDK targets (populate_sdk) produce SDK artifacts but no image files. Currently, these targets appear under the "Images" heading in the build dashboard, even though they aren't strictly image targets. Change the heading to "Build artifacts". Also remove the section which states that a build produced no image files: this is not correct for populate_sdk targets (those targets don't produce image files under any circumstances); and other changes mean that all targets which do produce images will now show those files. The check for whether to display the "Build artifacts" section also needs to change, as we show targets here which didn't produce any images but did produce SDK artifacts. [YOCTO #8556] (Bitbake rev: b4dce68045c4615e7a6a474e952f670721a3b54e) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: show manifests in their own section of the build dashboardElliot Smith
In the build dashboard, add a section for manifests to each target, which will contain the license and package manifests for a target. As we don't record the package manifest (yet), just move the license manifest link to that section for now. (Bitbake rev: 58cb685b567a081834a605530957f165d35fcf5e) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: only show "New custom image" button for builds with image ↵Elliot Smith
targets Add a has_image_targets() method to Build, and use that to hide the "New custom image" button on the build dashboard if a build has no targets which build images. [YOCTO #9514] (Bitbake rev: 3c4b053e44ea512ef2ced67289a7b0161db6ce9b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: use has_images() methods to display images correctlyElliot Smith
In the build dashboard, we had issues with showing images correctly, as we were using the is_image property of targets to determine whether a target would have image files. This property can be set to True if a target refers to an image recipe (e.g. "core-image-minimal"), even if the task used in the build didn't produce any image files. By adding has_images() methods to the Target and Build objects, which count associated Target_Image_File objects, we can correctly determine whether a target has image files associated with it, and if any of the targets for a build has image files. This means that we can screen out the left-hand "Images" menu options for builds which contained image-related targets (e.g. "core-image-minimal") but which didn't produce any images (e.g. "rootfs" task). [YOCTO #9500] [YOCTO #9784] (Bitbake rev: f6bba0ff254d5ed3163151d4b938f3a43c9acb0a) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: buildinfohelper: only record image files for tasks which make imagesElliot Smith
If a target is built which is classified as an "image" target (e.g. "core-image-minimal"), Toaster reads the list of files in the image (from the files-in-image.txt file). However, Toaster continues to do this for builds which don't produce images, if the recipe providing the target is an image recipe. This can result in a list of files in the image being attached to a target which didn't produce an image (e.g. rootfs). When associating files with an image, ensure that only targets with a task which produces an image have "files in the image" associated with them. [YOCTO #9784] (Bitbake rev: 44375d0c2a88e0070b8067c9285b89c54eaf3152) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: improve scan for SDK artifactsElliot Smith
SDK artifacts were previously picked up by toaster.bbclass and notified to buildinfohelper (via toasterui). The artifacts were then added to the Build object, so that it wasn't clear which artifact went with which target; we were also unable to attach SDK artifacts to a Build if they had already been attached to a previous build. Now, toaster.bbclass just notifies the TOOLCHAIN_OUTPUTNAME when a populate_sdk* target completes. The scan is moved to buildinfohelper, where we search the SDK deploy directory for files matching TOOLCHAIN_OUTPUTNAME and attach them to targets (not builds). If an SDK file is not produced by a target, we now look for a similar, previously-run target which did produce artifacts. If there is one, we clone the SDK artifacts from that target onto the current one. This all means that we can show SDK artifacts by target, and should always get artifacts associated with a target, regardless of whether it really build them. This requires an additional model, TargetSDKFile, which tracks the size and path of SDK artifact files with respect to Target objects. [YOCTO #8556] (Bitbake rev: 5e650c611605507e1e0d1588cd5eb6535c2d34fc) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: buildinfohelper: fix retrieval of targetsElliot Smith
When buildinfohelper records the targets for a build, it looks up any existing targets for a build and creates them if they are not present. This is because in the case of Toaster-triggered builds, the Target objects have already been created (inside triggerBuild()) and don't need to be recreated; but in the case of cli builds, the Target objects have to be created by buildinfohelper. The issue is that the code for retrieving an existing target for a build only looks for Targets with a matching target and build, e.g. Targets for build X with target "core-image-minimal". But it is perfectly legitimate to call bitbake with a command like "bitbake core-image-minimal:do_populate_sdk core-image-minimal:do_populate_sdk_ext". In such a case, the code which looks for matching targets finds two objects, as it doesn't filter by task. Add the task into the filter for the Target so that only one Target object is be returned. Note that a command line like "bitbake recipe:task recipe:task" will still cause an error as bitbake doesn't de-duplicate the command line arguments and will run the recipe:task combination twice. (Bitbake rev: 1c0a689fdaae6469d4afb98583161073d32ea50b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: attach kernel artifacts to targetsElliot Smith
The bzImage and modules files were previously attached to a build, rather than to the target which produced them. This meant it was not possible to determine which kernel artifact produced by a build came from which target; which in turn made it difficult to associate existing kernel artifact with targets when those targets didn't produce artifacts (e.g. if the same machine + target combination was built again and didn't produce a bzImage or modules file because those files already existed). By associating kernel artifacts with the target (via a new TargetArtifactFile model), we make it possible to find all the artifacts for a given machine + target combination. Then, in cases where a build is completed but its targets don't produce any artifacts, we can find a previous Target object with the same machine + target and copy its artifacts to the targets for a just-completed build. Note that this doesn't cover SDK artifacts yet, which are still retrieved in toaster.bbclass and show up as "Other artifacts", lumped together for the whole build rather than by target. [YOCTO #8556] (Bitbake rev: 9b151416e428c2565a27d89116439f9a8d578e3d) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: improve image file suffix retrievalElliot Smith
Refactor retrieval of suffix from image file path, making it a a method on Target_Image_File. This makes it easier to use this in the build dashboard for individual images, plus reduces the complexity of the code required to get all of the image file suffixes for a build. (Bitbake rev: 9c38de3dec74c122c2060cad37331bdafc6858ec) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: do image and artifact scan on BuildCompletedElliot Smith
Move the image and artifact scan code from toaster.bbclass and consolidate its logic with the existing logic in buildinfohelper. Remove handler setup for events which used to be fired from toaster.bbclass but which are now handled directly by buildinfohelper. [YOCTO #8556] (Bitbake rev: f0085cd554604cfff4a3f40a34825fbb6878004f) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-19bitbake: toaster: display Target targets in build dashboardElliot Smith
The build dashboard was showing the targets for the build in the page heading and title as "Target object". Add a filter which extracts the "target" from each Target object as a string so that the heading and title display correctly. Also sort the image file suffixes alphabetically. [YOCTO #8556] (Bitbake rev: 33a24992139e7dc05d14bbe1da60299b732945aa) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>