aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)Author
2018-05-04rrs_upgrade_history: drop unused importPaul Eggleton
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs_upstream_history.py: support maintenance plans and remove poky hardcodingPaul Eggleton
Remove hardcoded references to the poky repository, and process layerbranches for all enabled maintenance plans. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs_upstream_history.py: drop threadingPaul Eggleton
This is never going to work, the only way we can practically do parallel execution is to run these things in a task which would basically amount to distrodata's do_checkpkg; we may move to that in future but for now just drop the threading code. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs_maintainer_history.py: support maintenance plans and remove poky hardcodingPaul Eggleton
Instead of hardcoded references to the poky repository, look for any maintainers.inc file in layers associated with the layerbranches for all enabled maintenance plans. At present few layers have this file, but at least it will now work generically in any layer index instance. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs/tools/common.py: import sys/os at topPaul Eggleton
These are common enough that they should be imported up front. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04utils: decode command output in runcmd() as UTF-8Paul Eggleton
Sometimes we get back UTF-8 characters (particularly when picking up names from git commits), and the ascii codec will error out if that happens, so switch over to utf-8. We can as a result remove the decode() calls from the bulk change view. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs: fix model string representations for Python 3Paul Eggleton
__unicode__ doesn't work anymore, we need to use __str__ for models instead. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs_upgrade_history.py: add maintenance plan handlingPaul Eggleton
Instead of processing all layerbranches, only process those associated with an enabled maintenance plan. This is one step towards being able to use the RRS together with a more general layer index database. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs/tools: avoid unnecessary checkoutsPaul Eggleton
We don't need to create branches here, and we don't need to actually check anything out unless we're going to parse, so we can save a bit of time by not doing so. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs: show full name in adminPaul Eggleton
It's neater to show "Recipe Reporting System" instead of "Rrs". Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs: add Release link to MaintenancePlanPaul Eggleton
If any Releases exist then we create a default MaintenancePlan and then link all Releases to it - this needs to be done in multiple upgrade steps since the field needs to be non-null. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs: add maintenance plansPaul Eggleton
The MaintenancePlan will provide some context for the RRS records so we can effectively enable RRS functionality only on certain layers where we want it. You can also consider the maintenance of multiple layers together under a single plan if desired. Here we add just the MaintenancePlan and the corresponding migration; a non-null link from the Release requires a separate migration and thus that will be done in a separate commit. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs: add initial migrationPaul Eggleton
This is of course a new Django migration rather than the previous South one. This will have to be applied using --fake-initial on a database that already has the RRS tables. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs: drop old migrationsPaul Eggleton
These south migrations aren't useful. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs/tools: add dry-run option to each scriptPaul Eggleton
Add the ability to run the scripts without writing changes back to the database, for debugging purposes. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04Use this layer index's URL for layer branchPaul Eggleton
If we're integrating the layer index and the RRS, no need to jump off to the OE index if for example this is an internal index. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04Rename RRS URLs to have rrs_ prefixPaul Eggleton
Make these distinct from the layerindex ones. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04Drop "load url from future"Paul Eggleton
This is no longer needed with current Django versions. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs/tools/rrs_unique_recipes: dropPaul Eggleton
We can't just delete arbitrary recipes that do exist in the layer if we're in a general layer index database. We'll need to handle this in a different way, or just live with the fact that there will be duplicate entries. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs/models: move Raw class to views.pyPaul Eggleton
This is something that really belongs in with the views, so move it there. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
2018-05-04rrs/tools/rrs_{distros,upstream_history}: Add path for poky meta libAníbal Limón
Due to bitbake client/server changes now the meta path isn't included to sys.path when load tinfoil. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_upstream_history.py: Change regex variables to tupleAníbal Limón
This are causing a failure when access the remote datastore. File "rrs/rrs/tools/rrs_upstream_history.py", line 169, in <module> set_regexes(recipe_data) File "rrs/rrs/tools/rrs_upstream_history.py", line 53, in set_regexes if any(d.getVar(var, True) for var in variables): File "rrs/rrs/tools/rrs_upstream_history.py", line 53, in <genexpr> if any(d.getVar(var, True) for var in variables): File "/srv/rrs/layers/bitbake/lib/bb/data_smart.py", line 608, in getVar return self.getVarFlag(var, "_content", expand, noweakdefault, parsing) File "/srv/rrs/layers/bitbake/lib/bb/data_smart.py", line 723, in getVarFlag local_var, overridedata = self._findVar(var) File "/srv/rrs/layers/bitbake/lib/bb/data_smart.py", line 480, in _findVar return connector.getVar(var) File "/srv/rrs/layers/bitbake/lib/bb/tinfoil.py", line 62, in getVar value = self.tinfoil.run_command('dataStoreConnectorFindVar', self.dsindex, name) File "/srv/rrs/layers/bitbake/lib/bb/tinfoil.py", line 316, in run_command raise TinfoilCommandFailed(result[1]) bb.tinfoil.TinfoilCommandFailed: Traceback (most recent call last): File "/srv/rrs/layers/bitbake/lib/bb/command.py", line 81, in runCommand result = command_method(self, commandline) File "/srv/rrs/layers/bitbake/lib/bb/command.py", line 465, in dataStoreConnectorFindVar datastore = command.remotedatastores[dsindex] File "/srv/rrs/layers/bitbake/lib/bb/remotedata.py", line 39, in __getitem__ return self.datastores[key] TypeError: unhashable type: 'list' Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04templates/rrs/recipedetail.html: Change Maintainer to CommitterAníbal Limón
To avoid confusion about who is the current maintainer. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/views.py: When export to csv use release_milestone.csvAníbal Limón
To be more descriptive about what report is. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_upstream_history.py: Disable threads due to new tinfoil APIAníbal Limón
The new tinfoil API don't support pythreads so set to 1 while tinfoil have support. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_distros.py: Don't open files in binary modeAníbal Limón
It ends on failures with Python 3.x when do a split method over binary data. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_upgrade_history.py: Remove mp process related codeAníbal Limón
The new tinfoil API acts as a client/server so isn't need to work around creating process to avoid errors in cooker with different data revisions. Also add a try/except when create an upgrade display the error. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/common.py: Fix typo when load recipesAníbal Limón
[YOCTO #10863] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools: Upgrade to use new API of tinfoilAníbal Limón
The new client/server API of tinfoil requires explicit call of shutdown method to send the event for finalize cooker process. [YOCTO #10863] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools: Upgrade to use transaction.atomic() in Django 1.6Aníbal Limón
Django 1.6 provides a context manager for atomic transactions so update the way for make db transactions. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04templates/rrs/recipedetail.html: Fix unneeded quotes in url callAníbal Limón
The url template function resolve an URL associated with a model, so in Django 1.6 quotes around variables don't get the variable value. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/common.py: When load a recipe use tinfoil cacheAníbal Limón
Due to multi-configuration builds in bitbake now is needed to use a tinfoil cache instance instead of call directly in bb.cache. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_upgrade_history.py: Fix import of split_recipe_fnAníbal Limón
split_recipe_fn function was moved to update_layer during python3 upgrade in layerindex. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/common.py: common_setup() Add layerindex to the path.Aníbal Limón
Add explicity layerindex folder to the path for avoid errors in imports. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04layerindex,rrs: Minor changes to work with python3.Aníbal Limón
[YOCTO #9746] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs: Frontend update to work with Python3 and djangoAníbal Limón
[YOCTO #9746] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_maintainer_history.py: Update to point new meta-poky repository.Aníbal Limón
Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04tools/rrs_distros.py: Fix distro_check.create_distro_packages_list callAníbal Limón
Now create_distro_packages_list requires d to be passed, this change was done to enable proxy support into create_distro_packages_list function. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs: Fix frontpage redirectAníbal Limón
We was experimenting fixed redirects due to urls are cached at init of rrs. Move the redirect Release, Milestone selection to a view called FrontPageRedirect. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/tools/rrs_upstream_email.py: Update message to point recipe fileAníbal Limón
instead of deprecated upstream tracking file. Since upstream_tracking.inc file is deprecated because now every recipe has it's own upstream information then update email message according it. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04Show the 'Upstream version' column only when relevantBelen Barros Pena
Currently the recipes table always shows the 'Upstream version' column. However, for recipes up-to-date, this column is irrelevant, since for such recipes 'version' always equals 'upstream version'. Since the vast majority of the recipes are up-to-date, when you are showing all the recipes the 'upstream version' column is also pretty useless. The column is only really relevant when you are looking at recipes with status 'not updated' or 'can't be updated'. I would have thought there would be nothing to show in the 'Upstream version' column for recipes with status 'Unknown', but it turns out some of those do have an upstream version value, that I thought might be useful to the maintainer somehow. So, this patch hides the 'Upstream version' column whenever you are looking at all the recipes or up-to-date recipes; and shows it when you select any of the other recipe statuses Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
2018-05-04rrs/recipes: Add support for persist search and filters.Aníbal Limón
Now when search something the URL is modified and you can share the URL for access to the data. [YOCTO #7809] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/urls.py: Disable permanent (301) redirection on main view.Aníbal Limón
Don't redirect permanently in main view because the first URL needs to point to the current release, so use permanent = False to return a 302.. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04Update tool URL in status emailBelen Barros Pena
The status email sent to the Yocto Project mailing list by the Recipe Reporting Tool still shows the old URL (http://packages.yoctoproject.org). This patch changes it to the new URL: http://recipes.yoctoproject.org Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs_upstream_history.py: Fix use regexes in packagesAníbal Limón
Make difference when handling suffixes or preffixes like 'nativesdk-' when try to use regexes in packages that have suffixes like '-crosssdk' it can contain the arch into it like binutils-crosssdk-x86_64. Use split method in suffixes and replace method into preffixes, this fixes issues with suffixes containing archs at end. [YOCTO #8102] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/views: Fix mismatch in summary and recipe listMariano Lopez
This fixes the issue with the mismatch in the statistics bar and the recipe list. The mismatch is caused by the gcc-source recipe, because every version of the recipe is counted in Upstream History but not in Recipe Upgrade. Also added the TODO.rrs to track bugs and issues with rrs. Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04templates/rrs/recipes.html: Re-add the sort property into Maintainer.Aníbal Limón
When last updated colum comes we lost the sort property. Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/base_toplevel.html: Navbar redesignMariano Lopez
This provides changes in the front end for the navbar, now it shows the percentage of recipes up-to-date, not update, unknown and can't be updated along with the number of recipes. This also moves the update percentage to the end and adds clarity to what it means. This also moves the export list button the the top bar. [YOCTO #8020] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs/views.py: Added percentages for navbarMariano Lopez
This adds the percentage for all the recipes types (up-to-date, not updated, unknown, can't be updated) so it can be displayed in the navbar. This also adds the number of the recipes not updated at the begining of the period and number of recipes updated in the period. The changes in the frontend are still missing, this just adds the functionality. [YOCTO #8020] Signed-off-by: Mariano Lopez <mariano.lopez@linux.intel.com> Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>
2018-05-04rrs: avoid too many columns in the recipes tableBelen Barros Pena
Currently, when you select 'Can't be updated' in the upstream status filter, the resulting table will add the 'No update reason' column to the default column set. Although this is probably useful information to see in the table itself, it results in too many columns, and a rather unpleasant layout change. This patch hides the 'Summary' column whenever you select 'Can't be updated' in the upstream status filter, effectively replacing the 'Summary' with the 'No update reason' column, which is probably more relevant in this context. Now you have less columns distracting you, and a slightly less jumpy layout change. A designer would have come up with this solution in the first place. Sadly, she was never asked. Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com> Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com>