Toaster needs to properly prompt the user and display
actionable help texts when the database is void of
meaningful information. This patch brings in the
"empty" states for pages.
[YOCTO #6755]
(Bitbake rev: 7cfe279bf77b59d5cbd20d8a93e1d33279bebc20)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Target input field needed to support both selecting suggestions and
typing targets, since Toaster doesn't always know about all the targets
provided by the layers in the project.
[YOCTO #7187]
(Bitbake rev: d753db7a18eb9218016e586171d2a08298a0b05d)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Avoid using keyup event to trigger form validation as this won't fire
for events such as pasting or autofill from the browser.
[YOCTO #7292]
(Bitbake rev: 2060be8d31baa0cd302aa8dc0b6d179df853ee99)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In firefox this link wasn't valid as it was inside a button element.
Remove this and add a click handler for the button.
(Bitbake rev: 97366eae1d5c2c84b03b3e019480e56e03f812da)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When dismissing the alert we actually want to keep the alert area still
in the dom for the use of future alerts. The default behaviour is to
remove it from the dom. Hide it again instead.
(Bitbake rev: b3af4f01856c1983f2e77293444e2c3c1b08f879)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Update layer notifications to the new wording for layer add remove
notifications.
Fix bug where the the alert area is being removed from the dom on
dismiss instead of re-hidden
(Bitbake rev: 2a571a4523dbbe9b6afcf2e6b41edf2cb059729d)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This feature for the machines page allows the user to add a layer and
it's dependencies to the current project and then if successful select
the machine(s) which become available due to being provided by the
layer.
AlexD merged the changes into the submission queue.
(Bitbake rev: ca4e4ab09ba214363181eeb8ad54ccc716bd65f3)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When a task fails, we keep the log and allow users to
download it. Make sure the download is provided in the
tasks table of the recipe details page.
[YOCTO #7207]
(Bitbake rev: 29837409a6cbabafe9e4d102e8143bab5ec22dc2)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Labels for the 'all' pages don't really convey what's provided in them.
The team has suggested we add the word 'compatible' to them,
to make clear they will show all layers / targets / machines that
can be built with the version of the build system you are
using in a certain project. A link like 'view all targets'
becomes 'view all compatible targets'.
I've also added some help text.
(Bitbake rev: 49d85b7035d12a6e482d608e828f69fcafb59d39)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch displays the current running mode and checked-out git branch
as Toaster version when running in debug mode.
(Bitbake rev: 93e4f8c44273f4657c5be4c00b61db12aa875e31)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Use the text() jQuery function instead of the html()
one for security reasons.
(Bitbake rev: b96457870b40ba60dd5c86d83c43093d09b70aea)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
When you search for targets or machines in the layer details
page and your search returns no results, you should
see a 'show all' link that you can click to clear the
search and display all table entries.
[YOCTO #7218]
(Bitbake rev: 70486fc36c5b6bd6b7b8e846e23ad4062d583877)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the editable version of the layer details page, the form to
add dependencies needs some distance from the dependency list.
(Bitbake rev: 2c576552118bcfe65d375ff809b3b4a4916da225)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In my struggle to ensure consistency in the format and content
of the notifications we show when you add and remove layers to
a project, I've:
* added the project name to the notifications
in the layer details page
* removed the 'Go to project configuration' link
from the notifications in the layer details page
This changes align the notifications we show in the layer
details page with the ones we show in the 'all' pages.
(Bitbake rev: 87deeb2016cbfdaff5531e1badb58761af6df848)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The bottom margin for dd tags nested inside forms is
set twice. Delete one of them.
(Bitbake rev: 4fcea0aad1ac715d6eb104f60972007bc2289569)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Layer, recipe and package details pages have a right column
with additional information. This commit standardises the
formatting of the content in that right column across
all these pages by creating a new css class .item-info
in default.css
(Bitbake rev: aed92feac017c967834575344faa3bad7a905b18)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Fixing the action on the "Build selected targets" button.
Remove "build-button" duplicate id from the build page.
[YOCTO #7047]
(Bitbake rev: 8278d7b15b58484af93d952e594f29dabb9200a9)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch fixes the "Run again" button for the completed builds.
[YOCTO #7173]
(Bitbake rev: 37125f2b52492f8bee465611e60514b365541892)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Remove the layer compatibility configuration option from the layer
details as this is not in the design.
(Bitbake rev: c46492f5599da8af16af05ecc2d7aa7a8660416b)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This commit adds the layer details page which shows the metadata for the
layer such as layer description, machines associated with the layer as well
as the targets provided.
If the layer is an imported layer this page also allows you to update
the layer's configuration.
>From this page you can add/remove the layer from the current project
(Bitbake rev: c1442bc68ad8ba20c37b1a7cde1400297f4be811)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch brings the project page in line with the design,
including build error handling and suggestions.
Includes some refactoring for already existing code.
[YOCTO #6587]
(Bitbake rev: 1ea658dcdfde5465d3ecdb97550e0a66cb8b122e)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Make use of the toastermain.settings.DEBUG flag to toggle the client
side error logging. Make the error logging consistent by using
console.warn/error across the project, this adds traceability to the
warnings. Also handles the case where console is not available by
stubbing it in libtoaster.
(Bitbake rev: c34ebc51a6cbf90c64ef1ac461e475c6341f0f2a)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the import layers notification for multiple layers
there was a full stop where there should be a colon.
(Bitbake rev: c23736003b788f2b45ae7cbcd7c7250ead2e5724)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Just giving a bit of space to the content of the error
messages we show when you try to import a layer that
already exists.
(Bitbake rev: 19b8ff1949072691dade96038af529200175843a)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Adds links to layer details for each of the layers that has been added
to the project.
(Bitbake rev: 07e5c7c82519604501feb7d892db330c610978e9)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This was causing validation issues as the layer name was being picked up
from a different location in the dom.
(Bitbake rev: 54165dd929ef304357806411cd70caf85b6132f0)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This changes when the dependencies are added to the project so that we
can know which ones were successfully added by waiting for the server to
respond with a list. This is more reliable because we may have specified
dependencies which are already in the project.
To pass this information to the project page a temporary cookie is used
with the values for the notification.
(Bitbake rev: 23ca89dc3e0f0ea387649f1e9e8d7d50846048d6)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This feature allows users to import layers from git into their current
project and associate it with the release of the current project and the
dependencies for the newly imported layer with existing layers.
It will also resolve the child dependencies of the dependencies added.
[YOCTO #6595]
(Bitbake rev: 017f5c746e894f9d87d927c848386459ea332378)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add two utility functions for editing project settings and returning the
layer "dependencies" for a specified layer.
(Bitbake rev: 5f98f245bdd381a141a018a7f9953a5510fbb4df)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
If the JSON data comes back from the request with an error set, have a
default handler which logs the error to the console.
(Bitbake rev: 9e3f2e2d985a575adb5520d8b517eac5ad6a15ed)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
All 'change' icons should have a tooltip that appears
when you hover over them. The tootlip says (fittingly):
"Change". Initialise those icons in the libtoaster.js
file so that they work outside the project page.
(Bitbake rev: c635dd71670030da78c52545d2bb32b8c485c1af)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In the new build button, it only makes sense to change
the selected project when there is more than one project
in the Toaster instance. If the number of projects is 1,
we hide the change project icon.
(Bitbake rev: e354a40d7dbcd85fea9d37d3983428e4470df2dd)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
In managed mode, we show the name of the project in the build
notifications of the all builds page. The way we show the
project requires modifying the default padding of the .alert
class. This patch makes sure the padding modification is
only applied in managed mode, i.e., when the project name
needs to be shown.
(Bitbake rev: d1cd8b229c402fae3499e35415ad79c0e11ee517)
Signed-off-by: Belen Barros Pena <belen.barros.pena@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Changing ToasterUI to log toaster exceptions on a different level than
build errors.
Updating the build dashboard to show Toaster exceptions.
We add extra logging to console for exceptions.
Fixed a problem where packages database entries were created instead of
being looked up in the database, conficting with entries created to
satisfy dependency information.
Toaster now checks for invalid states at startup and performs needed
cleanups.
Removed loading reference to jquery-ui.min.css as we do not have this
file.
(Bitbake rev: 2378812bc24d433125fb940f110154f0ce638448)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Only show new build button if we have defined at least one project as we
can't select a project to build against if there are no projects created
yet.
(Bitbake rev: 6daada59ee846c4e957bba3574dc262a0c79854d)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Get rid of the display:block attribute for the "View
all projects" link, to stop it from firing when you
click outside (but next to) the link
* Give some margin to the incomplete configuration
alert
(Bitbake rev: 83af0db872ea28965cd6007ad72ff210f67a4f30)
Signed-off-by: Belen Barros Pena <belen.barros.pena@linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Add a utility function to return a specified project's info/config
This re-uses the existing server code path for the project edit
except that it allows any project id to be used as a parameter
(Bitbake rev: af42ea5f006c5cf55a7c57a42904f412639d261f)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Replace main.js with libtoaster. This can be a place for common
functionality for toaster. Calling it lib... makes it more obvious as
well as helps with code readability due to the namespacing.
(Bitbake rev: cdf6178ae3675b40afca9f08d491ca1b7e45914e)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch modifies how layers are identified and matched.
Layers were primarely organized by the source of layer information,
and Releases were separated by both layer git branches and originating
source of layer information. This setup prevented mixing layers from
different sources for a certain release, which didn't match the way
people use Yocto Project / bitbake.
This patch brings name-based indentification, where layers with the
same name are assumed to be equivalent, in the sense of being able
to substitute one another. To facilitate this identification to
humans, layers are differentiated by GIT URI instead of layer sources,
which was a rather arbitrary abstraction.
Additional changes include modification to models in order accomodate
for the new data structure, and to config file loading to match
the new toasterconf.json layout.
(Bitbake rev: 4357200aed522ad56cfd84917f877645b83b6a70)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We close XSS injection points in Projects page.
* modify the json filter to properly escape HTML tags in strings
* enable $sanitize to automatically sanitize dangerous HTML in
user-supplied input
* clean dangerous characters in targets field, as that field contents
will be directly passed to a shell command
Based on the vulnerability discovered and the patch provided by Michael Wood.
(Bitbake rev: 23c440db9c076ca37e651bdbbdbefee54998e1dc)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We import angular services ngRoute and
ngSanitize that helps performing user-input
sanitization in order to prevent XSS.
Both services are version 1.2.23.
License is MIT.
(Bitbake rev: 4165895329b3a5e439a38ee749b089637dc502d7)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Small fixes to the UI of the project.html and targets.html templates.
In project.html:
* Remove some inline styles and replace them with declarations
in default.css
* Make sure that the 'add' and 'build' buttons in the project
configuration areas have nice, rounded corners
* Add some space between the machine name and the change icon
* Remove the input-prepend class from the build form (we don't
need it)
* Apply the success class to target names in completed builds
* Bold machine and project name in the change notifications to
match all other notifications
* There is a bug in Twitter Boostrap in tooltips inside buttons, so
moving the tooltip in the 'build' button outside the button tag
In targets.html, just add a missing space between the semicolon
and the first layer name in the add layer notification.
(Bitbake rev: 19113c4fe915be7db51ab06dfab5ea0797faea84)
Signed-off-by: Belen Barros <belen.barros.pena@intel.com>
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
The bootstrap version we are working with is 2.3 not 3
(Bitbake rev: 76c90fe9dcd6fc1aa7e82d9dca0ea9e653d322a1)
Signed-off-by: Michael Wood <michael.g.wood@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch implements the round 3 of reviews for the Project
page, including fixing the time display, fixing the build list
display, with fade-in and fade-out animations, and various
small layout fixes.
[YOCTO #6587]
[YOCTO #6731]
(Bitbake rev: 09e3ba8f800a03de731b022543cae33a46be17ef)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This is a combined set of fixes for the project, layers and targets
pages in the project section of toaster.
The fixes correct behaviour and look in various parts of the page,
including submitting XHR commands and updating the DOM with the correct
info.
(Bitbake rev: 96d7738f964784871c928c376cb9fbc9a275cf00)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
We add a static copy of the Angular's animate plugin,
version 1.2.23
Licensed under MIT.
(Bitbake rev: 12162fda32af4bc805d6ff5b0348d93befe2f623)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch definitivates the all layers page, providing interactivity
for adding and removing layers inside the project from this page.
[YOCTO #6590]
(Bitbake rev: e690080f83ad53c5e4a31e8c0fba2cc744eea1eb)
Signed-off-by: Alexandru DAMIAN <alexandru.damian@intel.com>
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
This patch rewrites the Project page and the additional
infrastructure in order to fix a bug that makes triggering
builds through UI impossible, and to introduce data feeds
for suggestions for the user.
Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>