Commit Graph

405 Commits

Author SHA1 Message Date
Aníbal Limón
8c4d41b87b rrs: Recipes don't display if don't exit in Milestone
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
190bab9f45 rrs: Add support to display version by Milestone based on RecipeUpgrade's
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
af9c2fdc39 templates/rrs/recipes.html: Add button for search
Add button for search instead of did with keyUp function in the input
this avoid overprocessing and icrements usability.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
9312a1663c rrs: Maintainer statistics frontend improvments
Show percentage sign for every item in percentage column.

Don't display zero's in week columns instead use blank '' to
avoid noisy.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
9d6287ec7f rrs: Maintainers page fix maintainer count
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
f37f0c340e rrs: Improve recipes filtering
Now filter recipes are done by JS this avoid to made request for every
change in the filters also add support for share filters between pages.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
779a739a94 rrs: Add support for display Can't be updated recipe upstream status.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
ecd418bf62 rrs/fixtures/initial_data.json: Improve Milestone names.
Remove Release from milestone name.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
691bb04b8c rrs: Frontend improvments
templates/base.html: Disable login button and set content class
type to container-fluid when app is RRS.

templates/rrs/base_toplevel.html: Disable top functions.

templates/rrs/recipedetail.html: Fix class type for different
upstream status and better display of recipe info don't display
element if no have content.

rrs/views.py: Don't display percentages with two decimals and
separate filters for set and elements.

templates/rrs/recipes.html: Add support for display filters with
set and element separation.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
3c1a39c96c layerindex: Fix increase length of Recipe provides field
packagegroup-base provides packages that exceds 255 characters.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
54039c7185 rrs: Now display recipes when not found upstream info.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
4b53812b3f rrs: Maintainers add support for display statistics of recipe upgrades by week in Milestone.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
121961e078 templates/rrs/maintainers.html: Change the link from maintainer ownership from name to assigned recipes.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
107f651557 rrs: Recipes when upstream_status is Downgrade display as Unknown
In order to provide only one status when recipe upstream backend
script fails display display Unknown as Unknown + Downgrade.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:39 -05:00
Aníbal Limón
731c5153b5 rrs: Add Maintainer statistics page.
Maintainer statistics page gives information by Milestone and
Maintainers assigned recipes, status of recipes (up-to-date,
not-update, unknown) and percertange of work done.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
e3dc4b8502 rrs/views.py: Recipes modularize improve milestone statistics
Modularize get milestone statistics not at private function in order
to use in Manitainers view.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
fea82e7a03 rrs: RecipeDetail view fix
rrs/views.py: Now is necessary to test if a RecipeMaintainer exists by
milestone to avoid errors for undefined variables.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
30f300ed03 rrs/models.py: fix RecipeMaintainerHistory get_by_end_date.
If not maintainer info is found return None instead of the first
one entry in the table, this made reporting more consistency.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
4f67d06302 rrs: Add support for Recipe maintainership history
Now can you get maintainers based on Milestones.

Feature changes,

	rrs/models.py: Add RecipeMaintainerHistory to store maintainer updates.
	rrs/admin.py: Add admin site for RecipeMaintainerHistory.

Adapt changes,

Now you need to specify RecipeMaintainerHistory to get RecipeMaintainer,
changes into rrs/view.py.

These set of changes are incompatible with the previous version you need
to do initial setup described in README.rrs.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
0b123186c8 README.rrs: Add instruction for serve static content in development
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Belen Barros Pena
bd33f66e17 readme: add missing instruction
When setting up the rrs application you must uncomment
the 'rrs' line in INSTALLED_APPS. Adding that to the
settings.py configuration instructions.

Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
2d3bddc18c rrs: Add support for filter in recipes page.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
d14d182d2e rrs: Recipes page improve table display
Improve CSS in order to handle column width better also
use styles to display upstream status column.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
8912b27b51 rrs: Add support for Recipe detail page
Recipe detail page gives information about Recipe like summary,
section, license, file, etc. also display's upgrade history.

rrs/models.py: Milestone add get_by_date and rewrite get_current
for use get_by_date and RecipeDistro add get_distros_by_recipe.

rrs/urls.py: Add url for recipe_detail with pk.
rrs/views.py: Add RecipeUpgradeDetail view.
templates/rrs/recipedetail.html: Add recipedetail template.

