Commit Graph

17 Commits

Author SHA1 Message Date
Alexandru DAMIAN
9677275d0d bitbake: toaster: fix builds page CSS and functionality
This patch fixes a set of CSS and functionality problems
with the build list page:

* Fix Recent Builds text styles
* Added proper links from Failed Tasks entries.
* Always Search returns to the first page of results.
* Clear search button appears only if search is active.
* Search shows the number of object, proper no objects found
* Various smaller fixes.

(Bitbake rev: 9164948e387a726f318f723f63e8d93435d7afe6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:07 +00:00
Barros Pena, Belen
594eeeba71 bitbake: toaster: Set .error styles for tables
Override the default styles of Twitter Bootstrap for table rows
with the .error class applied, and ensure that table cells and
anchor tags inherit the .error styles when their table row has
that class applied.

(Bitbake rev: 8b44955bb836ccad384718247ceb08d713ebc152)

Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:07 +00:00
Ravi Chintakunta
47d19237ef bitbake: toaster: All Tasks Feature with sorting and filtering
- Fixed the all tasks view and template  to match the UI design and use
the new basetable code.

- Added a method to views to add sort order icon to the view context.

- Default sort order when the page is loaded is displayed with the sort icon

- Filtering of columns

(Bitbake rev: b2f8de082c3ae41eb44e6ccdc283849b64d0b0f2)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
David Reyna
84b239086d bitbake: toaster: Implementation of recipe detail views
Add the new recipe detail page and update the view context accordingly.
Rename the recipe summary page to 'recipes.html' and add the respective
links to the recipe details page.

The views are based on specifications found in attachments to
	https://bugzilla.yoctoproject.org/show_bug.cgi?id=4299

[YOCTO #4299]

(Bitbake rev: d561000b6c4927ef6ec269e9ab7c70249b3c344a)

Signed-off-by: David Reyna <david.reyna@windriver.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
David Reyna
b45defd888 bitbake: toaster: Implementation of base build details page
This page is the standard base page for 'details' views. It is
based on 'basebuildpage.html' but does not include the build's
quick-link sidebar.

(Bitbake rev: 2d7e9a6f8464783e165804974a7d94b544c9a43f)

Signed-off-by: David Reyna <david.reyna@windriver.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
Ravi Chintakunta
05a684f6e5 bitbake: toaster: Added custom filter tags for use in templates.
- custom filter tag to return the css class based on
  the task execution status and execution outcome

- custom filters for active filter icon and tooltip text

- custom filter for displaying blank for None, zero, '0' and
  'Not Applicable'

(Bitbake rev: 1e9253984e6f107c6eed1c3b9df3a444076e2989)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:06 +00:00
Ravi Chintakunta
87776ca32e bitbake: toaster: Base table fixes for header text, sort icon and filter icon
- Display the table column header as a link only if it is sortable.
   Non-sortable column headers are displayed as plain text.

- Display the sort order by an up / down arrow icon next to the
   column header

- Add style for header in default.css

- Set tooltip for the active filter icon

- Pass the view name to the filter dialog

(Bitbake rev: 53ede15926d45b555252d77919a0568a984c6d74)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:05 +00:00
Ravi Chintakunta
4acdf8aaf1 bitbake: toaster: Base html fix to set the page title
Set title of the page if the context includes objectname.

(Bitbake rev: 8bfd140b93bcbfe8be4dd8a30268d3cc033e180f)

Signed-off-by: Ravi Chintakunta <ravi.chintakunta@timesys.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:05 +00:00
Alexandru DAMIAN
b0b1acbe62 bitbake: toaster: Toaster GUI Build and Dashboard pages fixes
THis is a large set of fixes for the generic table, Build and
Dashboard pages.

Among the fixes:
* the table remembers which columns to show across refreshes,
based on saving the settings in a cookie
* added column timespent for a build which is  a denormalization
of the completed_on - started_on information due to limits in
computing datetime differences in the SQL engine
* fixed formatting of the time differences
* various sorting header links fixed
* correct error and warning CSS classes applied to the
respective rows
* fixes multiple divide-by-zero error in displaying duration
estimations

(Bitbake rev: 61e3dee55ac577fce1c0ae0fe7e0d3cf644e8ae6)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:04 +00:00
Alexandru DAMIAN
d27c7f26d3 bitbake: toaster: add jquery cookie plugin
We add the jquery cookie plugin to allow us to save
and read local client date in cookie.

jquery-cookie using version 1.4.0 under MIT licence.

(Bitbake rev: 8ce1668dd93269add878f8ea69deb8b53f3bca8b)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:04 +00:00
Alexandru DAMIAN
15e52903fa bitbake: toaster: add vim modelines for .py files
No-op patch that adds vim modelines for all .py files
intended to be user-edited.

(Bitbake rev: 73271a7c6f1913c68a4b39ab86414f44acc04776)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-27 21:01:04 +00:00
Alexandru DAMIAN
1b636173ca bitbake: toaster: Toaster GUI, generic search, filter and order
This patch implements table searching, filtering and ordering, in a
generic mode reusable for all tables.

The search operates list of fields defined in the corresponding
class for each model, search_allowed_fields.

The search expression and filters are sent through GET requests
using a QuerySet-like input. The inputs are filtered and
validated before usage to prevent inadvertent or malicious use.

Filters and table headers are defined in the views for each table,
and rendered by generic code which is easily modified for various
tables.

The Build table and Configuration table are implemented using this
framework as an example of how it should be used.

    [YOCTO #4249]
    [YOCTO #4254]
    [YOCTO #4255]
    [YOCTO #4256]
    [YOCTO #4257]
    [YOCTO #4259]
    [YOCTO #4260]

(Bitbake rev: 2ca15117e4bbda38cda07511d0ff317273f91528)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:26 +00:00
Alexandru DAMIAN
5482409a37 bitbake: toaster: Build dashboard implementation
This patch adds the build dashboard page implementation,
which is the landing page for the Toaster GUI.

Also adds correct links from the main build page
to the various parts of the dashboard.

    [YOCTO #4258]

(Bitbake rev: bf7fbf5c0ee39564d813f82e194242f9d4f73c47)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:26 +00:00
Alexandru DAMIAN
2251426ae4 bitbake: toaster: Create the base page navigation structure
Updating the general container pages to use the graphical
design and features from the design phase.

In the process of adapting the Simple UI to the designed
interface, we create all the pages and the navigation
structure for the Toaster GUI.

Views for each page have been added, and the url mapping
has been updated to reflect newly added pages.

The table page has been refactored to be component-oriented
instead of class-oriented in order to facilitate reusage.

Changes are made in different layers of the template
(base, basetable) in order to maximize code reuse among
different pages in the build.

(Bitbake rev: d31f039ae31b77023722c06e66542751536a1362)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:25 +00:00
Alexandru DAMIAN
c2fc6ca2fa bitbake: toaster: update static media for Toaster GUI
In the process of making the GUI more usable, we
bring in the static assets used during the design
phase into the application.

Licenses used:

    Bootstrap 2.3.2 under Apache License 2.0
    Font Awesome under SIL OFL 1.1 (GPL compatible) and MIT licence
    GLYPHICONS Halflings released with Bootstrap, CC BY 3.0
    jQuery 2.0.3 under MIT licence
    prettify.js under Apache Licence 2.0

(Bitbake rev: 0b3d2000c0bcd2bb5a3af5d49a514a90f001a7d2)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:25 +00:00
Alexandru DAMIAN
47621ecb24 bitbake: toaster: clone Simple UI as base for Toaster GUI
This patch clones the Simple UI to provide the base code for
the development of the Toaster GUI. The clone takes the place
of the application that was reserved for Javascript MVC code.

The templates used for Simple UI are renamed to start with
an "simple_" to prevent name resolution conflict with the
Toaster GUI templates.

Minor changes are made to the settings.py and urls.py in the
toaster main section to account for the newly enabled application.

(Bitbake rev: e2fde84f16da017ba0d71aef6a1fa8e2b9255db4)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-01-10 15:20:24 +00:00
Alexandru DAMIAN
164ab730cc bitbake: toaster: add toaster code to bitbake
This patch adds the Toaster component to Bitbake.

Toaster is a module designed to record the progress of a
Bitbake build, and data about the resultant artifacts.

It contains a web-based interface and a REST API allowing
post-facto inspection of the build process and artifacts.

Features present in this build:
* toaster start script
* relational data model
* Django boilerplate code
* the REST API
* the Simple UI web interface

This patch has all the development history squashed together.

Code portions contributed by Calin Dragomir <calindragomir@gmail.com>.

(Bitbake rev: d24334a5e83d09b3ab227af485971bb768bf5412)

Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-10-18 11:13:49 +01:00