git: 1976bf9626a5 - main - security/py-netbox-secrets: New port

From: Kai Knoblich <kai_at_FreeBSD.org>
Date: Thu, 11 May 2023 04:02:26 UTC
The branch main has been updated by kai:

URL: https://cgit.FreeBSD.org/ports/commit/?id=1976bf9626a5ac43973706c34900e2de9eb82933

commit 1976bf9626a5ac43973706c34900e2de9eb82933
Author:     Kai Knoblich <kai@FreeBSD.org>
AuthorDate: 2023-05-11 03:37:30 +0000
Commit:     Kai Knoblich <kai@FreeBSD.org>
CommitDate: 2023-05-11 03:37:30 +0000

    security/py-netbox-secrets: New port
    
    This is the continuation of the NetBox Secretstore app. The original
    plugin is minimally maintained and has a lot of issues.
    
    This plugin is a complete rewrite of the original plugin.  It is more
    generic and flexible than the original plugin.  It is also regularly
    tested with the latest NetBox releases to ensure compatibility and
    stability.
    
    Features:
    
    * Store secrets in the database encrypted with a public key (RSA)
    * More generic and flexible than the original plugin (e.g. secrets
      can be assigned to any object in NetBox)
    * Secrets can be assigned to contacts to associate them with
      a secret (e.g. SSH key)
    * Updated user interface to make it easier to use and more intuitive
      to navigate
    * Regularly tested with the latest NetBox releases to ensure
      compatibility and stability
    
    MFH:            2023Q2 (in 3 weeks, to provide a migration path for
                    security/py-netbox-secretstore, which is deprecated)
---
 security/Makefile                               |  1 +
 security/py-netbox-secrets/Makefile             | 24 ++++++++++++++++++++++++
 security/py-netbox-secrets/distinfo             |  3 +++
 security/py-netbox-secrets/files/pkg-message.in | 20 ++++++++++++++++++++
 security/py-netbox-secrets/pkg-descr            | 18 ++++++++++++++++++
 5 files changed, 66 insertions(+)

diff --git a/security/Makefile b/security/Makefile
index 02406d834eb4..0e41ec96cb27 100644
--- a/security/Makefile
+++ b/security/Makefile
@@ -939,6 +939,7 @@
     SUBDIR += py-msoffcrypto-tool
     SUBDIR += py-muacrypt
     SUBDIR += py-nassl
+    SUBDIR += py-netbox-secrets
     SUBDIR += py-netbox-secretstore
     SUBDIR += py-netmiko
     SUBDIR += py-noiseprotocol
diff --git a/security/py-netbox-secrets/Makefile b/security/py-netbox-secrets/Makefile
new file mode 100644
index 000000000000..54ac5d81c0c3
--- /dev/null
+++ b/security/py-netbox-secrets/Makefile
@@ -0,0 +1,24 @@
+PORTNAME=	netbox-secrets
+DISTVERSION=	1.7.6
+CATEGORIES=	security python
+MASTER_SITES=	PYPI
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+
+MAINTAINER=	kai@FreeBSD.org
+COMMENT=	Secret store for NetBox
+WWW=		https://github.com/Onemind-Services-LLC/netbox-secrets
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE.md
+
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}pycryptodome>0:security/py-pycryptodome@${PY_FLAVOR}
+
+USES=		python:3.8+
+USE_PYTHON=	autoplist distutils
+
+NO_ARCH=	yes
+
+SUB_FILES=	pkg-message
+SUB_LIST=	PYTHON_VER=${PYTHON_VER}
+
+.include <bsd.port.mk>
diff --git a/security/py-netbox-secrets/distinfo b/security/py-netbox-secrets/distinfo
new file mode 100644
index 000000000000..18ac05653aea
--- /dev/null
+++ b/security/py-netbox-secrets/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1683570449
+SHA256 (netbox-secrets-1.7.6.tar.gz) = 66282c010f6493b565279bd37749d3b13d6ff6458257d879c2530de054e617f1
+SIZE (netbox-secrets-1.7.6.tar.gz) = 47711
diff --git a/security/py-netbox-secrets/files/pkg-message.in b/security/py-netbox-secrets/files/pkg-message.in
new file mode 100644
index 000000000000..eb2da1827a37
--- /dev/null
+++ b/security/py-netbox-secrets/files/pkg-message.in
@@ -0,0 +1,20 @@
+[
+{ type: install
+  message: <<EOD
+To enable the plugin please do the following steps:
+
+1. Add/update the following line in the netbox configuration (usually
+   %%LOCALBASE%%/share/netbox/netbox/configuration.py):
+
+   PLUGINS = ['netbox_secrets']
+
+2. Run NetBox migrations and collect static files:
+
+   # cd %%LOCALBASE%%/share/netbox
+   # python%%PYTHON_VER%% manage.py migrate
+   # python%%PYTHON_VER%% manage.py collectstatic --no-input
+
+3. Restart WSGI/httpd environment (supervisord/apache/nginx/etc.)
+EOD
+}
+]
diff --git a/security/py-netbox-secrets/pkg-descr b/security/py-netbox-secrets/pkg-descr
new file mode 100644
index 000000000000..ec01ea04efc3
--- /dev/null
+++ b/security/py-netbox-secrets/pkg-descr
@@ -0,0 +1,18 @@
+This is the continuation of the NetBox Secretstore app. The original plugin is
+minimally maintained and has a lot of issues.
+
+This plugin is a complete rewrite of the original plugin.  It is more generic
+and flexible than the original plugin.  It is also regularly tested with the
+latest NetBox releases to ensure compatibility and stability.
+
+Features:
+
+* Store secrets in the database encrypted with a public key (RSA)
+* More generic and flexible than the original plugin (e.g. secrets
+  can be assigned to any object in NetBox)
+* Secrets can be assigned to contacts to associate them with
+  a secret (e.g. SSH key)
+* Updated user interface to make it easier to use and more intuitive
+  to navigate
+* Regularly tested with the latest NetBox releases to ensure
+  compatibility and stability