summaryrefslogtreecommitdiffstats
path: root/bitbake
Commit message (Collapse)AuthorAgeFilesLines
...
* bitbake: toasterui: ensure that the Build object is always availableElliot Smith2016-08-112-83/+122
| | | | | | | | | | | | | | | | | | | | | | | | | | Many of the methods in toasterui and buildinfohelper rely on the internal state of the buildinfohelper; in particular, they need a Build object to have been created on the buildinfohelper. If the creation of this Build object is tied to an event which may or may not occur, there's no guarantee that it will exist. This then causes assertion errors in those methods. To prevent this from happening, add an _ensure_build() method to buildinfohelper. This ensures that a minimal Build object is always available whenever it is needed, either by retrieving it from the BuildRequest or creating it; it also ensures that the Build object is up to date with whatever data is available on the bitbake server (DISTRO, MACHINE etc.). This method is then called by any other method which relies on a Build object being in the internal state, ensuring that the object is either available, or creating it. (Bitbake rev: 0990b4c73f194ec0be1762e4e48b1a525d8349fb) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: add test for showing self-dependent taskElliot Smith2016-08-111-0/+76
| | | | | | | | | | | | | | Toaster occasionally records a task which depends on itself. Add a test which checks that a task which depends on itself can be displayed in the task page. [YOCTO #9952] (Bitbake rev: b7a699e701785b5bd8da97b6e1b760a1c6dd05f5) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: prevent infinite loop when finding task dependenciesElliot Smith2016-08-111-0/+10
| | | | | | | | | | | | | | | | | | | Toaster occasionally records a task which depends on itself. This causes a problem when trying to display that task if it is "covered" by itself, as the code does the following: for task A, find a task B which covers A; then, recursively find the task which covers B etc. If B == A, this loop becomes infinite and never terminates. To prevent this, add the condition that, when finding a task B which covers A, don't allow B == A. [YOCTO #9952] (Bitbake rev: 88c471c7e5995abb5bca62990b91650277b6c926) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: add tests for reverting to default sortElliot Smith2016-08-111-0/+160
| | | | | | | | | | | | | | | Add tests for ToasterTable UI table sort reverting, which can only be exercised via the browser. Check that if a table is sorted by a column, and that column is hidden, then the sort reverts to the default for the table. [YOCTO #9836] (Bitbake rev: 5b016338478d784fd048ba2baae121c3e558090c) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: reset table to default orderby when orderby column is hiddenElliot Smith2016-08-111-18/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | When a ToasterTable is sorted by a column, and that column is hidden from view, the sort doesn't revert to the default for the table. Modify the JS responsible for reloading the table data so that it doesn't rely on clicking a table column heading (as this is inflexible and error-prone). Instead, use a function to apply the sort to the table; and call that function when column headings are clicked. This means that the ordering can be changed programmatically to a specified default ordering when a column is hidden, without having to click on a column heading. Use this function when the current sort column is hidden, to apply the default sort for the table. [YOCTO #9836] (Bitbake rev: a28377067b6f381bbc98db82f5c45fca6620f7ad) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: show loading spinner after creating custom imageElliot Smith2016-08-114-6/+66
| | | | | | | | | | | | | | | | | | | | Creating a custom image through the "New custom image" dialog can sometimes result in a long pause between pressing the button to create the image, and being transferred to the page showing details of its content. This can make it appear as though pressing the button had no effect. To prevent this from happening, disable the button and text box in the new custom image dialog after the "Create image" button is pressed. Also show a loading spinner and "loading..." text on the button to make it clear that the application is still responding. [YOCTO #9475] (Bitbake rev: dd8bede91e08c0b64b949ca98c74e6144da88fd1) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: fix erroneous message when test failsElliot Smith2016-08-111-4/+4
| | | | | | | | | | | | | | | | | | | | | | When one of the layer details tests fails (as it occasionally does, if running on a machine under heavy load, due to sync issues), the error message shown is misleading, as it is something like: "Expected 'This was imported' in ['This was imported', ...]" The string 'This was imported' is in the list shown in the message, but the message suggests it isn't. This is because the test compares the string with one list, but then uses a different list in the fail message if the comparison fails. Fix the list shown in the message about the test failing. (Bitbake rev: 34943b2278efe99c6744399e04a47cdda630468e) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: add tests for most recent builds state changesElliot Smith2016-08-111-0/+211
| | | | | | | | | | | | Add tests for the state transitions in the "most recent builds" area of the all builds page. [YOCTO #9631] (Bitbake rev: b95681cf38475903ad4f73059313dda8c0dccef6) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: add tests for build dashboard menu and summary ↵Elliot Smith2016-08-112-26/+108
| | | | | | | | | | | | | | | visibility Test that the build dashboard only shows a menu and a build summary area if a build has properly "started" (i.e. has at least one Variable object associated with it). [YOCTO #8443] (Bitbake rev: 9e16f76fb254ae967ded6c21251243b2af9b16b6) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: add tests for build time links in the all builds pageElliot Smith2016-08-111-0/+89
| | | | | | | | | | | | When a build fails, it shouldn't have links on its build time in the recent builds area or in the all builds table. [YOCTO #8443] (Bitbake rev: 3d7b247512eb01607741f5f6ce7cb01d241e49e7) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: adjust build dashboard for failed buildsElliot Smith2016-08-112-159/+164
| | | | | | | | | | | Remove the side bar and build details modules for failed builds. [YOCTO #8443] (Bitbake rev: 9d68a5bfdccd399791e1af048fefa73b5df90bcb) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: add started property to BuildElliot Smith2016-08-111-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | Add a property to the Build model which records whether the BuildStarted event has occurred for the build. The proxy for this event is the presence of variables recorded against the Build: as the buildinfohelper only saves variables when the BuildStarted event occurs (as the variables aren't available on the bitbake server before that point), we can tell whether BuildStarted has happened by counting Variable objects on the Build. This can then be used to determine whether a Build "properly" started, enabling a different dashboard display (left-hand menu hidden) if the build didn't record any useful information (e.g. if it had a bad target). [YOCTO #8443] (Bitbake rev: aa151a4d2de4a54fe3075a8c56a4935158398a18) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: remove links from time field on failed buildsElliot Smith2016-08-113-5/+24
| | | | | | | | | | | | | | Failed builds don't have any time data recorded for them, so the time field in the builds table, the time shown in the recent builds area, and the build time shown in the build dashboard should not be links for failed builds. [YOCTO #8443] (Bitbake rev: 6f9c472d95ee800da079f6b828b956d9f8c67ce6) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tweak styling and typos in recent builds areaElliot Smith2016-08-112-23/+32
| | | | | | | | | | | | | | | | | | | | Help icons need to have the Bootstrap tooltip() method called on them so that the popups are correctly styled. Ensure that the colour of the help/error/warning icons is correct, depending on the build state. Fix pluralisation of errors and warnings shown. Add a div around the build state area so it's easy to pick up where the state is going to display (e.g. in tests). [YOCTO #9631] (Bitbake rev: 98a923ff14188832ac44e0dbafc73bcba10e25da) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: show "Tasks starting..." until the first task completesElliot Smith2016-08-112-4/+37
| | | | | | | | | | | | | | | To prevent showing a "0% of tasks complete" message for a long time, don't show the progress bar until the first task has finished. While waiting for that first task, show a message about tasks starting instead. [YOCTO #9631] (Bitbake rev: 5529bcd860d2932b967a064ae28690ac5a725342) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: show progress of recipe parsing in recent builds areaElliot Smith2016-08-118-122/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | | Modify buildinfohelper and toasterui so that they record the recipe parse progress (from ParseProgress events in bitbake) on the Build object. Note that because the Build object is now created at the point when ParseStarted occurs, it is necessary to set the build name to the empty string initially (hence the migration). The build name can be set when the build properly starts, i.e. at the BuildStarted event. Then use this additional data to determine whether a Build is in a "Parsing" state, and report this in the JSON API. This enables the most recent builds area to show the recipe parse progress. Add additional logic to update the progress bar if the progress for a build object changes. [YOCTO #9631] (Bitbake rev: f33d51d46d70e73e04e325807c1bc4eb68462f7b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: move most recent builds templating to clientElliot Smith2016-08-1116-303/+473
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The most recent builds area of the all builds and project builds table needs to update as a build progresses. It also needs additional functionality to show other states (e.g. recipe parsing, queued) which again needs to update on the client side. Rather than add to the existing mix of server-side templating with client-side DOM updating, translate all of the server-side templates to client-side ones (jsrender), and add logic which updates the most recent builds area as the state of a build changes. Add a JSON API for mostrecentbuilds, which returns the state of all "recent" builds. Fetch this via Ajax from the build dashboard (rather than fetching the ad hoc API as in the previous version). Then, as new states for builds are fetched via Ajax, determine whether the build state has changed completely, or whether the progress has just updated. If the state completely changed, re-render the template on the client side for that build. If only the progress changed, just update the progress bar. (NB this fixes the task progress bar so it works for the project builds and all builds pages.) In cases where the builds table needs to update as the result of a build finishing, reload the whole page. This work highlighted a variety of other issues, such as build requests not being able to change state as necessary. This was one part of the cause of the "cancelling build..." state being fragile and disappearing entirely when the page refreshed. The cancelling state now persists between page reloads, as the logic for determining whether a build is cancelling is now on the Build object itself. Note that jsrender is redistributed as part of Toaster, so a note was added to LICENSE to that effect. [YOCTO #9631] (Bitbake rev: c868ea036aa34b387a72ec5116a66b2cd863995b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: add BuildInit eventElliot Smith2016-08-112-1/+9
| | | | | | | | | | | | | | | | | | | In situations where a bitbake run fails before the build properly starts and BuildStarted is fired, a UI has no way to get at the targets passed to the build. This makes it difficult for the UI to report on the targets which failed. Fire a BuildInit event before running buildTargets() or buildFile(). This enables a UI to capture targets passed to buildTargets(), even if the build fails (e.g. the targets themselves are invalid). [YOCTO #8440] (Bitbake rev: ac02fda870965bf7d44ff5688eda54d2d11ab9c7) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fixtures Add READMEMichael Wood2016-08-111-0/+30
| | | | | | | | | Add README to explain fixtures directory (Bitbake rev: 4060776e408ec6baec3bafba79ac5db1bc380f01) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Remove old toaster config loading mechanismMichael Wood2016-08-113-227/+0
| | | | | | | | | | | This has been replaced using django's inbuilt loaddata. Django command documented at: https://docs.djangoproject.com/en/1.8/ref/django-admin/#django-admin-loaddata (Bitbake rev: 3edd33aff2b9eef82090dc4f9b5461f901aec8be) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: lsupdates Add spinner for parsing/http fetchMichael Wood2016-08-111-2/+33
| | | | | | | | | | Adds a spinner so that you know that the parse and http fetch from the layerindex is in progress. (Bitbake rev: e1c1c8827f3892551084bf1c0909c1b33f0dca83) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: checksettings call django's loaddata instead of custom commandMichael Wood2016-08-112-12/+46
| | | | | | | | | | | | | | | | Call django's inbuilt loaddata command to load the appropriate fixtures. We also attempt to load a fixture called "custom" and fail silently if we don't have one. This is where initial customisations can be done to load particular settings or data into Toaster (for example layers or default values for variables) Make sure the value for TEMPLATECONF is available to checksettings so that we can have a go a working out which default data to load. (Bitbake rev: 7d14ca8cbabbb893e507a66e4cc6e3e77c1e8c84) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Add poky and openembedded configuration fixturesMichael Wood2016-08-113-0/+198
| | | | | | | | | | | These fixtures provide a recommended default configuration of toaster for either using bitbake and oe-core or as part of poky. They can be used as the sample configuration for writing custom configurations. (Bitbake rev: d2f4ffbf061e874a7731441f8346fdc568e9f07f) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tests test_new_project_page Catch button not enabled exceptionMichael Wood2016-08-111-1/+5
| | | | | | | | | | | | | | | When using firefox and selenium we get an exception generated when a disabled button click is attempted. This should happen in the test but we need to catch the exception to make sure it doesn't cause the test to fail. [YOCTO #10056] (Bitbake rev: 06f74fe91f8e162f49a4e856a62a97093b48262a) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: --help now returns 0 instead of 1Randy Witt2016-08-111-0/+4
| | | | | | | | | | | If the user explicitly passes in "--help" then it should return 0. This is the convention follow by the typical application. This allows the user to check for options without triggering an error. (Bitbake rev: 1d5102fe6c932dad1c2b975385e10a33a91ba1a4) Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: siggen: Fix typoUlrich Ölmann2016-08-111-2/+2
| | | | | | | (Bitbake rev: 40f605199fb3ec2549611508b7576c64d735b2b7) Signed-off-by: Ulrich Ölmann <u.oelmann@pengutronix.de> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2/gitannex.py: use 'git annex init' instead of 'git annex sync'Terry Boese2016-08-111-1/+1
| | | | | | | | | | | | The git annex fetcher needs git annex to be initialized. Previously it was using 'git annex sync' to do this, but that has the downside of moving the checkout to the tip of the default branch. This means that tags, SRCREV, etc don't work in the gitannex case. (Bitbake rev: c1a57e2dd7fc96834643be5591a96f239215481a) Signed-off-by: Terry Boese <terry.boese@vecima.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: persist_data: Fix py3 update stack overflowRichard Purdie2016-08-111-2/+2
| | | | | | | | | | Revision d0f904d407f57998419bd9c305ce53e5eaa36b24 accidentally broke items() and values() and made them cause stack overflows. Undo that breakage. (Bitbake rev: 88c5beca705efa7df4a96fb2aaf3f13c336ac328) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch: Fix use of tar's --exclude option for tar >= 1.29Mariano Lopez2016-08-104-4/+4
| | | | | | | | | | | | | | | Starting from tar 1.29 the --exclude option won't work anymore if is not used before the path. There are some fetch modules that copy the ptest using tar and --exclude option. This fixes these for bitbake. [YOCTO #9763] (Bitbake rev: cc71d5d9da71ea5f21d02f3b2fbf119bd2d794f0) Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Applied typo fix to "Override Style Operation ↵Scott Rifenbark2016-08-021-1/+1
| | | | | | | | | | | | | | Advantages" Fixes [YOCTO #9985] Fixed an operator typo from ":=" to "+=" in the note at the bottom of the section. (Bitbake rev: 319d3d387161182069e6d1b3db17ccb539d097ed) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Changed bitbake command example.Scott Rifenbark2016-08-021-1/+1
| | | | | | | | | | | | | Fixes [YOCTO #7718] In the "Executing a List of Task and Recipe Combinations" section, I changed the improper bitbake command example to use the correct syntax. This change was review feedback. (Bitbake rev: c79fab1be4898ec88bfddd4c4f84e76dc3a3125b) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Updated the PROVIDES variableScott Rifenbark2016-08-021-0/+21
| | | | | | | | | | | | Fixes [YOCTO #10011] Added paragraphs near the end to describe the role of virtual targets. (Bitbake rev: fc47bb99dbc1972dfb3a83c0f4c479963da64bcc) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Added non-existant variable expansionScott Rifenbark2016-08-021-0/+11
| | | | | | | | | | | | Fixes [YOCTO #10003] I added a small paragraph explaining what happens when expansion of a variable that does not exist occurs. (Bitbake rev: 8006da3f229d0227215ccd59cd273edacf72f9ce) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Applied some review commentsScott Rifenbark2016-08-021-3/+4
| | | | | | | | | | | | Fixes [YOCTO #9985] Fixed some problems with the changes. A small typo for an example and added a clarifying operator in another sentence. (Bitbake rev: d8ae3775eefe3f7b62fc26cae5b742ae83850c13) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Updated the "Inline Python Variable Expansion" ↵Scott Rifenbark2016-08-021-1/+16
| | | | | | | | | | | | | section. Fixes [YOCTO #9984] Added a small note to the bottom to help clarify. (Bitbake rev: 64bf49826088c56b739ed971251f05b4564c712e) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Fixed override operator syntax.Scott Rifenbark2016-08-021-6/+4
| | | | | | | | | | | I had inconsistent usage of the "_append" style operator syntax in the chaper. I was using a mix of <filename>_append</filename> and "_append". I changed to "_append" for consistency. (Bitbake rev: 5c5b88e402376268baa15c5d04d2592f28d76751) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Clarified override-style operators.Scott Rifenbark2016-08-021-2/+56
| | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #9985] Made the following changes: * Section Removal (Override Style Syntax): Added a small qualifying sentence at the end to further define behavior * Added new section "Override Style Operation Advantages": This section provides some rationale behind the "_append" style operations. * Section "Examples": Changed an example to use the "=" operator rather than the "+=" operator. (Bitbake rev: 797d9627baad9ccd3d55e825c0d705311f631f78) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: bitbake-user-manual: Updated the variable expansion section.Scott Rifenbark2016-08-021-12/+31
| | | | | | | | | | | | Fixes [YOCTO #9984] Added more detail to the examples that show the effects of variable expanison. (Bitbake rev: 480096ca93c0a649ebfff68dfc7d9bbe8eb2ea2d) Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: Revert "bitbake-user-manual: Added new section on command-line ↵Richard Purdie2016-08-021-19/+0
| | | | | | | | | execution" This reverts commit 6f6cd0674fd1595f4e74b7da692e0c348b2660c6 as it was a duplicated commit. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib/toaster: Fix missing new files from previous commitsRichard Purdie2016-08-014-0/+415
| | | | | | (Bitbake rev: f77e6f21a2cc57a3fcb5970437e55cfae39849a3) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: fix URL given for Chromedriver downloadElliot Smith2016-07-291-1/+1
| | | | | | | | | | The link to the Chromedriver downloads page is dead, so put in the correct URL. (Bitbake rev: f0e6832bc33df2bb1b2f4b7f436ffbf023e24b13) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: define capabilities for latest Firefox driverElliot Smith2016-07-291-2/+17
| | | | | | | | | | | | | | | For the latest Firefox versions, WebDriver requires a download of a separate binary and an additional capability to be defined on it. Modify our tests so that when "marionette" is set as the browser, this capability is defined on the Firefox driver. Also add a note to the README about the additional installation steps required. (Bitbake rev: f6011d986f9a573a39e7b98af0aefe6cc88461ad) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib/bb/checksum: avoid exception on broken symlinksPaul Eggleton2016-07-291-2/+4
| | | | | | | | | | | | | | | | If using OE's externalsrc with a source tree that is not tracked by git and contains broken symlinks, you can receive "TypeError: unorderable types: NoneType() < str()" within the file checksum code due to: checksums.sort(key=operator.itemgetter(1)) Don't add files with no checksum to the checksums list in order to avoid this. (Bitbake rev: 484fe5a3f5b840e5422cbdff0eef9aecfe944a19) Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib/bb/utils: show subprocess output in stack tracesRoss Burton2016-07-291-0/+6
| | | | | | | | | | If better_exec() throws a subprocess.CalledProcessError then show the output to the user as it likely contains useful information for solving the problem. (Bitbake rev: 8a6424ed871c3cbacd21cae8bc801197f83d67a6) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: fetch2: fix pickle issues while switching from master to krogothMaxin B. John2016-07-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | While switching from master to krogoth build with a common download directory, got a large number of warnings like the one listed below: WARNING: freetype-2.6.3-r0 do_fetch: Couldn't load checksums from donestamp /home/maxin/downloads/freetype-2.6.3.tar.bz2.done: ValueError (msg: unsupported pickle protocol: 4) These warnings are caused by the difference in pickle module implementation in python3(master) and python2(krogoth). Python2 supports 3 different protocols (0, 1, 2) and pickle.HIGHEST_PROTOCOL is 2 where as Python3 supports 5 different protocols (0, 1, 2, 3, 4) and pickle.HIGHEST_PROTOCOL is obviously 4. My suggestion is to use 2 since it is backward compatible with python2 (all the supported distros for krogoth provides python2 which supports pickle protocol version 2) (Bitbake rev: cc67800f279fb211ee3bb4ea7009fdbb82973b02) Signed-off-by: Maxin B. John <maxin.john@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: lib/bb/build: handle incomplete message fragments in log FIFORoss Burton2016-07-261-31/+36
| | | | | | | | | | | | | | | | | | It's possible that the logging FIFO doesn't do a complete read (or the sender a complete write) with the result that an incomplete message is read in bitbake. This used to result in silently truncated lines but since 42d727 now also results in a warning as the start of the rest of the message isn't a valid logging command. Solve this by storing incoming bytes in a bytearray() across reads, and parsing complete messages from that. [ YOCTO #9999 ] (Bitbake rev: 508112793ee7ace613f07695222997309a2ca58f) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster-tests: add tasks and recipes sub-page testsElliot Smith2016-07-262-0/+131
| | | | | | | | | | | | | Add tests for the tasks and recipes sub-pages of the build dashboard. [YOCTO #9833] (Bitbake rev: cecee440a76950f2824ea34b88e84185be493337) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: set non-hideable columns for built recipes tableElliot Smith2016-07-261-1/+3
| | | | | | | | | | | | | | | | | | | None of the columns in the built recipes table are marked as not hideable, so it is possible to remove all the columns and make the table disappear. Set the recipe name and version columns as not hideable. Also rename the "Name" column to "Recipe", for consistency with the design and with other recipe tables. [YOCTO #9833] (Bitbake rev: 3abd0ac300462e6d1335018cf2d0420de7cc8b76) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: set non-hideable columns for build tasks tableElliot Smith2016-07-261-0/+3
| | | | | | | | | | | | | | | | | | The task, recipe and order columns in the build tasks table should not be hideable. If they are, it's possible for the table to have all of its columns hidden so that it no longer displays. Set the hideable property to prevent these columns from being hidden. [YOCTO #9833] (Bitbake rev: dc1781e3783724823fd6b0c2d65f6b2771e8d0be) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: fix download URL for task logsElliot Smith2016-07-261-4/+8
| | | | | | | | | | | | | | | | The task display template formatting had split the Django url template tag across two lines and broken it. This resulted in a gibberish URL for task logs. Fix by placing the tag and its arguments on a single line. [YOCTO #9837] (Bitbake rev: d6e88b7b410b6b99b47b031111a1126da9fd31b3) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>