git: 7b9c910a7e3e - main - net-mgmt/rubygem-opn_api: new port

From: Kurt Jaeger <pi_at_FreeBSD.org>
Date: Mon, 07 Sep 2026 12:58:25 UTC
The branch main has been updated by pi:

URL: https://cgit.FreeBSD.org/ports/commit/?id=7b9c910a7e3ec21bf7f8a9e80c9285b3ec75702e

commit 7b9c910a7e3ec21bf7f8a9e80c9285b3ec75702e
Author:     Frank Wall <fw@moov.de>
AuthorDate: 2026-09-07 12:57:17 +0000
Commit:     Kurt Jaeger <pi@FreeBSD.org>
CommitDate: 2026-09-07 12:57:17 +0000

    net-mgmt/rubygem-opn_api: new port
    
    Ruby client library and CLI tool for the OPNsense REST API
    
    It is meant as a replacement for net-mgmt/py-opn-cli. It provides:
    - An HTTP client with SSL, redirect handling, and API key authentication
    - UUID/name resolution for ModelRelationField and CertificateField references
    - Service reconfigure orchestration with configtest support
    - OPNsense selection-hash normalization
    - A CLI tool for interactive API access
    - A resource registry that abstracts away inconsistent endpoint naming
    
    PR:     294026
---
 net-mgmt/Makefile                  |  1 +
 net-mgmt/rubygem-opn_api/Makefile  | 17 +++++++++++++++++
 net-mgmt/rubygem-opn_api/distinfo  |  3 +++
 net-mgmt/rubygem-opn_api/pkg-descr |  9 +++++++++
 4 files changed, 30 insertions(+)

diff --git a/net-mgmt/Makefile b/net-mgmt/Makefile
index 9bcd6fb8b1da..2e8890b156e2 100644
--- a/net-mgmt/Makefile
+++ b/net-mgmt/Makefile
@@ -373,6 +373,7 @@
     SUBDIR += rtrlib
     SUBDIR += rubygem-blimpy
     SUBDIR += rubygem-checkson
+    SUBDIR += rubygem-opn_api
     SUBDIR += rubygem-oxidized
     SUBDIR += rubygem-oxidized-script
     SUBDIR += rubygem-oxidized-web
diff --git a/net-mgmt/rubygem-opn_api/Makefile b/net-mgmt/rubygem-opn_api/Makefile
new file mode 100644
index 000000000000..4db2317834ae
--- /dev/null
+++ b/net-mgmt/rubygem-opn_api/Makefile
@@ -0,0 +1,17 @@
+PORTNAME=	opn_api
+PORTVERSION=	1.1.0
+CATEGORIES=	net-mgmt rubygems
+MASTER_SITES=	RG
+
+MAINTAINER=	freebsd@moov.de
+COMMENT=	Ruby client library and CLI tool for OPNsense
+WWW=		https://github.com/markt-de/opn-api
+
+LICENSE=	BSD2CLAUSE
+
+USES=		gem
+NO_ARCH=	yes
+
+PLIST_FILES=	bin/opn-api
+
+.include <bsd.port.mk>
diff --git a/net-mgmt/rubygem-opn_api/distinfo b/net-mgmt/rubygem-opn_api/distinfo
new file mode 100644
index 000000000000..2b0a3165fd80
--- /dev/null
+++ b/net-mgmt/rubygem-opn_api/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1774359672
+SHA256 (rubygem/opn_api-1.1.0.gem) = 91f57ca442fe51b37a7dc8ed7a7a7e174b3ffba02a37f61b8a491e51825d83f5
+SIZE (rubygem/opn_api-1.1.0.gem) = 34304
diff --git a/net-mgmt/rubygem-opn_api/pkg-descr b/net-mgmt/rubygem-opn_api/pkg-descr
new file mode 100644
index 000000000000..5d56f93caa65
--- /dev/null
+++ b/net-mgmt/rubygem-opn_api/pkg-descr
@@ -0,0 +1,9 @@
+Ruby client library and CLI tool for the OPNsense REST API
+
+It is meant as a replacement for net-mgmt/py-opn-cli. It provides:
+- An HTTP client with SSL, redirect handling, and API key authentication
+- UUID/name resolution for ModelRelationField and CertificateField references
+- Service reconfigure orchestration with configtest support
+- OPNsense selection-hash normalization
+- A CLI tool for interactive API access
+- A resource registry that abstracts away inconsistent endpoint naming