Age | Commit message (Collapse) | Author |
|
|
|
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]
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
BuildInfoHelper was attempting to add packages to custom images,
supplying a project field so that the package only appears for
custom images inside the supplied project.
This field was missing from the CustomImagePackage model, which
was causing errors to be thrown.
Add the field to the model, and the migration to add it the the
database. Ensure that when CustomImagePackages are looked up,
the queryset is constrained to the project for the current build.
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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.
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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.
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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.
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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.
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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).
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
Temporary work-around to fix issue with builds failing due
to jffs2 and ext2 not being buildable, as provided by RP.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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"
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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]
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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]
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
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.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Add the download recipe link and fix the package count field.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Use libtoaster.createCustomRecipe rather than own implementation of this
function.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
This adds the function to call the ReSt API to create a custom image
recipe.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Returns a queryset of the all the packages that we expect to have in a
CustomImageRecipe.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Instead of returning layercommits return the actual Layer_Version objects
for the layercommit as these are the useful objects which contain the
metadata.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Add unit test to test downloading end point and the basic content of the
custom recipe that is generated.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Now that CustomImageRecipe inherits from Recipe make sure that the
accessors and the required values for Recipe are now setup correctly.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
- Fix generic variable names such as "object" and "values" when not
needed.
- Use try catch instead of a queryset filter to return the custom recipe
object
- Be explicit about the fields returned for the custom recipe info field
- Remove redundant new_package field
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Title is often very long so this is not a great property to use here.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
This page provides the details of recipes, showing their packages and
additional metadata. It also allows you to build the recipe or customise
the recipe if it is an image recipe.
[YOCTO #8070]
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Move the modal template and JS out of the newcustomimage page so that it
can also be used by the image details page.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Continuation of the work on the custom image recipe page, this brings
in:
- Basic notification of having added/removed a package.
- Connect up Build button
- Download recipe feature
- No packages states
- Project bread crumb
- Display additional recipe metadata
- Update accessors for recipe object inheritance changes
[YOCTO #8082]
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Create a Packages table for use as the image details page.
Change the SelectPackagesTable table to inherit from the Packages table.
Remove the need for a separate view by adding the additional template
context items to the Table's page context.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
View to provide the custom recipe download feature. The recipe is
generated on-demand to make sure that it is the most current version of
the Custom recipe.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Use the CustomImageRecipe generate_recipe_file_contents to generate the
recipe that we build from. Move creation of the dummy layer and recipe
object to the point of recipe creation as we need these objects before
the build time. Also update the methods to add and remove packages to
account for the CustomImageRecipe inheriting from Recipe.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Add function generate_recipe_file_contents to dump the custom image
recipe instance to a string for use either to push to the user as a
downloaded version of their custom image recipe or to use to generate
the recipe that we build.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
This adds the concept of CustomImagePackage this is similar to the way
layers and recipes work in that we have a set of data which is part of
the build history and a set of data which is part of the configuration
data that toaster uses to guide people in configuring their project. We
create a set of built_packages for every build but only create a package
for configuration purposes if we don't already have one, so that the
CustomImagePackage only ever contains a unique list of packages that are
available to be added and removed from a CustomImageRecipe.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
This table is used to track all the available packages in the current
toaster. Many of these packages belong to many CustomImageRecipes.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
This allows us to re-use the properties of a recipe for the custom image
recipes as well as re-using the existing templates and logic that deals
with recipe objects.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Add function that returns the Sum of the size of all the packages which depend on a package.
Access get_total_source_deps_size via a packages's dependency
manager.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Allow users of ToasterTable to manually trigger a refresh of the data.
This can be useful if an action has happened in-page and the data is now
invalid. Such as new data being added or removed from the model.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Move part of the functionality of the filter functions to the Table
widget. We don't need to implement it in each subclass.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Fall back to a 'n/a' string for the vcs reference, not all our source
has to be in a vcs and therefore it is legitimate for this to be none.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Update the reference to the base_recipe. It is now a Recipe object
rather than an intermediate AvailableRecipe object.
Therefore doesn't need an extra traverse down the object hierarchy.
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
|
|
Toaster script run bitbake with --postread conf/toaster.conf.
It turned out that variables set this way don't influence the
build. Changing --postread to --read makes bitbake to read
variables earlier and should fix this issue.
[YOCTO #8781]
Signed-off-by: Ed Bartosh <ed.bartosh@linux.intel.com>
Signed-off-by: Elliot Smith <elliot.smith@intel.com>
|
|
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>
|
|
If variables are unset, the code simply doesn't expand them, there
aren't errors. If the code is a python expression, this can get a bit
messy, see the attached test case. The python expansion code sees the }
of the unexpanded value rather than the close of the python expression
and then raises a SyntaxError exception.
Ideally, we'd update the code to match pairs of brackets. I don't know
how to do that with the current regex and this is unfortunately a
performance sensitive piece of code. We also run the risk of breaking
existing code in OE-Core where there are "{" characters but not "}"
to close them (PKGE and PE).
Rather than raising the exception, matching the existing "just return
the expression" behaviour seems more consistent with the standard
variable behaviour.
This addresses an issue found in the recent image.bbclass code where
there are some variables we choose not to expand (TMPDIR/DATETIME).
This patch also adds a test case for this behaviour. It wouldn't preclude
improved bracket matching code in the future either.
(Bitbake rev: d80d39e73223a50fda0090784303d2c57167bb4c)
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Signed-off-by: Ross Burton <ross.burton@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
|