process: Ensure abnormal exits set an error level

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
toaster: rename bldviewer projecttags custom tagset

We rename the projecttags in bldviewer.templatetags to
simple_projecttags in order to avoid conflict with the
similarly named tagset in toastergui.

The conflict leads to an intermittent bug where proper
tags are not read correctly since Django uses only the
module name as global tag library identificator.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
toaster: bitbake server listen on all interface

We change the toaster starting script to make the
bitbake server listen on all interfaces on the local machine.

This is needed to be able to receive a controlling client
running on a remote machine.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
toaster: enable SSH-based remote build support

We enable support for starting builds on remote machines
through SSH. The support is limited to poky-based distributions.

We refactor localhost build support and we update
bldcontrol application tests to uniformely test the APIs
of localhost and SSH build controllers.

[YOCTO #6240]

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
toaster: do not save objects in session

In order to avoid problems when using JSON serializer for
saving sessions, we move from storing the objects themselves
in the session to storing the object id and reloading the
object when retrieved.

This allows, for example, to use cookie-storage sessions if the
infrastructure owner so desires.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
toaster: use cookies for count and sorting in templates tables

Until now cookies were used to save which columns were shown and which
were hidden in toaster tables. The tables from the templates also have
functionalities like sorting the entries on a certain column and
limiting the number of entries displayed on a page. The later however
were not saved using cookies. This patch brings this new feature.

The cookies are not saved only in the front-end. They are saved both
in the frontend in case the user uses the inputs/buttons to change
a parameter and also in the backend in case the user specifies manually
using GET variables the value of the parameters.

When no GET parameters are given the views will redirect the url to one
containg the parameters saved as cookies. When no cookies exist, default
values will be used.

[YOCTO #6126]

Signed-off-by: Marius Avram <marius.avram@intel.com>
toaster: fix some code spacing issues

Code is related to the basetable templates files.
It had mixed tabs and spaces and was miss aligned in various places,
making it hard to read.

Signed-off-by: Marius Avram <marius.avram@intel.com>
tinfoil: add a means of enabling variable history tracking

Unfortunately it seems like the external use of the cooker
enableDataTracking() function broke at some point since the code that
reads it now runs within BBCooker's constructor. Since this now has to
be done early, add a parameter to Tinfoil's constructor to allow
enabling variable history tracking.

Fixes [YOCTO #6676].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
siggen/runqueue/bitbake-worker: Improve siggen data transfer interface

We need to transfer some of the siggen data from the core/cooker into
the worker instances. There was a partial API created for this but
its ugly and its not possible to extend it from the siggen class.

This patch completes the interface/abstraction for the data and
means the class can extend/customise it in any siggen class.

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bin/bitbake: Update to version 1.23.2

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
data_smart: Fix remove operator and its interaction with data expansion

If you have:

FOO = "${bindir}/X Y"
FOO_remove = "${bindir}/X"

the expected result is "Y". Currently this doesn't work since the removed
expressions are not expanded first. This patch adjusts things so the
expressions are expanded before being processed for removal.

Also add a test to ensure this case continues to work.

[YOCTO #6624]

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
data_smart: Clarify what 'computed' means in the data store history context

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
bitbake-worker: Fix bitbake -n

Without this you see:

File "bitbake/bin/bitbake-worker", line 201, in fork_off_task
    os._exit(child())
TypeError: an integer is required

Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
world-image: add extra target

* similar to world target, but collects all PACKAGES
* recipes marked with EXCLUDE_FROM_WORLD are excluded from world as well
  as world-image
* recipes marked with EXCLUDE_FROM_WORLD_IMAGE are excluded completely
  from world-image, sometimes you can build 2 recipes in same sysroot,
  but cannot install them in the same image
* PACKAGES listed in EXCLUDE_PACKAGES_FROM_WORLD_IMAGE are also
  excluded. You can remove e.g. ${PN}-dbg, but keep all other PACKAGES.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>