summaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2016-11-16fetch2: npm: conditionally hide NPM_LOCKDOWN / NPM_SHRINKWRAP warningspaule/bb-npm-warningsPaul Eggleton
If ud.ignore_checksums is set (which we currently use to suppress the warnings for missing SRC_URI checksums when fetching files from scripts), then if we're fetching an npm package we should similarly suppress the warnings when NPM_LOCKDOWN and NPM_SHRINKWRAP aren't set. At the same time, make any errors reading either of these files actual errors since if the file is specified and could not be found, that should be an error - not the exact same warning. Fixes [YOCTO #10464]. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2016-11-04lib/bb/cooker.py: fix for BBFILE_PATTERN = ""Robert Yang
There would be error when BBFILE_PATTERN = None: BBFILE_PATTERN_foo not defined This is the correct behaviour, but when the layer sets BBFILE_PATTERN = "", it would match all the remaining recipes, and cause "No bb files matched BBFILE_PATTERN" warnings for all the layers which behind it. When a layer sets BBFILE_PATTERN = "" (for example, a layer only provides git repos and source tarballs), now it means has no recipes. This is different from BBFILE_PATTERN_IGNORE_EMPTY, the later one means that it *may* not have any recipes. Signed-off-by: Robert Yang <liezhi.yang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toasterui.py: warn if buildstats is missingOlaf Mandel
Like for buildhistory, warn if buildstats is missing from INHERIT. CC: Joshua Lock <joshua.g.lock@linux.intel.com> Signed-off-by: Olaf Mandel <o.mandel@menlosystems.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: add tests/eventreplay/READMEEd Bartosh
Put instructions on how to prepare event log files and run eventreplay tests. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: add eventreplay test case for zlibEd Bartosh
Run toaster-eventreplay with zlib.events. Check if zlib build and package present in Toaster database. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: add eventreplay test case for core-image-minimalEd Bartosh
Run toaster-eventreplay with core-image-minimal.events and test if all required packages present in Target_Installed_Package table. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: use current directory if BUILDDIR is not setEd Bartosh
If BUILDDIR environment variable is not set signal_runbuilds function throws TypeError as os.getenv('BUILDDIR') returns None: ERROR: unsupported operand type(s) for +=: 'NoneType' and 'str' Traceback (most recent call last): File "bitbake/lib/bb/ui/toasterui.py", line 391, in main buildinfohelper.update_build_information(event, errors, warnings, taskfailures) File "bitbake/lib/bb/ui/buildinfohelper.py", line 1184, in update_build_information self.internal_state['build'], errors, warnings, taskfailures) File "bitbake/lib/bb/ui/buildinfohelper.py", line 238, in update_build_stats_and_outcome signal_runbuilds() File "bitbake/lib/toaster/orm/models.py", line 1746, in signal_runbuilds '.runbuilds.pid')) as pidf: File "/usr/lib64/python3.4/posixpath.py", line 82, in join path += b TypeError: unsupported operand type(s) for +=: 'NoneType' and 'str' Used os.getenv('BUILDIR', '.') to make it always return meaningful directory path. Current directory '.' will be used if BUILDDIR is not set. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: buildinfohelper Handle regex pathsbrian avery
We were presuming that all the layer dependency information was of the form "^/path/to/layer" to we were just stripping the leading "^" off of the layer information when we were matching the layer priorities to the toaster database. This patch splits out the priorities layer match which gets a regex from the task/recipe match which is gets a path. Signed-off-by: brian avery <brian.avery@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: tests builds test_core_image_min Clean upsMichael Wood
Instead of searching for the build for each test just use the returned value of the completed build. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: tests builds Update buildtestMichael Wood
Now that we're using fixtures for configuration just load these instead of trying to search for a toasterconf json file. Also for convenience add the ability for the tests to source the build environment script. To use this test make sure that directories are in the same layout as poky. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: orm models Handle run builds process not yet runningMichael Wood
During tests we may want to call the runbuilds process manually for example when doing a "one shot" approach rather than a long running process during tests. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: test browser test_layerdetails_page add wait_until_visibleMichael Wood
Add an additional wait_until_visible for the save buttons as firefox animates this into view so slowly we get a race on them being visible Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: Remove contrib ttsMichael Wood
Remove the "Toaster test system". We don't need a home brew test "framework" as the django test runner is more than adequate. None of these tests here are currently working and have been obsoleted by the work done on unit and browser tests in ./tests/. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: Delete useless bldcontrol/testMichael Wood
It doesn't work nor does it test anything useful Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: Move views tests to main testing moduleMichael Wood
Consolidating all the tests to live in the same place to make them more discoverable and consistent as well as not cluttering up the django app directory. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04toaster: views Tests fix all pyflake identified issuesMichael Wood
Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04bitbake-worker: print full traceback instead of message onlyMarkus Lehtonen
Print full traceback instead of just the exception message in the child() function inside fork_off_task(). This makes debugging a lot easier as the function catches a generic "Exception" and the exception message alone might not give much information. [YOCTO #10393] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04data: fix exception handling in exported_vars()Markus Lehtonen
Fix a bug where a totally wrong value of a variable would be exported if an exception happened during d.getVar(). Also, print a warning if an exception happends instead of silently ignoring it. It would probably be best just to raise the exception, instead, but use the warning for now in order to avoid breaking existing builds. [YOCTO #10393] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04siggen: Ensure taskhash mismatches don't override existing dataRichard Purdie
We recalculate the taskhash to ensure the version we have matches what we think it should be. When we write out a sigdata file, use the calculated value so that we don't overwrite any existing file. This leaves any original taskhash sigdata file intact to allow a debugging comparison. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04siggen: Pass basehash to worker processes and sanity check reparsing resultRichard Purdie
Bitbake can parse metadata in the cooker and in the worker during builds. If the metadata isn't deterministic, it can change between these two parses and this confuses things a lot. It turns out to be hard to debug these issues currently. This patch ensures the basehashes from the original parsing are passed into the workers and that these are checked when reparsing for consistency. The user is shown an error message if inconsistencies are found. There is debug code in siggen.py (see the "Slow but can be useful for debugging mismatched basehashes" commented code), we don't enable this by default due to performance issues. If you run into this message, enable this code and you will find "sigbasedata" files in tmp/stamps which should correspond to the hashes shown in this error message. bitbake-diffsigs on the files should show which variables are changing. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-11-04build: Ensure we preserve sigbasedata files as well as sigdata onesRichard Purdie
We don't remove sigdata files, we also shouldn't remove sigbasedata files as this hinders debugging. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15toaster: Update default release to Mortybrian avery
Set Morty to be the default release in toaster for the Morty release when creating new projects. Signed-off-by: brian avery <brian.avery@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15toaster: Update poky fixture for Morty releasebrian avery
Update the poky fixture to the Morty release. This removes the master branch from the release and limits it to the morty branch. Normally, we would also support at least one past branch but the change from Python 2.7 -> Python 3 makes that infeasible. Signed-off-by: brian avery <brian.avery@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15toaster: Update oe-core fixture for Morty releasebrian avery
Update the oe-core fixture to the Morty release. This removes the master branch from the release and limits it to the morty branch. Normally, we would also support at least one past branch but the change from Python 2.7 -> Python 3 makes that infeasible. Signed-off-by: brian avery <brian.avery@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-15bb.event: fix infinite loop on print_ui_queueAníbal Limón
If bitbake ends before _uiready and bb.event.LogHandler was add to the bitbake logger it causes an infinite loop when logging something. The scenario is print_ui_queue is called at exit and executes the log handlers [2] one of them is bb.event.LogHandler this handler appends the same entry to ui_queue causing the inifine loop [3]. In order to fix a new copy of the ui_queue list is created when iterate ui_queue. [YOCTO #10399] [1] https://bugzilla.yoctoproject.org/show_bug.cgi?id=10399#c0 [2] http://git.openembedded.org/bitbake/tree/lib/bb/event.py?id=41d9cd41d40b04746c82b4a940dca47df02514fc#n156 [3] http://git.openembedded.org/bitbake/tree/lib/bb/event.py?id=41d9cd41d40b04746c82b4a940dca47df02514fc#n164 Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-13bitbake-user-manual: Changed BB_SETSCENE_VERIFY_FUNCTION nameScott Rifenbark
The BB_SETSCENE_VERIFY_FUNCTION variable has effectively changed to BB_SETSCENE_VERIFY_FUNCTION2. I changed the three areas in the book. Basically a name change. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2016-10-13bitbake-user-manual: Fixes small typos for 'addtask' sectionScott Rifenbark
Fixes [YOCTO #10401] Applied some edits to various areas of the section. These were minor in nature. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2016-10-13bitbake-user-manual: Updated the [noexec] and [nostamp] flag descriptionsScott Rifenbark
Fixes [YOCTO #10401] Added some wording to clarify that setting these flags to "1" causes the desired action. Also, provided a cautionary note about tasks depending on any [nostamp] task causes the task to always be executed and could cause unnecessary rebuild time. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2016-10-13bitbake-user-manual: Fleshed out the "addtask" documentationScott Rifenbark
Fixes [YOCTO #10401] The "addtask" documentation was rewritten to tighten up the introductory section and to flesh out the actual examples. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2016-10-13bitbake-user-manual: Updated the datastore functionsScott Rifenbark
Fixes [YOCTO #10400] No information existed for cases when a variable did not exist. I added this information to each of the variables in the table. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com>
2016-10-11runqueue.py: Remove redundant whitelist checksRandy Witt
The whitelist checks for BB_SETSCENE_ENFORCE were running for every call to execute(). Since the task list doesn't change for each call into execute, the checks only need to be ran once. [YOCTO #10369] Signed-off-by: Randy Witt <randy.e.witt@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-11bitbake: Update version to 1.32.0Richard Purdie
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-11depexp: Close UI with error message on NoProvider eventJussi Kukkonen
Without this the UI just sits there doing nothing. Showing an infobar in-UI would be nicer but not much more useful since currently user couldn't do anything in-UI to fix the situation. Implementation is based on the one in knotty. Fixes [YOCTO #9288] Signed-off-by: Jussi Kukkonen <jussi.kukkonen@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-08main: Check bitbake server-only port is a numberBenjamin Esquivel
Either using the memres script or the bitbake call with --server-only if the port is a string instead of a number then the process hangs indefinitely causing a loop that never ends. Add a check at the beginning for the port being a number otherwise show an error message and exit cleanly. [YOCTO #10397] Signed-off-by: Benjamin Esquivel <benjamin.esquivel@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-07runqueue: Optimise task id string manipulationsRichard Purdie
Some task id manipulations were suboptimal: * taskfn_fromtid and fn_from_tid were effectively the same function * many calls to split_tid(), then taskfn_fromtid() * taskfn_fromtid() called split_tid() internally This patch adds split_tid_mcfn() to replace split_tid() and returns the "taskfn" variant being used in many places. We update all core calls to the new function and ignore the return values we don't need since the function call overhead of the split_tid wrapper is higher than ignoring a return value. The one remaining standalone use of taskfn_fromtid is replaced with fn_from_tid. I couldn't see any external usage so it was dropped. There is external usage of split_tid so a wrapper remains for it. Combined together these changes should improve some of the runqueue task manipulation performance. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-07toaster: fix cloning of git+ssh repositoriesEd Bartosh
Replaced '+' -> '_' to avoid having '+' in folder name. Thanks Stephan Dünner for this fix. Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-07bb.runqueue: fix unexpected process death logicChristopher Larson
`if w in self.rq.worker` when w *is* self.rq.worker doesn't make a great deal of sense, and results in this error: File ".../poky/bitbake/lib/bb/runqueue.py", line 2372, in runQueuePipe.read(): name = None > if w in self.rq.worker: name = "Worker" TypeError: unhashable type: 'dict' Most likely this was meant to be 'is' rather than 'in', but rather than checking after the fact, just include the name in the iteration, instead. While we're here, also clean up and fix the broken error message. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06ui/knotty.py: Fix signal handling of SIGWINCH in BBProgressAníbal Limón
Add the ability to pass default signal handler for SIGWINCH in BBProgress because with multiple instace of BBProgress the original signal handler set by TerminalFilter (sigwinch_handle) is lost. This is a fix for stack trace due to multiple async calls of ProgressBar _handle_resize (ioctl to terminal fd), see: NOTE: Executing SetScene Tasks Fatal Python error: Cannot recover from stack overflow. Current thread 0x00007f70a4793700 (most recent call first): File "/home/alimonb/repos/poky/bitbake/lib/progressbar/progressbar.py", line 183 in _handle_resize File "/home/alimonb/repos/poky/bitbake/lib/bb/ui/knotty.py", line 58 in _handle_resize File "/home/alimonb/repos/poky/bitbake/lib/bb/ui/knotty.py", line 60 in _handle_resize ... File "/home/alimonb/repos/poky/bitbake/lib/bb/ui/knotty.py", line 60 in _handle_resize ... Aborted Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06toaster: Update tests to reflect front end changesMichael Wood
- Browser test we changed the project heading access to use the class name - Update toastergui unit test for additional gotoUrl property - On faster browsers we had a race for layer details inputs being visible Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06toaster: Delete notification update front end implementation to designMichael Wood
Update the delete notifications to reflect feedback from design review comments. Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06toaster: importlayer Fix layer dependencies button state toggleMichael Wood
Fix regression introduced by switching typeahead library. Make sure we enable and disable the add button based on whether the selection event has fired or not. [YOCTO #9936] Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06toaster: checksettings Remove confusing startup messagesMichael Wood
These "validation" messages are shown regardless as to whether the settings are being correctly set or not. For the time being remove them. [YOCTO #9097] Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06toaster: buildinfohelper: Use correct way to get message from LogMessageMichael Wood
Use the correct method to get a message value from the LogMessage object rather than constructing it ourselves which is not recommended. This causes an exception when the msg contains a '%' such as when there are wildcards in file names (something2.%.bbappends) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06toaster: api / project Cancel any in progress builds before project deleteMichael Wood
Before we finally delete any project make sure we send the cancel command to any in-progress builds. This ensures that an inaccessible build doesn't block up the system and that we don't get errors after deletion. [YOCTO #10289] Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06bitbake-user-manual: Added new section on BB-style functionsScott Rifenbark
Fixes [YOCTO #10364] Added a new section titled "Bitbake-Style Python Functions Versus Python Functions". This section describes differences for the user between the two types of functions. Also, cleaned up a consistency problem with the terms "BitBake style" and "BitBake-style". I used the latter throughout the manual. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06bitbake-user-manual: Updated minor wordings.Scott Rifenbark
Fixes [YOCTO #10296] Applied some minor wording changes per review edits. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06bitbake-user-manual: Added examples for using overrides with functions.Scott Rifenbark
Fixes [YOCTO #10296] This adds some bits clarifying you can append and prepend to functions. Added a bit to the introduction paragraph of the "Appending and Prepending (Override Style Syntax)" section to note that you can do this. Referenced some new examples. In the "Shell Functions" section I added an example. In the "BitBake Style Python Functions" section I also added an example. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-06bitbake-user-manual: Fixed grammar from missing wordScott Rifenbark
Fixes [YOCTO #10293] I omitted the work "quote" and needed to have it there. Signed-off-by: Scott Rifenbark <srifenbark@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-05toaster: add Font Awesome licensebavery
Font Awesome fonts are bundled with the Toaster UI and are released under the SIL Open Font License 1.1. This patch adds that information to the LICENSE file. Signed-off-by: bavery <brian.avery@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-10-05bb.build: in _exec_task, catch errors from TaskStartedChristopher Larson
We don't always want a traceback when an exception is raised by the TaskStarted event handler. Silently return if we get a SystemExit or HandledException, and print the error and return for FuncFailed. This is done via a separate try/catch block, to avoid firing TaskFailed if all the TaskStarted event handlers didn't complete, otherwise the bitbake UIs get unhappy. Signed-off-by: Christopher Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>