Merge lp://staging/~doanac/qa-dashboard/live-status into lp://staging/~doanac/qa-dashboard/live-status-base
Status: | Superseded |
---|---|
Proposed branch: | lp://staging/~doanac/qa-dashboard/live-status |
Merge into: | lp://staging/~doanac/qa-dashboard/live-status-base |
Diff against target: |
381 lines (+319/-1) 5 files modified
qa_dashboard/settings.py (+5/-0) requirements.txt (+3/-0) smokeng/api.py (+119/-0) smokeng/tests.py (+187/-0) smokeng/urls.py (+5/-1) |
To merge this branch: | bzr merge lp://staging/~doanac/qa-dashboard/live-status |
Related bugs: |
Reviewer | Review Type | Date Requested | Status |
---|---|---|---|
Joe Talbott (community) | Approve | ||
Andy Doan | Pending | ||
Review via email: mp+196169@code.staging.launchpad.net |
This proposal has been superseded by a proposal from 2013-12-11.
Commit message
Add a REST API to Smoke objects
This gives us the ability to have our jenkins jobs notify the
dashboard in realtime about smoke status and not have to wait
until the job has been pushed to the public server and then
polled by the pull-script.
In addition to a fairly thorough set of unit-tests, I've also
created a pretty easy CLI to do some exploratory testing with:
http://
That script will probably land in the lp:ubuntu-test-cases/touch repo
in some form or another.
Some notes to keep in mind:
* The API does not allow for delete operations (just to help decrease
the amount of damage someone might accidentally do).
* It doesn't require auth[entication
use's Django users + Tastypie ApiKey for PUT and PATCH operations.
* I had to use two hacks with Tastypie:
1) 0.9.16 because 0.10 migrations don't work with python 2.7 and
django 1.5
2) settings.US_TZ had to be enabled as noted in the settings.py
due to a tastypie bug.
I'm not really excited about #2, but given the limited use of "writes"
we have in the dashboard, I think this may be fairly safe/isolated.
Description of the change
Add a REST API to Smoke objects
This gives us the ability to have our jenkins jobs notify the
dashboard in realtime about smoke status and not have to wait
until the job has been pushed to the public server and then
polled by the pull-script.
In addition to a fairly thorough set of unit-tests, I've also
created a pretty easy CLI to do some exploratory testing with:
http://
That script will probably land in the lp:ubuntu-test-cases/touch repo
in some form or another.
Some notes to keep in mind:
* The API does not allow for delete operations (just to help decrease
the amount of damage someone might accidentally do).
* It doesn't require auth[entication
use's Django users + Tastypie ApiKey for PUT and PATCH operations.
* I had to use two hacks with Tastypie:
1) 0.9.15 because 0.10 migrations don't work with python 2.7 and
django 1.5
2) settings.US_TZ had to be enabled as noted in the settings.py
due to a tastypie bug.
I'm not really excited about #2, but given the limited use of "writes"
we have in the dashboard, I think this may be fairly safe/isolated.
Unmerged revisions
- 694. By Andy Doan
-
merge with trunk
- 693. By Andy Doan
-
a hack to deal with tastypie bug
setting USE_TZ=True is pain. It causes lots of django warnings and
broke some of our exsiting test case logic. This backs out the
settings change for USE_TZ and monkey-patches the actual buggy spot
in code so that we can use the admin panel properly - 692. By Andy Doan
-
add unit test for ran_at type checking
NOTE: The fix for this is being merged into trunk, but this branch
already had a nice place to add a unit-test for it. See commit:http://
bazaar. launchpad. net/~doanac/ qa-dashboard/ smoke-pull- regression/ revision/ 691 for the fix this test is intended for
- 691. By Andy Doan
-
change tastypie requirement 0.9.15
This is whats been packaged. I've tested and it works the same
way. - 690. By Andy Doan
-
Add a REST API to Smoke objects
This gives us the ability to have our jenkins jobs notify the
dashboard in realtime about smoke status and not have to wait
until the job has been pushed to the public server and then
polled by the pull-script.In addition to a fairly thorough set of unit-tests, I've also
created a pretty easy CLI to do some exploratory testing with:http://
paste.ubuntu. com/6454113/ That script will probably land in the lp:ubuntu-test-cases/touch repo
in some form or another.Some notes to keep in mind:
* The API does not allow for delete operations (just to help decrease
the amount of damage someone might accidentally do).* It doesn't require auth[entication
|orization] for GETS, but
use's Django users + Tastypie ApiKey for PUT and PATCH operations.* I had to use two hacks with Tastypie:
1) 0.9.16 because 0.10 migrations don't work with python 2.7 and
django 1.52) settings.US_TZ had to be enabled as noted in the settings.py
due to a tastypie bug.I'm not really excited about #2, but given the limited use of "writes"
we have in the dashboard, I think this may be fairly safe/isolated.
wanted to share the branch, but I'd like to try and get one more unit test written to help make sure it plays nicely with the pull-script