Bug 3272

Summary: Implement web interface for indexing OpenEmbedded layers
Product: [Build System, Metadata & Runtime] Other YP Layers Reporter: Paul Eggleton <bluelightning>
Component: layersAssignee: Paul Eggleton <bluelightning>
Status: VERIFIED FIXED QA Contact:
Severity: enhancement    
Priority: Medium CC: belen.barros.pena, corneliux.stoicescu, poky.bs.watcher, poky.watcher, richard.purdie, sgw
Version: 1.4   
Target Milestone: 1.4 M4   
Hardware: All   
OS: Multiple   
Whiteboard:
OS type for building Yocto: --- Type of Regression: ---
Verified: Documentation change: ---

Description Paul Eggleton 2012-10-10 16:57:33 UTC
At the moment, we have a wiki page to index publicly available layers:

http://www.openembedded.org/wiki/LayerIndex

It would be useful to have a proper database-backed web interface for managing the list of these - we could record more information about each one (such as maintainer information) as well as gathering information from the layers themselves, potentially allowing searching for individual recipes or other information based on the layer content.

The basic implementation would at minimum need to provide the following:

* List of all layers in short form, similar to what the wiki page does at the moment (without needing to log in)
* Login and user registration system
* New layer registration interface with an approval system (i.e. new layers would need to be approved by one of a group of other authorised users)
* Email notification of changes (simplest case, just email a single address and we can use a mailing list; otherwise we could allow users to choose whether or not to recieve notifications)
* Search function
* A backend script to be run on a scheduled basis to clone/fetch each layer and gather information from each one, at minimum:
 * Recipe file names
 * Last commit date

Ideally this would be implemented using Python-based framework such as Django or Flask, then the backend script can access the metadata or otherwise make use of bitbake code and it will be more easily maintainable by people familiar with our build system.
Comment 1 Belen Barros Pena 2012-10-17 11:01:12 UTC
I think this would be incredibly useful. I'll be happy to help putting together the web interface.
Comment 2 Paul Eggleton 2013-03-29 21:36:39 UTC
The new layer index has now been set up:

 http://layers.openembedded.org/

The source code can be found here:

 http://git.yoctoproject.org/cgit/cgit.cgi/layerindex-web/
Comment 3 Stoicescu Cornel 2013-04-11 13:30:38 UTC
The following features ware tested:

* List of all layers in short form, similar to what the wiki page does at the moment (without needing to log in)
* Login and user registration system
* Email notification of changes (simplest case, just email a single address and we can use a mailing list; otherwise we could allow users to choose whether or not to recieve notifications)
* Search function

The rest are verified as per Paul Eggleton and community's input.

Marking as verified.