Issue #3502
Can't list versions for a repository
Description
$ http http://localhost:8000/api/v3/repositories/e2bf7dc1-8638-420f-be13-1c60e660249f/versions/
HTTP/1.0 400 Bad Request
[
"No value supplied for content filter"
]
Bug was created in this PR:
https://github.com/pulp/pulp/pull/3373/files#diff-3072a203aa1fcb7d2fc8af1885d4d6ceR144
The problem is that I tried to make http http://localhost:8000/api/v3/repositories/e2bf7dc1-8638-420f-be13-1c60e660249f/versions/?content=
return a 400 error but it also affected requests where no content
filter is supplied. See the tasks endpoint as an example:
$ http http://localhost:8000/api/v3/tasks/
HTTP/1.0 200 OK
$ http http://localhost:8000/api/v3/tasks/?worker=
HTTP/1.0 400 Bad Request
[
"No value supplied for worker filter."
]
No idea why these filters are behaving differently.
Associated revisions
Revision 1cb4e194
View on GitHub
Fix defaulting of value to blank string when not specified
If content is not passed in, the filter still gets run with a blank string for some reason. Extending Filter instead of CharFilter seems to fix this.
History
#1
Updated by daviddavis almost 3 years ago
- Description updated (diff)
#2
Updated by dalley almost 3 years ago
- Tags Pulp 3, Pulp 3 MVP added
#3
Updated by daviddavis almost 3 years ago
This change seems to solve both issues but I am not sure why:
diff --git a/pulpcore/pulpcore/app/viewsets/repository.py b/pulpcore/pulpcore/app/viewsets/repository.py
index b386ce9..cc54c87 100644
--- a/pulpcore/pulpcore/app/viewsets/repository.py
+++ b/pulpcore/pulpcore/app/viewsets/repository.py
@@ -2,7 +2,7 @@ from gettext import gettext as _
import itertools
from django_filters.rest_framework import filters, filterset
-from django_filters import CharFilter
+from django_filters import Filter
from rest_framework import decorators, mixins, serializers
from pulpcore.app import tasks
@@ -119,7 +119,7 @@ class ExporterFilter(filterset.FilterSet):
]
-class RepositoryVersionContentFilter(CharFilter):
+class RepositoryVersionContentFilter(Filter):
"""
Filter used to get the repository versions where some given content can be found.
#4
Updated by dalley almost 3 years ago
- Priority changed from Normal to High
- Severity changed from 2. Medium to 3. High
- Triaged changed from No to Yes
- Sprint set to Sprint 34
#5
Updated by daviddavis almost 3 years ago
- Status changed from NEW to POST
- Assignee set to daviddavis
#6
Updated by daviddavis almost 3 years ago
- Status changed from POST to MODIFIED
Applied in changeset pulp|1cb4e194a9423c4e29ed3973ab45b3ef2bea54e0.
#7
Updated by dkliban@redhat.com almost 3 years ago
- Sprint/Milestone set to 3.0.0
#8
Updated by bmbouter almost 2 years ago
- Tags deleted (
Pulp 3, Pulp 3 MVP)
#9
Updated by bmbouter about 1 year ago
- Status changed from MODIFIED to CLOSED - CURRENTRELEASE
Please register to edit this issue
Fix defaulting of value to blank string when not specified
If content is not passed in, the filter still gets run with a blank string for some reason. Extending Filter instead of CharFilter seems to fix this.
fixes #3502 https://pulp.plan.io/issues/3502