Resultsdb - API v2.0 implementation
Changes since 1.0
* Removed `Jobs` and replaced with `Groups` to remove the "execution status" (originaly represented by `Job`) from ResultsDB,
but keeping the ability to group `Results`, as it might make semantical sense
* `Result` can be a part of 0-n `Groups`
* UUID as a default `Group` identifier instead of `id`
* In the response data:
*`href` (pointer to `self`) is only present in the resource's data, not in the general queries that return collections, since the 'search' queries' `href` was not permalink
* `ref_url` as a common "external url" attribute
* `Result.ref_url` instead of `Result.log_url`
* `Testcase.ref_url` instead of `Testcase.url`
* Changes in the `Group` object
* `results` is an URL at which `Results` in that particular `Group` can be
* `name` renamed to `description`
* Changes in the `Result` object
* `ref_url` instead of `log_url`
* `result_data` replaced with `data`
* `summary` replaced with `note`
* only `PASSED, FAILED, INFO, NEEDS_INSPECTION` are now valid `outcome` values
* `groups` is a list of `Group` urls which the `Result` is part of
* When submitting new `Result`, `Testcase` and `Group` \[`resource`\] can be represented either by the unique identifier \[`uid`\]
(`Testcase.name`, `Group.uuid`), or by `object` containing the `uid`, and any other applicable `resource`'s attributes
* `resource` is identified by `uid` and:
* exists -> `resource` is linked to the `Result`
* does _not_ exist -> `resource` is created. Other attributes are set to default values
* `resource` is identified by `object` and:
* exists -> relevant attributes of the `resource` are updated to the provided values
* does _not_ exist -> `resource` is created, relevant attributes are set to the provided values
* Changes in the `Testcase` object
* `ref_url` instead of `url`
* Changes in querying:
* `*` (star) used as a wildcard instead of `%` (percent sign) in the `like:` filters
* Result
* added `testcases` keyword to filter by `Testcase.name`
* `like` filter allowed
* multiple values can be provided, separate by commas to get `or` filter based on all the values provided: `...&testcases=name1,name2`
* Group
* `like` filter for `description`
* `_auth` placeholder for the Authorization/Authenticaion data in the Request queries; Ignored at the moment
API documentation is here: http://docs.resultsdb20.apiary.io/#
Differential Revision: https://phab.qadevel.cloud.fedoraproject.org/D999