mirror of
https://github.com/lucaspalomodevelop/netbox-acls.git
synced 2026-03-12 23:27:23 +00:00
rename plugin
This commit is contained in:
parent
18b5253575
commit
32a897de8d
@ -1,4 +1,4 @@
|
||||
ARG VARIANT=latest
|
||||
ARG VARIANT=v3.2-2.1.0
|
||||
|
||||
FROM netboxcommunity/netbox:${VARIANT}
|
||||
|
||||
@ -21,7 +21,7 @@ ARG USER_GID=$USER_UID
|
||||
RUN useradd -md /home/vscode -s /usr/bin/zsh -u $USER_UID $USERNAME \
|
||||
&& usermod -aG sudo $USERNAME \
|
||||
&& echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers \
|
||||
&& mkdir /opt/netbox/netbox/netbox-access-lists \
|
||||
&& mkdir /opt/netbox/netbox/netbox-acls \
|
||||
&& chown $USERNAME:$USERNAME /opt/netbox /etc/netbox /opt/unit -R
|
||||
|
||||
USER $USERNAME
|
||||
@ -32,7 +32,7 @@ RUN wget --quiet https://github.com/robbyrussell/oh-my-zsh/raw/master/tools/inst
|
||||
COPY .bashrc /home/vscode/.bashrc
|
||||
COPY .zshrc /home/vscode/.zshrc
|
||||
|
||||
WORKDIR /opt/netbox/netbox/netbox-access-lists
|
||||
WORKDIR /opt/netbox/netbox/netbox-acls
|
||||
|
||||
USER root
|
||||
|
||||
|
||||
@ -5,9 +5,9 @@
|
||||
# See https://github.com/netbox-community/netbox-docker/wiki/Using-Netbox-Plugins
|
||||
|
||||
PLUGINS = [
|
||||
"netbox_access_lists",
|
||||
"netbox_acls",
|
||||
]
|
||||
|
||||
PLUGINS_CONFIG = {
|
||||
"netbox_access_lists": {},
|
||||
"netbox_acls": {},
|
||||
}
|
||||
|
||||
@ -8,8 +8,8 @@
|
||||
"docker-compose.override.yml"
|
||||
],
|
||||
"service": "netbox",
|
||||
//"workspaceMount": "source=${localWorkspaceFolder},target=/opt/netbox/netbox/netbox-access-lists,type=bind,consistency=cached",
|
||||
"workspaceFolder": "/opt/netbox/netbox/netbox-access-lists",
|
||||
//"workspaceMount": "source=${localWorkspaceFolder},target=/opt/netbox/netbox/netbox-acls,type=bind,consistency=cached",
|
||||
"workspaceFolder": "/opt/netbox/netbox/netbox-acls",
|
||||
|
||||
"overrideCommand":false,
|
||||
|
||||
|
||||
@ -7,6 +7,6 @@ services:
|
||||
ports:
|
||||
- 8000:8080
|
||||
volumes:
|
||||
- ../:/opt/netbox/netbox/netbox-access-lists
|
||||
- ../:/opt/netbox/netbox/netbox-acls
|
||||
- ~/.gitconfig:/home/vscode/.gitconfig:z,ro
|
||||
- ~/.ssh:/home/vscode/.ssh
|
||||
|
||||
1
.devcontainer/env/netbox.env
vendored
1
.devcontainer/env/netbox.env
vendored
@ -19,4 +19,5 @@ SUPERUSER_API_TOKEN=0123456789abcdef0123456789abcdef01234567
|
||||
SUPERUSER_EMAIL=admin@example.com
|
||||
SUPERUSER_NAME=admin
|
||||
SUPERUSER_PASSWORD=admin
|
||||
STARTUP_SCRIPTS=false
|
||||
WEBHOOKS_ENABLED=true
|
||||
|
||||
6
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
6
.github/ISSUE_TEMPLATE/bug_report.yml
vendored
@ -11,11 +11,11 @@ body:
|
||||
installation.
|
||||
|
||||
- Check the release notes:
|
||||
https://github.com/ryanmerolle/netbox-access-lists/releases
|
||||
https://github.com/ryanmerolle/netbox-acls/releases
|
||||
- Look through the issues already resolved:
|
||||
https://github.com/ryanmerolle/netbox-access-lists/issues?q=is%3Aclosed
|
||||
https://github.com/ryanmerolle/netbox-acls/issues?q=is%3Aclosed
|
||||
- Post to Github Discussions if you need setup or usage help that is not a bug:
|
||||
https://github.com/ryanmerolle/netbox-access-lists/discussions
|
||||
https://github.com/ryanmerolle/netbox-acls/discussions
|
||||
- Join the `#netbox` channel on our Slack:
|
||||
https://join.slack.com/t/netdev-community/shared_invite/zt-mtts8g0n-Sm6Wutn62q_M4OdsaIycrQ
|
||||
|
||||
|
||||
4
.github/ISSUE_TEMPLATE/config.yml
vendored
4
.github/ISSUE_TEMPLATE/config.yml
vendored
@ -2,10 +2,10 @@
|
||||
blank_issues_enabled: false
|
||||
contact_links:
|
||||
#- name: 📕 Plugin Documentation
|
||||
# url: https://netbox-access-lists.readthedocs.io
|
||||
# url: https://netbox-acls.readthedocs.io
|
||||
# about: "Please refer to the documentation before raising a bug or feature request."
|
||||
- name: 📖 Contributing Policy
|
||||
url: https://github.com/ryanmerolle/netbox-access-lists/blob/dev/CONTRIBUTING.md
|
||||
url: https://github.com/ryanmerolle/netbox-acls/blob/dev/CONTRIBUTING.md
|
||||
about: "Please read through our contributing policy before opening an issue or pull request"
|
||||
- name: 💬 Community Slack
|
||||
url: https://netdev.chat/
|
||||
|
||||
2
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
2
.github/ISSUE_TEMPLATE/feature_request.yaml
vendored
@ -10,7 +10,7 @@ body:
|
||||
**NOTE:** This form is only for submitting well-formed proposals to extend or modify
|
||||
NetBox in some way. If you're trying to solve a problem but can't figure out how, or if
|
||||
you still need time to work on the details of a proposed new feature, please start a
|
||||
[discussion](https://github.com/ryanmerolle/netbox-access-lists/discussions) instead.
|
||||
[discussion](https://github.com/ryanmerolle/netbox-acls/discussions) instead.
|
||||
- type: input
|
||||
attributes:
|
||||
label: NetBox version
|
||||
|
||||
@ -3,12 +3,12 @@
|
||||
## Reporting Bugs
|
||||
|
||||
* First, ensure that you're running the [latest stable version](https://github.com/netbox-community/netbox/releases)
|
||||
of NetBox or this plugin [latest stable version](https://github.com/ryanmerolle/netbox-access-lists/releases).
|
||||
of NetBox or this plugin [latest stable version](https://github.com/ryanmerolle/netbox-acls/releases).
|
||||
If you're running an older version, it's possible that the bug has already been fixed
|
||||
or you are running a version of the plugin not tested with the NetBox version
|
||||
you are running [Compatibility Matrix](./README.md#compatibility).
|
||||
|
||||
* Next, check the GitHub [issues list](https://github.com/ryanmerolle/netbox-access-lists/issues)
|
||||
* Next, check the GitHub [issues list](https://github.com/ryanmerolle/netbox-acls/issues)
|
||||
to see if the bug you've found has already been reported. If you think you may
|
||||
be experiencing a reported issue that hasn't already been resolved, please
|
||||
click "add a reaction" in the top right corner of the issue and add a thumbs
|
||||
@ -27,7 +27,7 @@ provide all information request in the issue template, including:
|
||||
|
||||
## Feature Requests
|
||||
|
||||
* First, check the GitHub [issues list](https://github.com/ryanmerolle/netbox-access-lists/issues)
|
||||
* First, check the GitHub [issues list](https://github.com/ryanmerolle/netbox-acls/issues)
|
||||
to see if the feature you're requesting is already listed. (Be sure to search
|
||||
closed issues as well, since some feature requests have been rejected.) If the
|
||||
feature you'd like to see has already been requested and is open, click "add a
|
||||
|
||||
@ -1,4 +1,4 @@
|
||||
include README.md
|
||||
include LICENSE
|
||||
recursive-include netbox_access_lists/templates *
|
||||
recursive-include netbox_access_lists/static *
|
||||
recursive-include netbox_acls/templates *
|
||||
recursive-include netbox_acls/static *
|
||||
|
||||
8
Makefile
8
Makefile
@ -1,5 +1,5 @@
|
||||
PLUGIN_NAME=netbox_access_lists
|
||||
REPO_PATH=/opt/netbox/netbox/netbox-access-lists
|
||||
PLUGIN_NAME=netbox_acls
|
||||
REPO_PATH=/opt/netbox/netbox/netbox-acls
|
||||
VENV_PY_PATH=/opt/netbox/venv/bin/python3
|
||||
NETBOX_MANAGE_PATH=/opt/netbox/netbox/manage.py
|
||||
VERFILE=./version.py
|
||||
@ -16,7 +16,7 @@ help:
|
||||
#
|
||||
#.PHONY: cleanup ## Clean associated docker resources.
|
||||
#cleanup:
|
||||
# -docker-compose -p netbox-access-lists_devcontainer rm -fv
|
||||
# -docker-compose -p netbox-acls_devcontainer rm -fv
|
||||
|
||||
##################
|
||||
# PLUGIN DEV #
|
||||
@ -27,7 +27,7 @@ help:
|
||||
.PHONY: nbshell ## Run nbshell
|
||||
nbshell:
|
||||
${VENV_PY_PATH} ${NETBOX_MANAGE_PATH} nbshell
|
||||
from netbox_access_lists.models import *
|
||||
from netbox_acls.models import *
|
||||
|
||||
.PHONY: setup ## Copy plugin settings. Setup NetBox plugin.
|
||||
setup:
|
||||
|
||||
10
README.md
10
README.md
@ -1,4 +1,4 @@
|
||||
# netbox-access-lists
|
||||
# netbox-acls
|
||||
|
||||
A NetBox plugin for Access List management
|
||||
|
||||
@ -30,13 +30,13 @@ For adding to a NetBox Docker setup see
|
||||
While this is still in development and not yet on pypi you can install with pip:
|
||||
|
||||
```bash
|
||||
pip install git+https://github.com/ryanmerolle/netbox-access-lists.git@dev
|
||||
pip install git+https://github.com/ryanmerolle/netbox-acls.git@dev
|
||||
```
|
||||
|
||||
or by adding to your `local_requirements.txt` or `plugin_requirements.txt` (netbox-docker):
|
||||
|
||||
```bash
|
||||
git+https://github.com/ryanmerolle/netbox-access-lists.git@dev
|
||||
git+https://github.com/ryanmerolle/netbox-acls.git@dev
|
||||
```
|
||||
|
||||
Enable the plugin in `/opt/netbox/netbox/netbox/configuration.py`,
|
||||
@ -44,11 +44,11 @@ Enable the plugin in `/opt/netbox/netbox/netbox/configuration.py`,
|
||||
|
||||
```python
|
||||
PLUGINS = [
|
||||
'netbox_access_lists'
|
||||
'netbox_acls'
|
||||
]
|
||||
|
||||
PLUGINS_CONFIG = {
|
||||
"netbox_access_lists": {},
|
||||
"netbox_acls": {},
|
||||
}
|
||||
```
|
||||
|
||||
|
||||
@ -6,7 +6,7 @@ from extras.plugins import PluginConfig
|
||||
|
||||
|
||||
class NetBoxAccessListsConfig(PluginConfig):
|
||||
name = "netbox_access_lists"
|
||||
name = "netbox_acls"
|
||||
verbose_name = "Access Lists"
|
||||
description = "Manage simple ACLs in NetBox"
|
||||
version = "1.0.0"
|
||||
@ -27,7 +27,7 @@ class NestedAccessListSerializer(WritableNestedSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:accesslist-detail",
|
||||
view_name="plugins-api:netbox_acls-api:accesslist-detail",
|
||||
)
|
||||
|
||||
class Meta:
|
||||
@ -45,7 +45,7 @@ class NestedACLInterfaceAssignmentSerializer(WritableNestedSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:aclinterfaceassignment-detail",
|
||||
view_name="plugins-api:netbox_acls-api:aclinterfaceassignment-detail",
|
||||
)
|
||||
|
||||
class Meta:
|
||||
@ -63,7 +63,7 @@ class NestedACLStandardRuleSerializer(WritableNestedSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:aclstandardrule-detail",
|
||||
view_name="plugins-api:netbox_acls-api:aclstandardrule-detail",
|
||||
)
|
||||
|
||||
class Meta:
|
||||
@ -81,7 +81,7 @@ class NestedACLExtendedRuleSerializer(WritableNestedSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:aclextendedrule-detail",
|
||||
view_name="plugins-api:netbox_acls-api:aclextendedrule-detail",
|
||||
)
|
||||
|
||||
class Meta:
|
||||
@ -7,7 +7,7 @@ from django.contrib.contenttypes.models import ContentType
|
||||
from django.core.exceptions import ObjectDoesNotExist
|
||||
from drf_yasg.utils import swagger_serializer_method
|
||||
from ipam.api.serializers import NestedPrefixSerializer
|
||||
from netbox.api.fields import ContentTypeField
|
||||
from netbox.api import ContentTypeField
|
||||
from netbox.api.serializers import NetBoxModelSerializer
|
||||
from rest_framework import serializers
|
||||
from utilities.api import get_serializer_for_model
|
||||
@ -51,7 +51,7 @@ class AccessListSerializer(NetBoxModelSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:accesslist-detail",
|
||||
view_name="plugins-api:netbox_acls-api:accesslist-detail",
|
||||
)
|
||||
rule_count = serializers.IntegerField(read_only=True)
|
||||
assigned_object_type = ContentTypeField(
|
||||
@ -133,7 +133,7 @@ class ACLInterfaceAssignmentSerializer(NetBoxModelSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:aclinterfaceassignment-detail",
|
||||
view_name="plugins-api:netbox_acls-api:aclinterfaceassignment-detail",
|
||||
)
|
||||
access_list = NestedAccessListSerializer()
|
||||
assigned_object_type = ContentTypeField(
|
||||
@ -223,7 +223,7 @@ class ACLStandardRuleSerializer(NetBoxModelSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:aclstandardrule-detail",
|
||||
view_name="plugins-api:netbox_acls-api:aclstandardrule-detail",
|
||||
)
|
||||
access_list = NestedAccessListSerializer()
|
||||
source_prefix = NestedPrefixSerializer(
|
||||
@ -283,7 +283,7 @@ class ACLExtendedRuleSerializer(NetBoxModelSerializer):
|
||||
"""
|
||||
|
||||
url = serializers.HyperlinkedIdentityField(
|
||||
view_name="plugins-api:netbox_access_lists-api:aclextendedrule-detail",
|
||||
view_name="plugins-api:netbox_acls-api:aclextendedrule-detail",
|
||||
)
|
||||
access_list = NestedAccessListSerializer()
|
||||
source_prefix = NestedPrefixSerializer(
|
||||
@ -6,7 +6,7 @@ from netbox.api.routers import NetBoxRouter
|
||||
|
||||
from . import views
|
||||
|
||||
app_name = "netbox_access_list"
|
||||
app_name = "netbox_acls"
|
||||
|
||||
router = NetBoxRouter()
|
||||
router.register("access-lists", views.AccessListViewSet)
|
||||
@ -99,7 +99,7 @@ class Migration(migrations.Migration):
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.PROTECT,
|
||||
related_name="aclinterfaceassignment",
|
||||
to="netbox_access_lists.accesslist",
|
||||
to="netbox_acls.accesslist",
|
||||
),
|
||||
),
|
||||
("direction", models.CharField(max_length=100)),
|
||||
@ -171,7 +171,7 @@ class Migration(migrations.Migration):
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
related_name="aclstandardrules",
|
||||
to="netbox_access_lists.accesslist",
|
||||
to="netbox_acls.accesslist",
|
||||
),
|
||||
),
|
||||
("index", models.PositiveIntegerField()),
|
||||
@ -228,7 +228,7 @@ class Migration(migrations.Migration):
|
||||
models.ForeignKey(
|
||||
on_delete=django.db.models.deletion.CASCADE,
|
||||
related_name="aclstandardrules",
|
||||
to="netbox_access_lists.accesslist",
|
||||
to="netbox_acls.accesslist",
|
||||
),
|
||||
),
|
||||
("index", models.PositiveIntegerField()),
|
||||
@ -88,7 +88,7 @@ class ACLStandardRule(ACLRule):
|
||||
The method is a Django convention; although not strictly required,
|
||||
it conveniently returns the absolute URL for any particular object.
|
||||
"""
|
||||
return reverse("plugins:netbox_access_lists:aclstandardrule", args=[self.pk])
|
||||
return reverse("plugins:netbox_acls:aclstandardrule", args=[self.pk])
|
||||
|
||||
class Meta(ACLRule.Meta):
|
||||
"""
|
||||
@ -146,7 +146,7 @@ class ACLExtendedRule(ACLRule):
|
||||
The method is a Django convention; although not strictly required,
|
||||
it conveniently returns the absolute URL for any particular object.
|
||||
"""
|
||||
return reverse("plugins:netbox_access_lists:aclextendedrule", args=[self.pk])
|
||||
return reverse("plugins:netbox_acls:aclextendedrule", args=[self.pk])
|
||||
|
||||
def get_protocol_color(self):
|
||||
return ACLProtocolChoices.colors.get(self.protocol)
|
||||
@ -73,7 +73,7 @@ class AccessList(NetBoxModel):
|
||||
The method is a Django convention; although not strictly required,
|
||||
it conveniently returns the absolute URL for any particular object.
|
||||
"""
|
||||
return reverse("plugins:netbox_access_lists:accesslist", args=[self.pk])
|
||||
return reverse("plugins:netbox_acls:accesslist", args=[self.pk])
|
||||
|
||||
def get_default_action_color(self):
|
||||
return ACLActionChoices.colors.get(self.default_action)
|
||||
@ -135,7 +135,7 @@ class ACLInterfaceAssignment(NetBoxModel):
|
||||
it conveniently returns the absolute URL for any particular object.
|
||||
"""
|
||||
return reverse(
|
||||
"plugins:netbox_access_lists:aclinterfaceassignment",
|
||||
"plugins:netbox_acls:aclinterfaceassignment",
|
||||
args=[self.pk],
|
||||
)
|
||||
|
||||
@ -11,7 +11,7 @@ from utilities.choices import ButtonColorChoices
|
||||
|
||||
accesslist_buttons = [
|
||||
PluginMenuButton(
|
||||
link="plugins:netbox_access_lists:accesslist_add",
|
||||
link="plugins:netbox_acls:accesslist_add",
|
||||
title="Add",
|
||||
icon_class="mdi mdi-plus-thick",
|
||||
color=ButtonColorChoices.GREEN,
|
||||
@ -20,7 +20,7 @@ accesslist_buttons = [
|
||||
|
||||
aclstandardrule_butons = [
|
||||
PluginMenuButton(
|
||||
link="plugins:netbox_access_lists:aclstandardrule_add",
|
||||
link="plugins:netbox_acls:aclstandardrule_add",
|
||||
title="Add",
|
||||
icon_class="mdi mdi-plus-thick",
|
||||
color=ButtonColorChoices.GREEN,
|
||||
@ -29,7 +29,7 @@ aclstandardrule_butons = [
|
||||
|
||||
aclextendedrule_butons = [
|
||||
PluginMenuButton(
|
||||
link="plugins:netbox_access_lists:aclextendedrule_add",
|
||||
link="plugins:netbox_acls:aclextendedrule_add",
|
||||
title="Add",
|
||||
icon_class="mdi mdi-plus-thick",
|
||||
color=ButtonColorChoices.GREEN,
|
||||
@ -38,7 +38,7 @@ aclextendedrule_butons = [
|
||||
|
||||
accesslistassignment_buttons = [
|
||||
PluginMenuButton(
|
||||
link="plugins:netbox_access_lists:aclinterfaceassignment_add",
|
||||
link="plugins:netbox_acls:aclinterfaceassignment_add",
|
||||
title="Add",
|
||||
icon_class="mdi mdi-plus-thick",
|
||||
color=ButtonColorChoices.GREEN,
|
||||
@ -51,24 +51,24 @@ accesslistassignment_buttons = [
|
||||
|
||||
menu_items = (
|
||||
PluginMenuItem(
|
||||
link="plugins:netbox_access_lists:accesslist_list",
|
||||
link="plugins:netbox_acls:accesslist_list",
|
||||
link_text="Access Lists",
|
||||
buttons=accesslist_buttons,
|
||||
),
|
||||
# Comment out Standard Access List rule to force creation in the ACL view
|
||||
PluginMenuItem(
|
||||
link="plugins:netbox_access_lists:aclstandardrule_list",
|
||||
link="plugins:netbox_acls:aclstandardrule_list",
|
||||
link_text="ACL Standard Rules",
|
||||
buttons=aclstandardrule_butons,
|
||||
),
|
||||
# Comment out Extended Access List rule to force creation in the ACL view
|
||||
PluginMenuItem(
|
||||
link="plugins:netbox_access_lists:aclextendedrule_list",
|
||||
link="plugins:netbox_acls:aclextendedrule_list",
|
||||
link_text="ACL Extended Rules",
|
||||
buttons=aclextendedrule_butons,
|
||||
),
|
||||
PluginMenuItem(
|
||||
link="plugins:netbox_access_lists:aclinterfaceassignment_list",
|
||||
link="plugins:netbox_acls:aclinterfaceassignment_list",
|
||||
link_text="ACL Interface Assignments",
|
||||
buttons=accesslistassignment_buttons,
|
||||
),
|
||||
@ -50,7 +50,7 @@ class AccessListTable(NetBoxTable):
|
||||
verbose_name="Rule Count",
|
||||
)
|
||||
tags = columns.TagColumn(
|
||||
url_name="plugins:netbox_access_lists:accesslist_list",
|
||||
url_name="plugins:netbox_acls:accesslist_list",
|
||||
)
|
||||
|
||||
class Meta(NetBoxTable.Meta):
|
||||
@ -99,7 +99,7 @@ class ACLInterfaceAssignmentTable(NetBoxTable):
|
||||
verbose_name="Assigned Interface",
|
||||
)
|
||||
tags = columns.TagColumn(
|
||||
url_name="plugins:netbox_access_lists:aclinterfaceassignment_list",
|
||||
url_name="plugins:netbox_acls:aclinterfaceassignment_list",
|
||||
)
|
||||
|
||||
class Meta(NetBoxTable.Meta):
|
||||
@ -136,7 +136,7 @@ class ACLStandardRuleTable(NetBoxTable):
|
||||
)
|
||||
action = ChoiceFieldColumn()
|
||||
tags = columns.TagColumn(
|
||||
url_name="plugins:netbox_access_lists:aclstandardrule_list",
|
||||
url_name="plugins:netbox_acls:aclstandardrule_list",
|
||||
)
|
||||
|
||||
class Meta(NetBoxTable.Meta):
|
||||
@ -177,7 +177,7 @@ class ACLExtendedRuleTable(NetBoxTable):
|
||||
)
|
||||
action = ChoiceFieldColumn()
|
||||
tags = columns.TagColumn(
|
||||
url_name="plugins:netbox_access_lists:aclextendedrule_list",
|
||||
url_name="plugins:netbox_acls:aclextendedrule_list",
|
||||
)
|
||||
protocol = ChoiceFieldColumn()
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
{% include 'inc/assigned_host/assigned_access_lists.html' %}
|
||||
</div>
|
||||
<div class="card-footer text-end noprint">
|
||||
<a href="{% url 'plugins:netbox_access_lists:accesslist_add' %}?{{ type }}={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary">
|
||||
<a href="{% url 'plugins:netbox_acls:accesslist_add' %}?{{ type }}={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary">
|
||||
<i class="mdi mdi-plus-thick"></i> Add Access List
|
||||
</a>
|
||||
</div>
|
||||
@ -6,7 +6,7 @@
|
||||
{% include 'inc/assigned_interface/assigned_access_lists.html' %}
|
||||
</div>
|
||||
<div class="card-footer text-end noprint">
|
||||
<a href="{% url 'plugins:netbox_access_lists:aclinterfaceassignment_add' %}?{{ parent_type }}={{ parent_id }}&{{ type }}={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary">
|
||||
<a href="{% url 'plugins:netbox_acls:aclinterfaceassignment_add' %}?{{ parent_type }}={{ parent_id }}&{{ type }}={{ object.pk }}&return_url={{ object.get_absolute_url }}" class="btn btn-sm btn-primary">
|
||||
<i class="mdi mdi-plus-thick"></i> Assign Access List
|
||||
</a>
|
||||
</div>
|
||||
@ -2,24 +2,24 @@
|
||||
{% load render_table from django_tables2 %}
|
||||
|
||||
{% block breadcrumbs %}
|
||||
<li class="breadcrumb-item"><a href="{% url 'plugins:netbox_access_lists:accesslist_list' %}">Access Lists</a></li>
|
||||
<li class="breadcrumb-item"><a href="{% url 'plugins:netbox_acls:accesslist_list' %}">Access Lists</a></li>
|
||||
{% endblock %}
|
||||
{% block controls %}
|
||||
<div class="pull-right noprint">
|
||||
{% if perms.netbox_access_lists.change_policy %}
|
||||
{% if perms.netbox_acls.change_policy %}
|
||||
{% if object.type == 'extended' %}
|
||||
<a href="{% url 'plugins:netbox_access_lists:aclextendedrule_add' %}?access_list={{ object.pk }}" class="btn btn-success">
|
||||
<a href="{% url 'plugins:netbox_acls:aclextendedrule_add' %}?access_list={{ object.pk }}" class="btn btn-success">
|
||||
{% elif object.type == 'standard' %}
|
||||
<a href="{% url 'plugins:netbox_access_lists:aclstandardrule_add' %}?access_list={{ object.pk }}" class="btn btn-success">
|
||||
<a href="{% url 'plugins:netbox_acls:aclstandardrule_add' %}?access_list={{ object.pk }}" class="btn btn-success">
|
||||
{% endif %}
|
||||
<span class="mdi mdi-plus-thick" aria-hidden="true"></span> Rule
|
||||
</a>
|
||||
<a href="{% url 'plugins:netbox_access_lists:accesslist_edit' pk=object.pk %}" class="btn btn-warning">
|
||||
<a href="{% url 'plugins:netbox_acls:accesslist_edit' pk=object.pk %}" class="btn btn-warning">
|
||||
<span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if perms.netbox_access_lists.delete_policy %}
|
||||
<a href="{% url 'plugins:netbox_access_lists:accesslist_delete' pk=object.pk %}" class="btn btn-danger">
|
||||
{% if perms.netbox_acls.delete_policy %}
|
||||
<a href="{% url 'plugins:netbox_acls:accesslist_delete' pk=object.pk %}" class="btn btn-danger">
|
||||
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
|
||||
</a>
|
||||
{% endif %}
|
||||
@ -34,7 +34,7 @@
|
||||
{% endblock tab_items %}
|
||||
{% if perms.extras.view_objectchange %}
|
||||
<li role="presentation" class="nav-item">
|
||||
<a href="{% url 'plugins:netbox_access_lists:accesslist_changelog' pk=object.pk %}" class="nav-link{% if active_tab == 'changelog'%} active{% endif %}">Change Log</a>
|
||||
<a href="{% url 'plugins:netbox_acls:accesslist_changelog' pk=object.pk %}" class="nav-link{% if active_tab == 'changelog'%} active{% endif %}">Change Log</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
@ -2,17 +2,17 @@
|
||||
{% load render_table from django_tables2 %}
|
||||
|
||||
{% block breadcrumbs %}
|
||||
<li class="breadcrumb-item"><a href="{% url 'plugins:netbox_access_lists:aclinterfaceassignment_list' %}">ACL Interface Assignments</a></li>
|
||||
<li class="breadcrumb-item"><a href="{% url 'plugins:netbox_acls:aclinterfaceassignment_list' %}">ACL Interface Assignments</a></li>
|
||||
{% endblock %}
|
||||
{% block controls %}
|
||||
<div class="pull-right noprint">
|
||||
{% if perms.netbox_access_lists.change_policy %}
|
||||
<a href="{% url 'plugins:netbox_access_lists:aclinterfaceassignment_edit' pk=object.pk %}" class="btn btn-warning">
|
||||
{% if perms.netbox_acls.change_policy %}
|
||||
<a href="{% url 'plugins:netbox_acls:aclinterfaceassignment_edit' pk=object.pk %}" class="btn btn-warning">
|
||||
<span class="mdi mdi-pencil" aria-hidden="true"></span> Edit
|
||||
</a>
|
||||
{% endif %}
|
||||
{% if perms.netbox_access_lists.delete_policy %}
|
||||
<a href="{% url 'plugins:netbox_access_lists:aclinterfaceassignment_delete' pk=object.pk %}" class="btn btn-danger">
|
||||
{% if perms.netbox_acls.delete_policy %}
|
||||
<a href="{% url 'plugins:netbox_acls:aclinterfaceassignment_delete' pk=object.pk %}" class="btn btn-danger">
|
||||
<span class="mdi mdi-trash-can-outline" aria-hidden="true"></span> Delete
|
||||
</a>
|
||||
{% endif %}
|
||||
@ -27,7 +27,7 @@
|
||||
{% endblock tab_items %}
|
||||
{% if perms.extras.view_objectchange %}
|
||||
<li role="presentation" class="nav-item">
|
||||
<a href="{% url 'plugins:netbox_access_lists:aclinterfaceassignment_changelog' pk=object.pk %}" class="nav-link{% if active_tab == 'changelog'%} active{% endif %}">Change Log</a>
|
||||
<a href="{% url 'plugins:netbox_acls:aclinterfaceassignment_changelog' pk=object.pk %}" class="nav-link{% if active_tab == 'changelog'%} active{% endif %}">Change Log</a>
|
||||
</li>
|
||||
{% endif %}
|
||||
</ul>
|
||||
@ -79,7 +79,7 @@ class AccessListEditView(generic.ObjectEditView):
|
||||
|
||||
queryset = models.AccessList.objects.all()
|
||||
form = forms.AccessListForm
|
||||
template_name = "netbox_access_lists/accesslist_edit.html"
|
||||
template_name = "netbox_acls/accesslist_edit.html"
|
||||
|
||||
|
||||
class AccessListDeleteView(generic.ObjectDeleteView):
|
||||
@ -127,7 +127,7 @@ class ACLInterfaceAssignmentEditView(generic.ObjectEditView):
|
||||
|
||||
queryset = models.ACLInterfaceAssignment.objects.all()
|
||||
form = forms.ACLInterfaceAssignmentForm
|
||||
template_name = "netbox_access_lists/aclinterfaceassignment_edit.html"
|
||||
template_name = "netbox_acls/aclinterfaceassignment_edit.html"
|
||||
|
||||
|
||||
class ACLInterfaceAssignmentDeleteView(generic.ObjectDeleteView):
|
||||
8
setup.py
8
setup.py
@ -24,13 +24,13 @@ from setuptools import find_packages, setup
|
||||
#
|
||||
|
||||
setup(
|
||||
name="netbox-access-lists",
|
||||
version="1.1.0",
|
||||
# version=get_version("netbox_access_lists/version.py"),
|
||||
name="netbox-acls",
|
||||
version="1.0.0",
|
||||
# version=get_version("netbox_acls/version.py"),
|
||||
description="A NetBox plugin for Access List management",
|
||||
# long_description=long_description,
|
||||
long_description_content_type="text/markdown",
|
||||
url="https://github.com/ryanmerolle/netbox-access-lists",
|
||||
url="https://github.com/ryanmerolle/netbox-acls",
|
||||
install_requires=[],
|
||||
packages=find_packages(),
|
||||
include_package_data=True,
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user