Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -23,7 +23,7 @@ jobs:
strategy:
fail-fast: false
matrix:
netbox_version: &nb_versions [v4.3.7, v4.4.10, v4.5.3]
netbox_version: &nb_versions [v4.3.7, v4.4.10, v4.5.5]
steps:
- name: Checkout
uses: actions/checkout@v3
Expand Down
16 changes: 8 additions & 8 deletions validity/graphql/filters.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
from strawberry_django import FilterLookup

from validity import models
from validity.netbox_changes import BaseModelFilter, NetBoxModelFilter
from validity.netbox_changes import BaseModelFilter, NetBoxModelFilter, StrFilterLookup


@strawberry_django.filter_type(Job, lookups=True)
Expand All @@ -20,13 +20,13 @@ class JobFilter(NetBoxModelFilter):

@strawberry_django.filter_type(models.ComplianceSelector, lookups=True)
class ComplianceSelectorFilter(NetBoxModelFilter):
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()


@strawberry_django.filter_type(models.ComplianceTest, lookups=True)
class ComplianceTestFilter(NetBoxModelFilter):
id: FilterLookup[ID] | None = strawberry_django.filter_field()
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()
selectors: Annotated["ComplianceSelectorFilter", strawberry.lazy("validity.graphql.filters")] | None = (
strawberry_django.filter_field()
)
Expand All @@ -53,12 +53,12 @@ def latest(self, queryset: QuerySet, value: bool, prefix: str) -> tuple[QuerySet

@strawberry_django.filter_type(models.Serializer, lookups=True)
class SerializerFilter(NetBoxModelFilter):
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()


@strawberry_django.filter_type(models.NameSet, lookups=True)
class NameSetFilter(NetBoxModelFilter):
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()
_global: Annotated["bool", strawberry.lazy("builtins")] | None = strawberry_django.filter_field(name="global")


Expand All @@ -69,12 +69,12 @@ class ComplianceReportFilter(BaseModelFilter):

@strawberry_django.filter_type(models.Poller, lookups=True)
class PollerFilter(NetBoxModelFilter):
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()


@strawberry_django.filter_type(models.Command, lookups=True)
class CommandFilter(NetBoxModelFilter):
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()
serializer: Annotated["SerializerFilter", strawberry.lazy("validity.graphql.filters")] | None = (
strawberry_django.filter_field()
)
Expand All @@ -86,7 +86,7 @@ class CommandFilter(NetBoxModelFilter):

@strawberry_django.filter_type(models.BackupPoint, lookups=True)
class BackupPointFilter(NetBoxModelFilter):
name: FilterLookup[str] | None = strawberry_django.filter_field()
name: StrFilterLookup | None = strawberry_django.filter_field()
data_source: Annotated["DataSourceFilter", strawberry.lazy("core.graphql.filters")] | None = (
strawberry_django.filter_field()
)
3 changes: 2 additions & 1 deletion validity/graphql/schema.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,7 @@

import strawberry
import strawberry_django
from strawberry.types import Info

from validity import models
from .filters import NameSetFilter
Expand Down Expand Up @@ -42,7 +43,7 @@ class Query:
@strawberry.field
def validity_nameset_list(
self,
info,
info: Info,
filters: NameSetFilter | None = None,
global_filter: Annotated[bool | None, strawberry.argument(name="global")] = None,
) -> list[NameSetType]:
Expand Down
6 changes: 6 additions & 0 deletions validity/netbox_changes/__init__.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,15 @@
different versions of NetBox together
"""

from pydoc import locate

from strawberry_django import FilterLookup

from validity import config


StrFilterLookup = locate("strawberry_django.StrFilterLookup") if config.netbox_version >= "4.5.5" else FilterLookup[str]

if config.netbox_version >= "4.5.0":
from .current import *
elif config.netbox_version >= "4.4.0":
Expand Down
4 changes: 2 additions & 2 deletions validity/views/report.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@
from netbox.views import generic
from utilities.views import ViewTab, register_model_view

from validity import filtersets, forms, models, tables
from validity import config, filtersets, forms, models, tables
from validity.choices import DeviceGroupByChoices, SeverityChoices
from .base import FilterViewWithForm, ObjectPermissionRequiredMixin, TestResultBaseView

Expand Down Expand Up @@ -103,7 +103,7 @@ def get_table(self, **kwargs):
return table

def get_table_kwargs(self):
return {"user": self.request.user}
return {"user": self.request.user} if config.netbox_version < "4.5.4" else {}

def get_context_data(self, **kwargs: Any) -> dict[str, Any]:
return super().get_context_data(**kwargs) | {
Expand Down
Loading