Notify a user when a test fails in LAVA

Registered by Paul Larson

User Stories:
As a tester, I want to be notified when a test fails.

Pasted from email discussion about this:
IMHO the best way to achieve this is to expose the Test / TestCase hierarchy on the website and allow people to "watch" failures of a particular test. If this works well but starts spamming people too much we can add additional second-level filter like 'on particular hardware etc'.

Blueprint information

Status:
Complete
Approver:
Andy Doan
Priority:
Essential
Drafter:
Spring Zhang
Direction:
Approved
Assignee:
Michael Hudson-Doyle
Definition:
Approved
Series goal:
Accepted for trunk
Implementation:
Implemented
Milestone target:
milestone icon 2012.08
Started by
Fathi Boudra
Completed by
Fathi Boudra

Sprints

Whiteboard

[fboudra, 2011-09-30] Acceptance is missing.
[fboudra, 2011-09-30] Set definition: drafting-> approved and implementaton: not started->started as a work item is done.
[fboudra, 2011-10-25] re-target to backlog.
[doanac, 2012-06-12] here's a rough mock-up of what I was thinking for a page under "preferences/notifications": http://people.linaro.org/~doanac/linaro-platforms-o-notify-on-failure.mockup.png
[qzhang, 2012-06-28] In progress building a form for user selection.
[fboudra, 2012-06-29] Bump to 2012.07
[fboudra, 2012-07-02] As agreed with Andy, set the priority high->essential to make sure it will be the first blueprint delivered for this cycle.
[dzin, 2012-07-27] Move to 12.08 for code review
[mwhudson, 2012-08-24] I've picked this up, the history/work items are unfortunately a bit muddled now.

UI for subscribing is available on https://validation.linaro.org/lava-server/dashboard/filters/

Meta:
Headline: Users can now subscribe on LAVA to test failures notification.
Acceptance: Users can subscribe to a test case from the website and receive e-mail notification on failures.
Roadmap id: LAVA2012-LAVA-HEALTH-MANAGEMENT

(?)

Work Items

Work items:
Define data model for managing these options: DONE
Create preferences page to display the options: DONE
Send a signal when bundle is deserialized: DONE
Notify the watchers of a test case that failed: DONE
Create UI for subscribing: DONE

Dependency tree

* Blueprints in grey have been implemented.

This blueprint contains Public information 
Everyone can see this information.