From 5b5e506f8829a590767c0708490727c5b3d7c583 Mon Sep 17 00:00:00 2001 From: ryanmerolle Date: Fri, 29 Jul 2022 17:38:01 +0000 Subject: [PATCH] lint corrections --- .devcontainer/configuration/configuration.py | 3 +- .flake8 | 2 + .pre-commit-config.yaml | 52 ++++++++++--------- netbox_access_lists/api/serializers.py | 8 ++- netbox_access_lists/api/views.py | 3 +- netbox_access_lists/filtersets.py | 2 +- netbox_access_lists/forms/__init__.py | 3 +- netbox_access_lists/forms/bulk_edit.py | 29 ++++++----- netbox_access_lists/forms/filtersets.py | 20 ++++++- netbox_access_lists/forms/models.py | 1 - netbox_access_lists/models/__init__.py | 1 + .../models/access_list_rules.py | 2 +- netbox_access_lists/models/access_lists.py | 2 +- netbox_access_lists/tables.py | 2 +- 14 files changed, 80 insertions(+), 50 deletions(-) create mode 100644 .flake8 diff --git a/.devcontainer/configuration/configuration.py b/.devcontainer/configuration/configuration.py index 0da3f9e..b7a56cf 100644 --- a/.devcontainer/configuration/configuration.py +++ b/.devcontainer/configuration/configuration.py @@ -1,9 +1,8 @@ +# Based on https://github.com/netbox-community/netbox-docker/blob/release/configuration/configuration.py import re from os import environ from os.path import abspath, dirname, join -# For reference see https://netbox.readthedocs.io/en/stable/configuration/ -# Based on https://github.com/netbox-community/netbox/blob/master/netbox/netbox/configuration.example.py # Read secret from file def _read_secret(secret_name, default=None): diff --git a/.flake8 b/.flake8 new file mode 100644 index 0000000..1fd4893 --- /dev/null +++ b/.flake8 @@ -0,0 +1,2 @@ +[flake8] +max-line-length = 160 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 2229037..b70e2ed 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -2,26 +2,14 @@ repos: - repo: https://github.com/pre-commit/pre-commit-hooks rev: v4.3.0 hooks: - - id: trailing-whitespace - - id: end-of-file-fixer - - id: check-yaml + - id: check-docstring-first - id: check-merge-conflict + - id: check-yaml - id: debug-statements + - id: end-of-file-fixer - id: name-tests-test - id: requirements-txt-fixer - - id: check-docstring-first - - repo: https://github.com/asottile/add-trailing-comma - rev: v2.2.3 - hooks: - - id: add-trailing-comma - args: - - "--py36-plus" - - repo: https://github.com/asottile/pyupgrade - rev: v2.37.3 - hooks: - - id: pyupgrade - args: - - "--py37-plus" + - id: trailing-whitespace - repo: https://github.com/PyCQA/isort rev: 5.10.1 hooks: @@ -34,6 +22,22 @@ repos: hooks: - id: black language_version: python3 + - repo: https://github.com/asottile/add-trailing-comma + rev: v2.2.3 + hooks: + - id: add-trailing-comma + args: + - "--py36-plus" + - repo: https://github.com/PyCQA/flake8 + rev: 4.0.1 + hooks: + - id: flake8 + - repo: https://github.com/asottile/pyupgrade + rev: v2.37.3 + hooks: + - id: pyupgrade + args: + - "--py37-plus" #- repo: https://github.com/adrienverge/yamllint # rev: v1.26.3 # hooks: @@ -52,11 +56,11 @@ repos: rev: v0.32.1 hooks: - id: markdownlint - - repo: local - hooks: - - id: wily - name: wily - entry: wily diff - verbose: true - language: python - additional_dependencies: [wily] + #- repo: local + # hooks: + # - id: wily + # name: wily + # entry: wily diff + # verbose: true + # language: python + # additional_dependencies: [wily] diff --git a/netbox_access_lists/api/serializers.py b/netbox_access_lists/api/serializers.py index b11fc22..c116db3 100644 --- a/netbox_access_lists/api/serializers.py +++ b/netbox_access_lists/api/serializers.py @@ -97,7 +97,9 @@ class AccessListSerializer(NetBoxModelSerializer): # Check that the GFK object is valid. if "assigned_object_type" in data and "assigned_object_id" in data: try: - assigned_object = data["assigned_object_type"].get_object_for_this_type( + assigned_object = data[ # noqa: F841 + "assigned_object_type" + ].get_object_for_this_type( id=data["assigned_object_id"], ) except ObjectDoesNotExist: @@ -175,7 +177,9 @@ class ACLInterfaceAssignmentSerializer(NetBoxModelSerializer): # Check that the GFK object is vlaid. if "assigned_object_type" in data and "assigned_object_id" in data: try: - assigned_object = data["assigned_object_type"].get_object_for_this_type( + assigned_object = data[ # noqa: F841 + "assigned_object_type" + ].get_object_for_this_type( id=data["assigned_object_id"], ) except ObjectDoesNotExist: diff --git a/netbox_access_lists/api/views.py b/netbox_access_lists/api/views.py index 9cf7729..2db85ba 100644 --- a/netbox_access_lists/api/views.py +++ b/netbox_access_lists/api/views.py @@ -18,7 +18,8 @@ from .serializers import ( __all__ = [ "AccessListViewSet", "ACLStandardRuleViewSet", - "ACLInterfaceAssignmentViewSet" "ACLExtendedRuleViewSet", + "ACLInterfaceAssignmentViewSet", + "ACLExtendedRuleViewSet", ] diff --git a/netbox_access_lists/filtersets.py b/netbox_access_lists/filtersets.py index 326850e..40728f4 100644 --- a/netbox_access_lists/filtersets.py +++ b/netbox_access_lists/filtersets.py @@ -7,7 +7,7 @@ from dcim.models import Device, Interface, VirtualChassis from netbox.filtersets import NetBoxModelFilterSet from virtualization.models import VirtualMachine, VMInterface -from .models import * +from .models import AccessList, ACLExtendedRule, ACLInterfaceAssignment, ACLStandardRule __all__ = ( "AccessListFilterSet", diff --git a/netbox_access_lists/forms/__init__.py b/netbox_access_lists/forms/__init__.py index 9e74634..c2ed3dd 100644 --- a/netbox_access_lists/forms/__init__.py +++ b/netbox_access_lists/forms/__init__.py @@ -1,9 +1,10 @@ +# flake8: noqa """ Import each of the directory's scripts. """ # from .bulk_create import * -from .bulk_edit import * +# from .bulk_edit import * # from .bulk_import import * # from .connections import * diff --git a/netbox_access_lists/forms/bulk_edit.py b/netbox_access_lists/forms/bulk_edit.py index 4a62ca9..81b4dd8 100644 --- a/netbox_access_lists/forms/bulk_edit.py +++ b/netbox_access_lists/forms/bulk_edit.py @@ -2,21 +2,22 @@ Draft for a possible BulkEditForm, but may not be worth wile. """ -from dcim.models import Device, Region, Site, SiteGroup, VirtualChassis -from django import forms -from django.core.exceptions import ValidationError -from django.utils.safestring import mark_safe -from netbox.forms import NetBoxModelBulkEditForm -from utilities.forms import ( - ChoiceField, - DynamicModelChoiceField, - StaticSelect, - add_blank_choice, -) -from virtualization.models import VirtualMachine +# from dcim.models import Device, Region, Site, SiteGroup, VirtualChassis +# from django import forms +# from django.core.exceptions import ValidationError +# from django.utils.safestring import mark_safe +# from netbox.forms import NetBoxModelBulkEditForm +# from utilities.forms import ( +# ChoiceField, +# DynamicModelChoiceField, +# StaticSelect, +# add_blank_choice, +# ) +# from virtualization.models import VirtualMachine + +# from ..choices import ACLActionChoices, ACLTypeChoices +# from ..models import AccessList -from ..choices import ACLActionChoices, ACLTypeChoices -from ..models import AccessList # __all__ = ( # 'AccessListBulkEditForm', diff --git a/netbox_access_lists/forms/filtersets.py b/netbox_access_lists/forms/filtersets.py index 5e37852..82427bc 100644 --- a/netbox_access_lists/forms/filtersets.py +++ b/netbox_access_lists/forms/filtersets.py @@ -66,6 +66,14 @@ class AccessListFilterForm(NetBoxModelFilterSetForm): }, required=False, ) + virtual_machine = DynamicModelChoiceField( + queryset=VirtualMachine.objects.all(), + required=False, + ) + virtual_chassis = DynamicModelChoiceField( + queryset=VirtualChassis.objects.all(), + required=False, + ) type = ChoiceField( choices=add_blank_choice(ACLTypeChoices), required=False, @@ -83,7 +91,17 @@ class AccessListFilterForm(NetBoxModelFilterSetForm): fieldsets = ( (None, ("q", "tag")), - ("Host Details", ("region", "site_group", "site", "device")), + ( + "Host Details", + ( + "region", + "site_group", + "site", + "device", + "virtual_chassis", + "virtual_machine", + ), + ), ("ACL Details", ("type", "default_action")), ) diff --git a/netbox_access_lists/forms/models.py b/netbox_access_lists/forms/models.py index a97f201..0c0a938 100644 --- a/netbox_access_lists/forms/models.py +++ b/netbox_access_lists/forms/models.py @@ -184,7 +184,6 @@ class AccessListForm(NetBoxModelForm): name=name, virtual_machine=virtual_machine, ).exists() - host = cleaned_data.get(host_type) # Check if duplicate entry. if ( diff --git a/netbox_access_lists/models/__init__.py b/netbox_access_lists/models/__init__.py index 99d911d..de95501 100644 --- a/netbox_access_lists/models/__init__.py +++ b/netbox_access_lists/models/__init__.py @@ -1,3 +1,4 @@ +# flake8: noqa """ Import each of the directory's scripts. """ diff --git a/netbox_access_lists/models/access_list_rules.py b/netbox_access_lists/models/access_list_rules.py index cf530d9..aa978e8 100644 --- a/netbox_access_lists/models/access_list_rules.py +++ b/netbox_access_lists/models/access_list_rules.py @@ -7,7 +7,7 @@ from django.db import models from django.urls import reverse from netbox.models import NetBoxModel -from ..choices import * +from ..choices import ACLProtocolChoices, ACLRuleActionChoices from .access_lists import AccessList __all__ = ( diff --git a/netbox_access_lists/models/access_lists.py b/netbox_access_lists/models/access_lists.py index 6c6055f..c7df970 100644 --- a/netbox_access_lists/models/access_lists.py +++ b/netbox_access_lists/models/access_lists.py @@ -11,7 +11,7 @@ from django.urls import reverse from netbox.models import NetBoxModel from virtualization.models import VirtualMachine, VMInterface -from ..choices import * +from ..choices import ACLActionChoices, ACLAssignmentDirectionChoices, ACLTypeChoices from ..constants import ACL_HOST_ASSIGNMENT_MODELS, ACL_INTERFACE_ASSIGNMENT_MODELS __all__ = ( diff --git a/netbox_access_lists/tables.py b/netbox_access_lists/tables.py index 74ecb26..6146997 100644 --- a/netbox_access_lists/tables.py +++ b/netbox_access_lists/tables.py @@ -3,7 +3,7 @@ Define the object lists / table view for each of the plugin models. """ import django_tables2 as tables -from netbox.tables import ChoiceFieldColumn, NetBoxTable, TemplateColumn, columns +from netbox.tables import ChoiceFieldColumn, NetBoxTable, columns from .models import AccessList, ACLExtendedRule, ACLInterfaceAssignment, ACLStandardRule