templates/rrs/recipes.html: Add link to Recipe detail by row.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
03abe3d429 templates/base.html: Add link to Yocto Project when APP is RRS
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
1008a70f39 rrs: Recipes add url validation
Add url validation for Milestone and Upstream status and maintainer name
params if isn't valid raise HTTP 404.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
191ce79584 rrs: Add initial support of recipes page
templates/rrs/base_toplevel.html: Add support for display statistics by
Milestone.
templates/rrs/recipes.html: Add initial page that display Recipe
status by Milestone also details of every recipe.
rrs/views.py: Add RecipeLitView for support recipes page.
rrs/models.py: Add helper functions.
rrs/static/*: Add css and js resources.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
ed9363373a rrs: Add support for store RecipeUpstreamHistory
To provide statistics about RecipeUpstream information based on
Milestones we need to store RecipeUpstreamHistory that contains when the
update script was executed.

rrs/admin.py: Add admin page for RecipeUpstreamHistory.
rrs/models.py: Add model for RecipeUpstreamHistory with helper functions
for get last and last by date range also add migration.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
fb255de171 rrs: Add milestone selection bar for recipes and milestone.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
11df274e2b rrs: Add about page
templates/base.html: Discard bulk change and submit layer when app is
rrs.

templates/rrs/about.html: Add about page that extends of base.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
454c2620b9 rrs: Add README.rrs to help in setup.
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
cf5fc3580b layerindex: Add support for rrs in settings.py and urls.py
settings.py: Add APPLICATION variable to switch between layerindex
rrs also add context_processors decision layerindex or rrs.

urls.py: Add decision for load urls for layerindex or rrs.

layerindex/context_processors.py: Add application variable for use
templates.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
0ffee5e602 rrs: Add application
Add models for store Milestone, Maintainer and Recipe{Maintainer,
Upgrade, Upstream, Distro}, add initial data for Milestone and
Maintainer, initial migration and admin sites.

Add rrs/context_processors.py for return the site_name and application
for use in templates.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
0070ac8291 layerindex/admin.py: Change readonly fields from non-set to set
If you specify what fields are non readonly using get_all_field_names()
causes a fail when have two Apps because this method returns reference
to models in other App (foregin keys) that isn't defined.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Aníbal Limón
885c7f39a7 layerindex: Add support for store src_uri and depends into Recipe
This fields are needed by Recipe reporting system also add a migration
for this change.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2015-07-14 10:51:38 -05:00
Paul Eggleton
8966d2ea4e recipeparse.py: handle old BBFILES append method in layer.conf
Some layers use an older-style method to append a value to BBFILES,
namely BBFILES := "${BBFILES} ..." - this normally works fine, but in
our environment we don't order parsing of layers. That's probably wrong,
but for now just ensure BBFILES has a value to begin with as a
workaround.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-06-17 18:36:37 +01:00
Paul Eggleton
40f1d51de6 update.py: minor fixup for last commit
Fix up memory leak fix for bitbake in daisy and earlier which did not
have bb.codeparser.codecache.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-06-15 10:24:18 +01:00
Paul Eggleton
f4b4525858 update.py: fix memory leaks
We're kind of abusing some bitbake internals here and the result is that
there are a bunch of global lists and caches that simply grow as we
parse more layers, until available memory is exhausted. We don't care
about the contents of any of these within the layer index update script
so just clear them out between layers.

Should fix [YOCTO #7663].

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-06-15 00:03:43 +01:00
Paul Eggleton
2be084de64 Hide "updated" field changes in change history page
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2015-01-23 17:41:01 +00:00
Aníbal Limón
6ac4e8fbb5 layerindex/models.py: Branch model fix inital_data fixture
Add default = datetime.now attr to updated field of Branch
model because it fails when try to insert inital data with NULL.

Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2014-12-22 00:29:23 +00:00
Alexandru DAMIAN
40d05f928c adding updated field for certain models
We add an automatically-updateing "updated" datetime
field to Branch, LayerItem, LayerBranch, Recipe and
Machine models to allow date-based incremental updates
through the API.

The added field does not interfere with the existing
form-based pages (auto_now sets editable to false).

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
2014-09-24 11:32:34 +01:00
Alexandru DAMIAN
1d84f282de adding CORS policy for the API
We add the corsheaders application in order to
enable the CORS policy for the read-only REST API.

This is needed to allow AJAX queries to the layerindex
application from a browser environment.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
2014-09-24 11:32:34 +01:00
Alexandru DAMIAN
1c9d6be527 expose REST API for layerindex
This patch enables a read-only REST API for the layerindex
application using Django REST Framework.

The objects of types Branch, LayerBranch and LayerItem are
exposed to queries so that the layerindex application can
function as a Layer Source in Toaster.

The library dependencies are documented in the requirements.txt
file.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
2014-09-24 11:32:34 +01:00
Alexandru DAMIAN
99b9b014db adding environment description for virtualenv
General practice influenced by heroku.com is to create
a requirements.txt documenting the python library dependencies
for the project. This allows a user to easy setup a running
environment for the project using virtualenv and pip.

Extending .gitignore to ignore venv (reserved for virtualenv
use) and vim swap files.

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
2014-09-24 11:32:34 +01:00
Paul Eggleton
749793f55b Support newly added API for enabling variable history tracking
See:
http://cgit.openembedded.org/bitbake/commit/?id=a9439b136f55f3f0e80ff053cd3b159da69ba362

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-09-24 11:29:08 +01:00
Paul Eggleton
7a432108c0 tools/import_layer: fix errors in maintainer scraping code
* Fix "sre_constants.error: nothing to repeat" error due to .* inside
  group made optional with ? in regex
* Avoid error if maintainer responsibility is not specified

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-06-12 11:24:25 +01:00
Paul Eggleton
0ec1909051 update.py: fix not clearing recipe files list on reload
When we did a full reload this list wasn't getting cleared for the next
layer, and we look at the contents of the list unconditionally later to
determine which files need to be added. Given that the list items are
full paths, this is unlikely to have caused any problems; however it
could possibly have been an issue for nested layers with the right
update order, or lead to issues if the usage of the list changes in
future.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-06-12 11:21:09 +01:00
Paul Eggleton
ab393b18c6 update.py: ignore layers within layers
Some layers, such as meta-intel, also contain other layers. We don't
want recipes/classes/appends in those child layers to appear in the
parent layer so ignore any that appear within subdirectories that
contain a conf/layer.conf file.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-06-12 11:15:14 +01:00
Paul Eggleton
7c4a1c1dab update.py: fix layer exists-on-branch check
There was a logic error here - we were checking to see if the layer
directory existed before actually checking out the branch, which means
we were looking at the state of whatever branch was previously checked
out. Replace this with some validation of the last revision check and an
additional check for the directory after checking out the branch.

Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-05-24 17:29:23 +01:00
Paul Eggleton
f0b517796f update.py: use actual branch when getting last revision
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2014-05-24 17:23:56 +01:00