summaryrefslogtreecommitdiff
path: root/bitbake/lib/bb/runqueue.py
Commit message (Collapse)AuthorAgeFilesLines
* bitbake/runqueue.py: We should just failoutright in scenequeue for noexec ↵Richard Purdie2010-12-161-4/+7
| | | | | | tasks, not skip them so stamps are created Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* runqueue.py: use correct task ID when checking validity of setscene tasksKevin Tian2010-12-141-5/+11
| | | | | | | | | | | | | | | | | | sstate hash validation is done at initialization of RunQueueExecuteScenequeue. However the index of 'valid' list returned from the validation doesn't correspond to setscene task ID. It's just an intermediate namespace between runqueue and sstate hash func. Use it as setscene task ID fully mess the flow. Previously this doesn't cause trouble because all setscene tasks are passed. Commit 58396a5d24c62710fd0a9f3780d84ac8a95d8e7c add 'noexec' concept to setscene tasks which grabs some tasks out of the list and thus trigger this problem Without this fix there're ~50 recipes (gzip-native, glib, ...) rebuilt weirdly with a minimal build, even though existing sstate packages could accelerate them. there's another typo using wrong task ID in a debug message which further hide this issue Signed-off-by: Kevin Tian <kevin.tian@intel.com>
* bitbake: Overhaul environment handlingRichard Purdie2010-12-091-0/+1
| | | | | | | | | | | | | | Currently, anything whitelisted in the environment makes it into the worker processes. This is undesireable and the worker environment should be as clean as possible. This patch adapts bitbake sosme variables are loaded into bitbake's datastore but not exported by default. Any variable can be exported by setting its export flag. Currently, this code only finalises the environment in he worker as doing so in the server means variables are unavailable in the worker. If we switch back to fork() calls instead of exec() this code will need revisting. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue: Teach scenequeue about noexec tasks (since they don't do ↵Richard Purdie2010-11-281-2/+9
| | | | | | anything we can assume they're always successful Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Fix stamp handling for noexec tasksRichard Purdie2010-11-281-1/+1
| | | | | | | This means the noexec messages are only shown once as the stamp files are now correctly created. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake.runqueue.py: Fix no exec task handling to correct counter housekeepingRichard Purdie2010-11-071-2/+4
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Add support for 'noexec' tasksRichard Purdie2010-11-061-0/+12
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/siggen: Allow siggen code to control final stampfile formatRichard Purdie2010-11-061-3/+6
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* pseudo/fakeroot: Move the pseudo directory creation into bitbakeRichard Purdie2010-10-221-0/+4
| | | | | | | | | | | | | | If sstate was used to accelerate a build, the pseudo directory might not have been created leading to subsequent task failures. Also, sstate packages were not being installed under pseudo context meaning file permissions could have been lost. Fix these problems by creating a FAKEROOTDIRS variable which bitbake ensures exists before running tasks and running the appropriate setscene tasks under fakeroot context. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake-runtask: Ensure logging settings take effect in the worker process ↵Richard Purdie2010-10-141-0/+1
| | | | | | (and pass verbose setting) Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue: make the runtask program configurableJoshua Lock2010-10-121-1/+2
| | | | Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake-runtask: Ensure logging options are inherited from the parentRichard Purdie2010-10-111-0/+3
| | | | | | [BUGID #291] Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Fix invalid variable reference fixing the -f option ↵Richard Purdie2010-10-071-1/+1
| | | | | | with setscene tasks Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/sstate: Implement a lookup function to speed up setscene processingRichard Purdie2010-10-051-1/+25
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Pass task hash information to subprocessesRichard Purdie2010-09-281-1/+22
| | | | | | | Pass task has informaiton to work processes, allowing full manipulation of the hash data in the task context allowing checksums to be usable. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue: Remove now unneeded indentationRichard Purdie2010-09-131-45/+44
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Optimise delay values to avoid unneeded delaysRichard Purdie2010-09-131-9/+9
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: save the initial PATH for use when starting a subprocessJoshua Lock2010-09-081-0/+1
| | | | | | | | | | | It was possible for bitbake-runtime to be run against a semi-installed python-native resulting in tracebacks with ImportError's. To prevent this we stash the initial PATH in the BBConfiguration when bitbake is started and then set this in the env when launching bitbake-runtask through subprocesses Popen() call. Signed-off-by: Joshua Lock <josh@linux.intel.com>
* bitbake: Implement signaturesRichard Purdie2010-09-031-1/+37
| | | | | | Includes functionality to find out what changes between two different singature data dumps. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Ensure rqexe always exists and that empty task lists ↵Richard Purdie2010-08-251-3/+16
| | | | | | cause a graceful exit Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Correctly route events from the worker to the serverRichard Purdie2010-08-201-1/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Ensure the flush happens as late as possible to avoid ↵Richard Purdie2010-08-191-3/+3
| | | | | | data mixups Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Fix runqueue UI issuesRichard Purdie2010-08-191-17/+27
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Switch to use subprocess for forking tasks and FAKEROOTENV to run ↵Richard Purdie2010-08-191-76/+58
| | | | | | shell and python under a fakeroot environment Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Initial scenequeue implementation (needs major fixes)Richard Purdie2010-08-191-24/+262
| | | | | | | bitbake: scenequeue: Skip setscene if the underlying task already ran bitbake/setscene: Make sure uneeded dependencies are removed recursively Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Factor task skipping code into a functionRichard Purdie2010-08-191-5/+8
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Create RunQueueExecute and RunQueueExecuteTasks ↵Richard Purdie2010-08-191-128/+144
| | | | | | classes, further splitting up runqueue Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/cooker.py: Allow idle handlers to pass through a true valueRichard Purdie2010-08-191-1/+3
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake/runqueue.py: Drop duplicated classRichard Purdie2010-08-191-6/+0
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Split Runqueue into two classes, a data processor and the execution ↵Richard Purdie2010-08-181-105/+116
| | | | | | part Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* *: cosmetic whitespace removalBernhard Reutner-Fischer2010-08-031-1/+1
| | | | | | | (Bitbake rev: 2ed36a3d57de25e1af31d657a7b0b14857e5056a) Signed-off-by: Bernhard Reutner-Fischer <rep.dot.nop@gmail.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Let the runqueue find the user selected scheduler dynamicallyChris Larson2010-08-031-5/+15
| | | | | | | | | | | Searches the module (bb.runqueue) for any new style classes which are instances of RunQueueScheduler, and uses the one whose 'name' attribute matches the value of BB_SCHEDULER. (Bitbake rev: 6497cedf9cfc03201250af816995dd2bd85c36ef) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Add support for .bbappend files (see mailing lists for detais)Richard Purdie2010-07-161-1/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Allow passing of success/failure handlers to ↵Richard Purdie2010-07-161-5/+5
| | | | | | runqueue_process_waitpid() Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Allow taskname to be passed to check_stamp_task()Richard Purdie2010-07-161-4/+5
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Make child process error scary so user is less likely to ↵Richard Purdie2010-07-161-1/+1
| | | | | | ignore Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Fix number of running tasks accounting (include failed tasks)Richard Purdie2010-07-161-1/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Remove unneeded exception catching from fork_off_task()Richard Purdie2010-07-161-3/+0
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Separate out task forking code into a new functionRichard Purdie2010-07-161-56/+61
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: runqueue: Combine the waitpid result handling code into a functionRichard Purdie2010-07-161-28/+21
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* bitbake: Remove two layers of unnecessary functions from task executionRichard Purdie2010-07-161-2/+12
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Apply some 2to3 refactoringsChris Larson2010-07-021-1/+1
| | | | Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Show a traceback when a task fails due to an exceptionChris Larson2010-07-021-3/+4
| | | | | | | (Bitbake rev: 5bb24832761bd518cb0249125f67939e0cbd0998) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Don't tell the user we're sending SIGINT to the remaining 0 tasksChris Larson2010-07-021-6/+7
| | | | | | | (Bitbake rev: 0b963e52eca0447d5bbfc87d826ad662fe940381) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Apply some 2to3 transforms that don't cause issues in 2.6Chris Larson2010-07-021-6/+5
| | | | | | | (Bitbake rev: d39ab776e7ceaefc8361150151cf0892dcb70d9c) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Apply the 2to3 print function transformChris Larson2010-07-021-2/+2
| | | | | | | (Bitbake rev: ff2e28d0d9723ccd0e9dd635447b6d889cc9f597) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Import fixupsChris Larson2010-07-021-1/+1
| | | | | | | (Bitbake rev: 4fa052f426e3205ebace713eaa22deddc0420e8a) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Formatting cleanupsChris Larson2010-07-021-47/+46
| | | | | | | (Bitbake rev: 2caf134b43a44dad30af4fbe33033b3c58deee57) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Ensure we always utilize the correct messaging domainsChris Larson2010-07-021-1/+1
| | | | | | | (Bitbake rev: 92a2e2e90981c0615171abe03645a772d84f6986) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
* Fix 7 references to undefined variables, as spotted by pyflakesChris Larson2010-03-251-1/+1
| | | | | | | (Bitbake rev: e1e4ccf203e38070eeafd31a622671996cff61a1) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>