|
@@ -54,24 +54,31 @@ class ProjectReleaseCommitsEndpoint(ProjectEndpoint):
|
|
|
repo_name = request.query_params.get("repo_name")
|
|
|
|
|
|
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
if repo_id:
|
|
|
- try:
|
|
|
- repo = Repository.objects.get(
|
|
|
- organization_id=organization_id, external_id=repo_id, status=ObjectStatus.ACTIVE
|
|
|
- )
|
|
|
- queryset = queryset.filter(commit__repository_id=repo.id)
|
|
|
- except Repository.DoesNotExist:
|
|
|
+ repos = Repository.objects.filter(
|
|
|
+ organization_id=organization_id, external_id=repo_id, status=ObjectStatus.ACTIVE
|
|
|
+ ).order_by("-date_added")
|
|
|
+
|
|
|
+ latest_repo = repos.first()
|
|
|
+ if latest_repo is None:
|
|
|
raise ResourceDoesNotExist
|
|
|
|
|
|
- elif repo_name:
|
|
|
- try:
|
|
|
- repo = Repository.objects.get(
|
|
|
- organization_id=organization_id, name=repo_name, status=ObjectStatus.ACTIVE
|
|
|
- )
|
|
|
- queryset = queryset.filter(commit__repository_id=repo.id)
|
|
|
- except Repository.DoesNotExist:
|
|
|
+ queryset = queryset.filter(commit__repository_id=latest_repo.id)
|
|
|
+
|
|
|
+ if repo_name:
|
|
|
+ repos = Repository.objects.filter(
|
|
|
+ organization_id=organization_id, name=repo_name, status=ObjectStatus.ACTIVE
|
|
|
+ ).order_by("-date_added")
|
|
|
+
|
|
|
+ latest_repo = repos.first()
|
|
|
+ if latest_repo is None:
|
|
|
raise ResourceDoesNotExist
|
|
|
|
|
|
+ queryset = queryset.filter(commit__repository_id=latest_repo.id)
|
|
|
+
|
|
|
return self.paginate(
|
|
|
request=request,
|
|
|
queryset=queryset,
|