From 6d36b04d659ce71c3e31afb67f50d2b1ec7524ce Mon Sep 17 00:00:00 2001 From: Victor Seva Date: Thu, 9 Jun 2022 15:18:04 +0200 Subject: [PATCH] TT#15305 fix urls * don't add '^' twice for api urls * don't add format_suffix for gerrit/refresh * add missing format parameter for API views Change-Id: I2c8cef000c0aec3524302cc5c5a7a201f9cf90d1 --- build/views.py | 6 +++--- repoapi/urls.py | 12 ++++++------ repoapi/views.py | 24 +++++++++++------------- 3 files changed, 20 insertions(+), 22 deletions(-) diff --git a/build/views.py b/build/views.py index fce132c..dd5faf2 100644 --- a/build/views.py +++ b/build/views.py @@ -78,7 +78,7 @@ class BuildProject(APIView): class ReleaseJobs(APIView): - def get(self, request, release_uuid): + def get(self, request, release_uuid, format=None): br = get_object_or_404(models.BuildRelease, uuid=release_uuid) res = models.BuildRelease.objects.release_jobs(br.uuid) if res is None: @@ -87,7 +87,7 @@ class ReleaseJobs(APIView): class ReleaseJobsFull(APIView): - def get(self, request, release_uuid): + def get(self, request, release_uuid, format=None): br = get_object_or_404(models.BuildRelease, uuid=release_uuid) res = models.BuildRelease.objects.release_jobs_full(br.uuid) if res is None: @@ -96,7 +96,7 @@ class ReleaseJobsFull(APIView): class ReleaseJobsUUID(APIView): - def get(self, request, release_uuid, job): + def get(self, request, release_uuid, job, format=None): br = get_object_or_404(models.BuildRelease, uuid=release_uuid) jbis = models.BuildRelease.objects.release_jobs_uuids(br.uuid, job) if jbis is None: diff --git a/repoapi/urls.py b/repoapi/urls.py index 6990beb..529ae83 100644 --- a/repoapi/urls.py +++ b/repoapi/urls.py @@ -94,11 +94,6 @@ api_patterns = [ docker.DockerTagDetail.as_view(), name="dockertag-detail", ), - re_path( - r"^gerrit/refresh/$", - rd_api.RefreshGerritInfo.as_view(), - name="gerrit-refresh", - ), re_path(r"^build/", include("build.urls")), re_path(r"^release_changed/", include("release_changed.urls")), ] @@ -107,7 +102,7 @@ api_patterns = format_suffix_patterns(api_patterns) urlpatterns = [ re_path(r"^admin/", admin.site.urls), - re_path(r"^", include(api_patterns)), + path("", include(api_patterns)), re_path( r"^api-auth/", include("rest_framework.urls", namespace="rest_framework"), @@ -121,6 +116,11 @@ urlpatterns = [ path( "redoc/", SpectacularRedocView.as_view(url_name="schema"), name="redoc" ), + re_path( + r"^gerrit/refresh/$", + rd_api.RefreshGerritInfo.as_view(), + name="gerrit-refresh", + ), re_path(r"^panel/", include("panel.urls")), re_path( r"^release_panel/", diff --git a/repoapi/views.py b/repoapi/views.py index 65233f3..9d3a193 100644 --- a/repoapi/views.py +++ b/repoapi/views.py @@ -25,18 +25,16 @@ from .models import JenkinsBuildInfo as jbi @api_view(("GET",)) -def api_root(request, _format=None): +def api_root(request, format=None): return Response( { "jenkinsbuildinfo": reverse( - "jenkinsbuildinfo-list", request=request, format=_format + "jenkinsbuildinfo-list", request=request, format=format ), - "release": reverse( - "release-list", request=request, format=_format - ), - "build": reverse("build:list", request=request, format=_format), + "release": reverse("release-list", request=request, format=format), + "build": reverse("build:list", request=request, format=format), "release_changed": reverse( - "release_changed:list", request=request, format=_format + "release_changed:list", request=request, format=format ), } ) @@ -61,7 +59,7 @@ class JenkinsBuildInfoDetail(generics.RetrieveUpdateDestroyAPIView): class ReleaseList(APIView): - def get(self, request, _format=None): + def get(self, request, format=None): releases = jbi.objects.releases(flat=False) if releases is None: return Response([]) @@ -75,7 +73,7 @@ class ReleaseList(APIView): class ProjectList(APIView): - def get(self, request, release): + def get(self, request, release, format=None): params = {"flat": False} if "release_uuid" in self.request.query_params: params["release_uuid"] = self.request.query_params["release_uuid"] @@ -92,7 +90,7 @@ class ProjectList(APIView): class ProjectFullList(APIView): - def get(self, request, release): + def get(self, request, release, format=None): params = {} if "release_uuid" in self.request.query_params: params["release_uuid"] = self.request.query_params["release_uuid"] @@ -101,7 +99,7 @@ class ProjectFullList(APIView): class ProjectUUIDList(APIView): - def get(self, request, release, project): + def get(self, request, release, project, format=None): params = {"flat": False} if "release_uuid" in self.request.query_params: params["release_uuid"] = self.request.query_params["release_uuid"] @@ -119,7 +117,7 @@ class ProjectUUIDList(APIView): class UUIDInfoList(APIView): - def get(self, request, release, project, uuid): + def get(self, request, release, project, uuid, format=None): res = list() jbis = serializers.JenkinsBuildInfoSerializer jobs = jbi.objects.jobs_by_uuid(release, project, uuid) @@ -130,7 +128,7 @@ class UUIDInfoList(APIView): class LatestUUID(APIView): - def get(self, request, release, project): + def get(self, request, release, project, format=None): params = {} if "release_uuid" in self.request.query_params: params["release_uuid"] = self.request.query_params["release_uuid"]