diff options
author | Stephen Finucane <stephen@that.guru> | 2017-02-21 11:22:41 -0500 |
---|---|---|
committer | Stephen Finucane <stephen@that.guru> | 2017-03-20 19:15:09 +0000 |
commit | 9b81f1aed6cf9a5d223b9f788223f244a8a03215 (patch) | |
tree | a2dee2bbf1be53c98d64fb3a2c620ed36dda2c4b /patchwork/urls.py | |
parent | 0b4f508a84389fd2b3a9c2a5cfc2128468f2c600 (diff) | |
download | patchwork-9b81f1aed6cf9a5d223b9f788223f244a8a03215.tar patchwork-9b81f1aed6cf9a5d223b9f788223f244a8a03215.tar.gz |
REST: Add '/bundle' endpoint
I had initially resisted adding a '/bundle' endpoint to the API as I
wanted to kill this feature in favour of series. However, series are not
a like-for-like replacement for bundles. Among other things, series do
not provide the composability of bundles: bundles can be manually
created, meaning you can use bundles to group not only multiple patches
but also multiple series (or at least the patches in those series).
Seeing as we're not getting rid of this feature, we should expose it via
the API. Bundles are little unusual, in that they can be public or
private, thus, we should only show bundles that are public or belonging
to the currently authenticated user, if any. For now, this is a
read-only endpoint. We may well allow creation of bundles via the API
once we figure out how to do this cleanly.
Signed-off-by: Stephen Finucane <stephen@that.guru>
Reviewed-by: Andy Doan <andy.doan@linaro.org>
Diffstat (limited to 'patchwork/urls.py')
-rw-r--r-- | patchwork/urls.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/patchwork/urls.py b/patchwork/urls.py index 09b8b31..57d5cd7 100644 --- a/patchwork/urls.py +++ b/patchwork/urls.py @@ -158,6 +158,7 @@ if settings.ENABLE_REST_API: raise RuntimeError( 'djangorestframework must be installed to enable the REST API.') + from patchwork.api import bundle as api_bundle_views from patchwork.api import check as api_check_views from patchwork.api import cover as api_cover_views from patchwork.api import event as api_event_views @@ -208,6 +209,12 @@ if settings.ENABLE_REST_API: url(r'^series/(?P<pk>[^/]+)/$', api_series_views.SeriesDetail.as_view(), name='api-series-detail'), + url(r'^bundles/$', + api_bundle_views.BundleList.as_view(), + name='api-bundle-list'), + url(r'^bundles/(?P<pk>[^/]+)/$', + api_bundle_views.BundleDetail.as_view(), + name='api-bundle-detail'), url(r'^projects/$', api_project_views.ProjectList.as_view(), name='api-project-list'), |