summaryrefslogtreecommitdiffstats
path: root/bitbake
Commit message (Collapse)AuthorAgeFilesLines
* toaster: tests Remove symlinks from toasteruitest folderMihail Stanciu2016-02-112-2/+0
| | | | | | | | | | | Remove symlinks in the UI tests folder as they are causing problems for bitbake upstream. [YOCTO #8787] Signed-off-by: Mihail Stanciu <stanciux.mihail@intel.com> Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: build: Improve python execution tracebacksRichard Purdie2016-02-101-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If something fails in a exec_func_python() the current stack trace shows incorrect filenames and linenumbers. For example: The stack trace of python calls that resulted in this exception/failure was: File: '/media/build1/poky/meta/recipes-sato/images/core-image-sato.bb', lineno: 200, function: <module> 0196: chksum = bb.utils.sha256_file(fn) 0197: f.write('%s\t%s\n' % (chksum, os.path.relpath(fn, baseoutpath))) 0198: 0199: *** 0200:copy_buildsystem(d) 0201: File: '/media/build1/poky/meta/recipes-sato/images/core-image-sato.bb', lineno: 9, function: copy_buildsystem 0005:IMAGE_FEATURES += "splash package-management x11-base x11-sato ssh-server-dropbear hwcodecs" 0006: 0007:LICENSE = "MIT" 0008: *** 0009:inherit core-image 0010: 0011:IMAGE_INSTALL += "packagegroup-core-x11-sato-games" File: '/usr/lib/python2.7/subprocess.py', lineno: 535, function: check_call 0531: The arguments are the same as for the Popen constructor. Example: 0532: 0533: check_call(["ls", "-l"]) 0534: """ *** 0535: retcode = call(*popenargs, **kwargs) 0536: if retcode: 0537: cmd = kwargs.get("args") 0538: if cmd is None: 0539: cmd = popenargs[0] The problem is the use of "FILE" to obtain the current filename. Instead, we therefore inject the function being executed into the methodpool which allows us to correct its linenumber and filename information. We can then clearly mark the initial piece as autogenerated and the rest of the linenumber and filename information should be correct. Afterwards the trace starts: The stack trace of python calls that resulted in this exception/failure was: File: 'exec_python_func() autogenerated', lineno: 2, function: <module> 0001: *** 0002:copy_buildsystem(d) 0003: File: '/media/build1/poky/meta/classes/populate_sdk_ext.bbclass', lineno: 66, function: copy_buildsystem 0062: import glob 0063: import oe.copy_buildsystem 0064: import subprocess 0065: *** 0066: subprocess.check_call("foo") 0067: 0068: oe_init_env_script = d.getVar('OE_INIT_ENV_SCRIPT', True) 0069: 0070: conf_bbpath = '' File: '/usr/lib/python2.7/subprocess.py', lineno: 535, function: check_call 0531: The arguments are the same as for the Popen constructor. Example: 0532: 0533: check_call(["ls", "-l"]) 0534: """ *** 0535: retcode = call(*popenargs, **kwargs) 0536: if retcode: 0537: cmd = kwargs.get("args") 0538: if cmd is None: 0539: cmd = popenargs[0] We can't inject into methodpool at parsing time, since there may be _append or other override operations against the function before its execution. (Bitbake rev: fae153095d23157dd7e72c29f683f86149ee33a8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: build/data: Don't expand python functions before execution [API change]Richard Purdie2016-02-103-5/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Right now, if you have some python code like: X = "a" def somefunction(d): d.setVar("X", "b") d.setVar("Y", "${X}") then any sane person would expect that Y = "b" at the end of the function. This is not the case, Y = "a". This is due to the python function being expanded before execution, the executed code would read d.setVar("Y", "a"). This understandably confuses people, it also makes it near impossible to write ${} in a python function without unintended things happening. I think there is general agreement we should fix this and standardise on non-expansion of python functions. We already don't expand anonymous python (mostly). I've checked OE-Core with buildhistory before and after this change and there were a small number of issues this exposed which I've sent patches for. I propose we default to not expanding python code and then deal with any consequences from that if/as/where identified. This will improve new user understanding and usability of the system, it also allows several long standing weird expansion issues to be fixed. (Bitbake rev: 8bf33a8e92c0e188fa392030025756196c96fcbb) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: Don't expand python functions in variable dumpsRichard Purdie2016-02-101-2/+9
| | | | | | | | | | | | | | We don't want to expand python functions since they aren't expanded at execution time (e.g. anonymous python). They can also have side effects. This function is primarily used by toaster for variable dumps for later display. The lack of expansion of python functions won't matter in this case and actively helps some variable handling (e.g. SRCPV). (Bitbake rev: 3f5520b4844a4bdd615046479ba08ed192bdc8cd) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: data: Don't expand python functions for variable dependenciesRichard Purdie2016-02-101-6/+6
| | | | | | | | | | | | | Expanding python functions for variable dependencies doesn't really make sense, not least since this causes execution of any inline python, it also makes it impossible to write expressions like d.expand("${X}") of d.setVar("X", "${Y}") which may have the wrong values if expanded now. This starts to standardise the approach across bitbake for handling python code. (Bitbake rev: 765a2480dbe288f64562a9611dd93b6b6dd0a64e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: data_smart: Avoid expanding anonymous python functionsRichard Purdie2016-02-101-1/+1
| | | | | | | | | We don't expand anonymous python before execution, so nor should we do this when calculating checksums for them. (Bitbake rev: 5f10987edda35b08970a6dd6ccf9febad271ce3e) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: models Remove manual transaction control from lsupdatesMichael Wood2016-02-101-22/+1
| | | | | | | | | | | | | | | | | | Revert "toaster: models.py do not use transactions". This reverts commit e248a503ba84658dea086e65e9cde8b845b9c0ed (Bitbake rev: 48d0d510816346073f135bb86fb7904fdb50bb27) Manually managing the database transactions caused more problems than it temporarily solved so we return control back to Django's orm. [YOCTO #8796] (Bitbake rev: 25c531915b6f8f79a0822996ceb97f90483e359f) 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: build section Improve display of builds when > 1 targetsBelen Barros Pena2016-02-102-7/+12
| | | | | | | | | | | | | | | | | | | | * Display always the first target in alphabetical order to match what we do in the breadcrumbs and the build dashboard heading * Remove the extra space between the '+' and the additional number of targets * Make sure the tooltip with the full target list takes the Bootstrap tooltip styles * Replace the word 'targets' in the tooltip with 'recipes', since that's how we call build targets everywhere else in Toaster (Bitbake rev: 3b8747d0af4b9164e973940ed97751c951e74110) Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: templates make build data breadcrumb consistentBelen Barros Pena2016-02-103-5/+3
| | | | | | | | | | | | | | | | | | | | | The pages in the build data section of Toaster showed different breadcrumbs: in some pages the machine was displayed, but not in others. For builds with more than one target, some pages showed the first alphabetical target (the correct behaviour), others didn't. This patch removes the inconsistencies, showing exactly the same breacrumb across all pages in the section. The patch also removes the extra space between the '+' and the number of targets when the builds have more than one target. Remove an unneeded debug message (Bitbake rev: 9cdbb543311b6f4a8a88c27fc157d998242444ee) Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com> Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: BBHandler/ast: Merge handMethod and handleMethodFlagsRichard Purdie2016-02-102-31/+17
| | | | | | | | | | The functionality overlap between these two functions is significant and its clearer to handle both things together since they are intimately linked. There should be no behaviour change, just clearer code. (Bitbake rev: 391aa4afc91be90d8d3ee47e1bf797d6ebe61a71) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: utils: Drop datastore function inspection during exceptionRichard Purdie2016-02-101-9/+0
| | | | | | | | | | | When we use functions from the data store, they now have correct line number and filename information. This function would attempt to correct line numbers which doesn't need correcting, leading to misleading messages to the user. Therefore remove this code as being obsoleted. (Bitbake rev: 918bec86bc8ee94feb82380ff410d9fdcbe9e720) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: cooker: extended dot stylingSchroeder, Henning2016-02-101-3/+3
| | | | | | | | | | | | | | | Extended the dot styling of dependencies created by bitbake -g in dot syntax to differentiate between the various kinds. depends: solid rdepends: dashed rrecommends: dotted The change observed is that depends get an explicit style which is the same as dot default behavior and the runtime recommends get dotted while before they were dashed. This helps to distinguish them graphically as well as eases post processing by script. (Bitbake rev: 86e78e0ca7aa5452411f35239942ecee3d8824ec) Signed-off-by: Henning Schroeder <henning.schroeder@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: Enable Image Customisation featureMichael Wood2016-02-104-10/+0
| | | | | | | | | | Remove environment variable to toggle Image customisation feature (Bitbake rev: 2e9c86229b8f924a5b62987f4b166f63392f12e8) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: xhr_customrecipe_packages Add dependencies to included ↵Michael Wood2016-02-101-0/+12
| | | | | | | | | | | | | | packages Add the dependencies of packages which are added to the CustomImageRecipe. Currently just handle the first tier of dependencies as this is what we show in the UI. (Bitbake rev: 5c44609a9bf9fb23241b7dd7c58b08901d75008d) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: orm generate_recipe_content only exclude locale packagesMichael Wood2016-02-101-8/+3
| | | | | | | | | | | | Allow package groups in our custom image recipe. Excluding them creates more undefined behaviour than including them at this stage. Also update to use convenience method for returning all packages. (Bitbake rev: 8c2e8a13badacb816c4b1178b6661600008b38af) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: customrecipe page Add last successful build link and ↵Michael Wood2016-02-101-2/+11
| | | | | | | | | | | | | conditionals Add link to the last successful build if there is one and add conditionals for the ancillary recipe metadata. (Bitbake rev: 4660aaf1c6775270f8f3d0afbb7fa2ee7a2a1563) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: models Add update_package_list for CustomImageRecipeMichael Wood2016-02-101-2/+48
| | | | | | | | | | | | | | | Add a method to update the packages included list from the last build, this effectively "synchronises" the package list from what we think will happen at the Customise image stage with what actually was produced with a build. It's not ideal to have this function here but we also need to make sure that no race condition of the user accessing this list and it being updated occurs. (Bitbake rev: 8cf6e67a955574b33856a082bdadf3194f2b6ba4) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: orm Add last_updated field to CustomImageRecipeMichael Wood2016-02-102-0/+20
| | | | | | | | | | | Field to keep track of when the package list for the CustomImageRecipe was last updated from a build. (Bitbake rev: 4bd4e49f13a7625997a43f3b2e67ed42c3c8e08b) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: models add get_last_successful_built_target methodMichael Wood2016-02-101-0/+7
| | | | | | | | | | | Add a convenience method to get the last successful build target for a CustomImageRecipe. (Bitbake rev: 4dde3d830cd38bbe306d83629dcb80da5fc9b027) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: pkg_dependencies_popover just show direct dependenciesMichael Wood2016-02-101-2/+2
| | | | | | | | | | | In the dependencies popover just show direct dependency in the list rather than recommends, conflicts etc (Bitbake rev: e69b00532b011327bc2495a6fb52cfe98f0f897d) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: models add all_depends method for Package_DependencyManagerMichael Wood2016-02-101-0/+5
| | | | | | | | | | This convenience method returns just the Package_Dependency for the package which are regular dependencies i.e. not RECOMMENDS or any other types. (Bitbake rev: bd76c22fe2aa06690b4ee25de69219ac0bf6b4d6) Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: buildinfohelper CustomImagePackage update dependency infoMichael Wood2016-02-101-15/+4
| | | | | | | | | | | Instead of keeping the original dependency information for the pool of CustomImagePackage reset it with each new build. (Bitbake rev: a0b97ffc7a468bad081ce3276c74728bf6830250) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: newcustomimage_modal add frontend name validationMichael Wood2016-02-102-9/+35
| | | | | | | | | | | Add front end handling of validation response from create new CustomImageRecipe api. (Bitbake rev: eff66b502df8e001cd0abc25bcbd742687169619) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: API CustomImageRecipe check the recipe name supplied is validMichael Wood2016-02-101-0/+21
| | | | | | | | | | | | | Check that the name for a new CustomImageRecipe doesn't already exist in the project or in the database of existing recipes (e.g. from the layer index). Also restrict the characters entered for the recipe naming convention. (Bitbake rev: f290d428460a07e73050ff613bc222cc8c04f5ec) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: views CustomRecipe API add size information to the package ↵Michael Wood2016-02-101-2/+12
| | | | | | | | | | | | lists Add the file size of the packages and the total to the JSON response. (Bitbake rev: bbbd304c49b0940a695d15273934edff95d70836) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: models Invalidate ToasterTables cache when a m2m field changesMichael Wood2016-02-101-0/+1
| | | | | | | | | | | | | Whem a m2m field changes we need to clear the ToasterTables cache as this can affect the state of items in ToasterTables. For example the CustomImagePackages being added or removed from a custom image recipe. (Bitbake rev: c9d7b68ee0186a71e8e75a5d87122a0328001515) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: customrecipe Add dependency tracking to package selectionMichael Wood2016-02-104-31/+80
| | | | | | | | | | | | Update the states of the packages in the package selection UI to reflect whether it's likely that 1st level dependencies for the package will be also added. (Bitbake rev: 119569d83c3fb1d1bd162624819b3f9c63a791c4) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tables move template logic into the pkg_add_rm_btnMichael Wood2016-02-102-14/+16
| | | | | | | | | | | Instead of defining this as a string it's sufficiently large enough to warrant its own file. (Bitbake rev: 6b39423fe5a3ed30289a8b303329a5725f7d273b) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: CustomImageRecipe generate overwrite IMAGE_FEATURESMichael Wood2016-02-101-1/+1
| | | | | | | | | | | If we're breaking up an image recipe's packages we will also need to override IMAGE_FEATURES to make sure the customisation is not altered (Bitbake rev: 9fd7b05dc0cf9240f7c8e3dc77b009064fd2b0cb) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: make locale packages uneditable in custom image pageElliot Smith2016-02-104-2/+34
| | | | | | | | | | | | | | | | | | | | When the packages associated with a custom image recipe are shown in the customrecipe editing page, locale packages are shown in the same way as all other packages. This gives the false impression that these packages can be removed, when in fact they are automatically added due to the IMAGE_LINGUAS build variable. Modify the customrecipe page so that locale packages cannot be removed, and provide some help text explaining why. [YOCTO #8927] (Bitbake rev: b2208e53c00a67a7d0345e7378e6806b8ae40fb4) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: include locale and packagegroup packages in custom imageElliot Smith2016-02-101-7/+2
| | | | | | | | | | | | | | | The custom image editing page doesn't show locale and packagegroup packages: they are filtered out of the queryset used to populate the ToasterTable. Rather than filtering these packages out, include them in the list of packages which are shown. (Bitbake rev: 38a753e7b2e9ede326856b830b25e13bdd6d0d9b) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: update custom image package table filtersElliot Smith2016-02-101-26/+20
| | | | | | | | | | | | | | The custom image package selection filters were using the old ToasterTable filter approach, which caused the table filter to fail. Amend the table to use the new ToasterTable filtering API to fix this. (Bitbake rev: 72a4cb30842fd053e46dc56df222729cbe735162) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: move recent builds query to modelElliot Smith2016-02-104-25/+46
| | | | | | | | | | | | | | | | | | | | | The progress updater for the recent builds section makes a JSON call to the project view URL to get progress for each build. However, conversion of the builds pages to ToasterTable broke this, as the JSON response no longer contained the data necessary to populate the progress bars. Move the recent builds query to the Build model, so that it is accessible to the ToasterTables using it ("project builds" and "all builds"), as well as to the "project" view. Modify the code in the recent builds template to use the slightly different objects returned by the recent builds query on Build. (Bitbake rev: 5189252635ddc7b90c9a43aaed9f196c31e1dcad) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: update customimagerecipe migrationElliot Smith2016-02-101-0/+19
| | | | | | | | | | | | | | | | | | When applying migrations, Django shows this warning: "Your models have changes that are not yet reflected in a migration, and so won't be applied." This is because the customimagerecipe model has changed, but those changes are not covered by a migration. Add the missing migration to clear this warning. (Bitbake rev: df8185fcbd84061976d91b03b2a9268b319a6184) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: add merge migration to resolve conflictElliot Smith2016-02-101-0/+15
| | | | | | | | | | | | | | Django detects a conflict between a migration added to support image customisation and another migration which supports PROVIDES. Add a merge migration to resolve the conflict (as suggested by Django). (Bitbake rev: a26bfd9d2490dc0fd90bf6d1690e63ac26001559) Signed-off-by: Elliot Smith <elliot.smith@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: orm generate_recipe_file_contents Handler for require recipeMichael Wood2016-02-101-1/+23
| | | | | | | | | | | | | | | | | | Add a special case for when the recipe we have based a custom image recipe on requires another recipe. In this case we need to adjust the file location to be able to require the recipe when we're in the toaster-custom-images layer. For example: "require core-image-minimal.bb" is changed to: "require recipes-core/images/core-image-minimal.bb" (Bitbake rev: 26025e1ea49b3ebfcfd508d1608fa8c9e722ad03) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: project builds Poll the server to get latest progress for ↵Michael Wood2016-02-101-3/+61
| | | | | | | | | | | | | | | | build Poll the server for the project build progress value. This is something that will need to be re-done once we have a proper API for this on the server side. [YOCTO 8328] (Bitbake rev: ec467e43c39eadf02412b89db10c09ed78a5a9f5) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: localhostbectrl Update the dirpath of customrecipe's base ↵Michael Wood2016-02-101-0/+19
| | | | | | | | | | | | | | layer We need to know the location of the based_on recipe's layer on the file system before we try and generate the custom image recipe. As we read the recipe to make the custom version. (Bitbake rev: e6a7cacbddd1df5bac0b79384199cf7264c5bbd5) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tables Check layer presence in project for customise_btnMichael Wood2016-02-102-4/+13
| | | | | | | | | | | | Make sure we send the current list of layers to the customise button to be able to know whether it should be set as an add layer button or a customise button on the New custom image page. (Bitbake rev: 5ddb35c98b609d85f97d482b54cabe3a2812afe6) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: toastergui tests Add addtional data to the setUp for new ↵Michael Wood2016-02-101-25/+66
| | | | | | | | | | | | | | tables Add additional data to the setUp to be able to test all the tables for Image Customisation. Also add the name of the table being tested to the num of rows assertion. (Bitbake rev: dfcbcf789cf3f0733ca26b0601fdf97ce4291674) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tables SelectPackagesTable rename recipe_id to custrecipeidMichael Wood2016-02-102-6/+10
| | | | | | | | | | | | | Rename the recipe_id to custrecipeid to avoid confusion about which type of object we're going to be accessing. This means that in the unit tests for tables we can pass a different kwargs for custom recipes vs normal recipes. (Bitbake rev: ae3301a1047b3efb4b340b50a10d5d585b7333da) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: toastergui tests Update package test to use CustomImagePackageMichael Wood2016-02-101-9/+16
| | | | | | | | | | | | | | Update test for adding and removing a package from a CustomImageRecipe so that it uses the CustomImagePackage and correct fields for the packages included. Change the test for error condition to use an invalid package id as ManyToMany remove() on package that isn't in the relationship does not throw an error. (Bitbake rev: daccb2978f833a9e7af270160331da3e9a158219) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: customrecipe Add further front end features using new APIMichael Wood2016-02-103-33/+180
| | | | | | | | | | | | | | | | This adds some basic package dependency hint modals when you add and remove a package. It also makes sure that if the CustomImageRecipe has no current included packages that we go and check this with the server to see if a relevant build has taken place which will provide this information. [YOCTO #8082] (Bitbake rev: 418f5509e74d46d36a8eb966a245083006e5f4ba) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: xhr_customrecipe_packages add GET info for package responseMichael Wood2016-02-101-42/+98
| | | | | | | | | | | | | | Add response for GET to the xhr_customrecipe_packages ReST API /xhr_customrecipe/<recipe_id>/packages/<package_id> Thie response includes the id, name, version and dependency information for the package. (Bitbake rev: c45791fc85d26c43b0a3b0a459111d2ff5583540) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: xhr_customrecipe_id change to use CustomImagePackageMichael Wood2016-02-101-19/+23
| | | | | | | | | | | | | | Instead of doing a shallow copy of the package into the CustomImageRecipe when we add packages we can now use the CustomImagePackage as a M2M field on the Package to CustomImageRecipe. Also switch to using Target_Installed_Package as the method to retrieve the package list from the build. (Bitbake rev: 4ebc81823b3aec6ecf38835acad5263a81eb41c5) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: API allow CustomImageRecipe to be updated after creationMichael Wood2016-02-101-21/+35
| | | | | | | | | | | | | | | | | | | | When we create a CustomImageRecipe we create a Layer_Version and Recipe for that Recipe to be in, we only need one Layer_Version for our Recipes so if that Layer_Version is updated by building it we need a slightly more custom version of get_or_create to take into account the fields which we expect can change but still mean that the object we want is valid and doesn't need to be created. In the Recipe case this is when we're updating an existing CustomImageRecipe as we allow people to create a recipe even when the based on recipe hasn't been built so we need to update it once a build has happened. (Bitbake rev: 0fe2c72ab82c6de2825a390fbb460b892a7a9cfc) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tables Change SelectPackagesTable to use ProjectPackageMichael Wood2016-02-101-11/+16
| | | | | | | | | | | | This changes the SelectPackagesTable to use the ProjectPackage table instead of very large expensive queries to retrieve a list of currently available packages for the project. (Bitbake rev: 4b4b7e28d602ac5283659f806d695cc0451d292e) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: tables add recipe download link to CustomImagesTableMichael Wood2016-02-101-4/+10
| | | | | | | | | | Add the download recipe link and fix the package count field. (Bitbake rev: 85891e5320014f363dba093ac2db681d55375ee3) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: newcustomimage_modal use libtoaster method for new ↵Michael Wood2016-02-101-28/+8
| | | | | | | | | | | | | CustomRecipe Use libtoaster.createCustomRecipe rather than own implementation of this function. (Bitbake rev: 74fa98752b1cf1ad18d35ab6dd25fe7e409133c5) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bitbake: toaster: libtoaster Add createCustomRecipe methodMichael Wood2016-02-102-0/+28
| | | | | | | | | | | This adds the function to call the ReSt API to create a custom image recipe. (Bitbake rev: 03e7949f538733f682a05d0c318cf2f4cd64cbf5) Signed-off-by: Michael Wood <michael.g.wood@intel.com> Signed-off-by: brian avery <avery.brian@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>