manage.py validate reports problems then says 'all jobs seem to be valid'
Bug #1297746 reported by
Zygmunt Krynicki
on 2014-03-26
This bug affects 1 person
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
| Checkbox |
High
|
Zygmunt Krynicki |
Bug Description
This was demonstrated during the plainbox provider info session
After removing the ID field and running validate, some jobs could not be validated (printing a few warnings/errors) but then manage.py printed 'all jobs seem to be valid'
Related branches
lp:~zyga/checkbox/fix-1297746
- Daniel Manrique: Approve on 2014-03-31
-
Diff: 505 lines (+153/-53)6 files modifiedplainbox/plainbox/impl/job.py (+35/-20)
plainbox/plainbox/impl/secure/providers/test_v1.py (+10/-7)
plainbox/plainbox/impl/secure/providers/v1.py (+55/-10)
plainbox/plainbox/impl/test_job.py (+16/-8)
plainbox/plainbox/provider_manager.py (+13/-1)
plainbox/plainbox/test_provider_manager.py (+24/-7)
Zygmunt Krynicki (zyga) wrote : | #1 |
Zygmunt Krynicki (zyga)
on 2014-03-26
Changed in checkbox: | |
status: | Confirmed → Triaged |
Zygmunt Krynicki (zyga) wrote : | #2 |
I think that to fix this bug we need to:
1) Remove the requirement to have 'id' to instantiate a job definition (allowing broken definitions to exist as objects)
2) Reject invalid jobs / providers in typical operations (probably complaining loudly as we do now)
3) Allow manage.py validate to work as intended
Zygmunt Krynicki (zyga)
on 2014-03-28
Changed in checkbox: | |
status: | Triaged → In Progress |
assignee: | nobody → Zygmunt Krynicki (zkrynicki) |
Zygmunt Krynicki (zyga) wrote : | #3 |
I've added a merge proposal with the initial implementation. I'll polish it a little and we can finish this task.
Zygmunt Krynicki (zyga)
on 2014-03-31
Changed in checkbox: | |
status: | In Progress → Fix Committed |
Zygmunt Krynicki (zyga)
on 2014-03-31
Changed in checkbox: | |
status: | Fix Committed → Fix Released |
To post a comment you must log in.
This only happens if we remove the 'id' field. This is because that field is validated separately at a lower level. Other fields are not validated when we load the provider (like the broken one here) and are only validated by `manage.py validate`.