git: f08a2e0baf72 - main - net/natscli: add new port

From: Jimmy Olgeni <olgeni_at_FreeBSD.org>
Date: Sun, 27 Feb 2022 12:15:18 UTC
The branch main has been updated by olgeni:

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

commit f08a2e0baf72597527b2b1d2faa4e4104a34b9c7
Author:     Jimmy Olgeni <olgeni@FreeBSD.org>
AuthorDate: 2022-02-26 16:16:18 +0000
Commit:     Jimmy Olgeni <olgeni@FreeBSD.org>
CommitDate: 2022-02-27 12:13:37 +0000

    net/natscli: add new port
    
    This port is a command line utility to interact with and manage NATS
    (net/nats-server).
    
    Features:
    
      * JetStream management
      * JetStream data and configuration backup
      * Message publish and subscribe
      * Service requests and creation
      * Benchmarking and Latency testing
      * Super Cluster observation
      * Configuration context maintenance
      * NATS ecosystem schema registry
---
 net/Makefile          |  1 +
 net/natscli/Makefile  | 68 +++++++++++++++++++++++++++++++++++++++
 net/natscli/distinfo  | 89 +++++++++++++++++++++++++++++++++++++++++++++++++++
 net/natscli/pkg-descr | 16 +++++++++
 4 files changed, 174 insertions(+)

diff --git a/net/Makefile b/net/Makefile
index a348bd3d2c97..f6c064f2ccdd 100644
--- a/net/Makefile
+++ b/net/Makefile
@@ -488,6 +488,7 @@
     SUBDIR += nats-server
     SUBDIR += nats-streaming-server
     SUBDIR += nats-top
+    SUBDIR += natscli
     SUBDIR += nbd-server
     SUBDIR += nbdkit
     SUBDIR += nc
diff --git a/net/natscli/Makefile b/net/natscli/Makefile
new file mode 100644
index 000000000000..98a6d32519ef
--- /dev/null
+++ b/net/natscli/Makefile
@@ -0,0 +1,68 @@
+PORTNAME=	natscli
+PORTVERSION=	0.0.29
+DISTVERSIONPREFIX=	v
+CATEGORIES=	net
+
+MAINTAINER=	olgeni@FreeBSD.org
+COMMENT=	Command line utility to interact with and manage NATS
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		go:modules
+GO_TARGET=	./nats
+GO_PKGNAME=	github.com/${GH_ACCOUNT}/${PORTNAME}
+USE_GITHUB=	yes
+GH_ACCOUNT=	nats-io
+GH_TUPLE=	AlecAivazis:survey:v2.3.2:alecaivazis_survey_v2/vendor/github.com/AlecAivazis/survey/v2 \
+		HdrHistogram:hdrhistogram-go:v1.1.2:hdrhistogram_hdrhistogram_go/vendor/github.com/HdrHistogram/hdrhistogram-go \
+		alecthomas:kingpin:v2.2.6:alecthomas_kingpin/vendor/gopkg.in/alecthomas/kingpin.v2 \
+		alecthomas:template:fb15b899a751:alecthomas_template/vendor/github.com/alecthomas/template \
+		alecthomas:units:b94a6e3cc137:alecthomas_units/vendor/github.com/alecthomas/units \
+		beorn7:perks:v1.0.1:beorn7_perks/vendor/github.com/beorn7/perks \
+		cespare:xxhash:v2.1.2:cespare_xxhash_v2/vendor/github.com/cespare/xxhash/v2 \
+		dustin:go-humanize:v1.0.0:dustin_go_humanize/vendor/github.com/dustin/go-humanize \
+		emicklei:dot:v0.16.0:emicklei_dot/vendor/github.com/emicklei/dot \
+		fatih:color:v1.13.0:fatih_color/vendor/github.com/fatih/color \
+		ghodss:yaml:v1.0.0:ghodss_yaml/vendor/github.com/ghodss/yaml \
+		go-yaml:yaml:v2.4.0:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \
+		golang:crypto:86341886e292:golang_crypto/vendor/golang.org/x/crypto \
+		golang:protobuf:v1.5.2:golang_protobuf/vendor/github.com/golang/protobuf \
+		golang:sys:da31bd327af9:golang_sys/vendor/golang.org/x/sys \
+		golang:term:03fcf44c2211:golang_term/vendor/golang.org/x/term \
+		golang:text:v0.3.7:golang_text/vendor/golang.org/x/text \
+		golang:time:f0f3c7e86c11:golang_time/vendor/golang.org/x/time \
+		google:go-cmp:v0.5.7:google_go_cmp/vendor/github.com/google/go-cmp \
+		gosuri:uilive:v0.0.4:gosuri_uilive/vendor/github.com/gosuri/uilive \
+		gosuri:uiprogress:v0.0.1:gosuri_uiprogress/vendor/github.com/gosuri/uiprogress \
+		guptarohit:asciigraph:v0.5.2:guptarohit_asciigraph/vendor/github.com/guptarohit/asciigraph \
+		kballard:go-shellquote:95032a82bc51:kballard_go_shellquote/vendor/github.com/kballard/go-shellquote \
+		klauspost:compress:v1.14.3:klauspost_compress/vendor/github.com/klauspost/compress \
+		mattn:go-colorable:v0.1.9:mattn_go_colorable/vendor/github.com/mattn/go-colorable \
+		mattn:go-isatty:v0.0.14:mattn_go_isatty/vendor/github.com/mattn/go-isatty \
+		matttproud:golang_protobuf_extensions:v1.0.1:matttproud_golang_protobuf_extensions/vendor/github.com/matttproud/golang_protobuf_extensions \
+		mgutz:ansi:9520e82c474b:mgutz_ansi/vendor/github.com/mgutz/ansi \
+		minio:highwayhash:v1.0.1:minio_highwayhash/vendor/github.com/minio/highwayhash \
+		nats-io:jsm.go:v0.0.29:nats_io_jsm_go/vendor/github.com/nats-io/jsm.go \
+		nats-io:jwt:58e87895b296:nats_io_jwt_v2/vendor/github.com/nats-io/jwt \
+		nats-io:nats-server:58806c1290b3:nats_io_nats_server_v2/vendor/github.com/nats-io/nats-server/v2 \
+		nats-io:nats.go:0096b1bfae8d:nats_io_nats_go/vendor/github.com/nats-io/nats.go \
+		nats-io:nkeys:v0.3.0:nats_io_nkeys/vendor/github.com/nats-io/nkeys \
+		nats-io:nuid:v1.0.1:nats_io_nuid/vendor/github.com/nats-io/nuid \
+		prometheus:client_golang:v1.12.1:prometheus_client_golang/vendor/github.com/prometheus/client_golang \
+		prometheus:client_model:v0.2.0:prometheus_client_model/vendor/github.com/prometheus/client_model \
+		prometheus:common:v0.32.1:prometheus_common/vendor/github.com/prometheus/common \
+		prometheus:procfs:v0.7.3:prometheus_procfs/vendor/github.com/prometheus/procfs \
+		protocolbuffers:protobuf-go:v1.26.0:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \
+		santhosh-tekuri:jsonschema:v5.0.0:santhosh_tekuri_jsonschema_v5/vendor/github.com/santhosh-tekuri/jsonschema/v5 \
+		tylertreat:hdrhistogram-writer:2e440612a39f:tylertreat_hdrhistogram_writer/vendor/github.com/tylertreat/hdrhistogram-writer \
+		xlab:tablewriter:80b567a11ad5:xlab_tablewriter/vendor/github.com/xlab/tablewriter
+
+PLIST_FILES=	bin/nats \
+		share/doc/${PORTNAME}/README.md
+
+post-install:
+	@${MKDIR} ${STAGEDIR}${DOCSDIR}
+	${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
+
+.include <bsd.port.mk>
diff --git a/net/natscli/distinfo b/net/natscli/distinfo
new file mode 100644
index 000000000000..8b71f32f0d39
--- /dev/null
+++ b/net/natscli/distinfo
@@ -0,0 +1,89 @@
+TIMESTAMP = 1645888553
+SHA256 (nats-io-natscli-v0.0.29_GH0.tar.gz) = db59fd19b941f8c7d36d15cd0ff6884327d2046a7d6c51eb7a1dfde624b5d9b4
+SIZE (nats-io-natscli-v0.0.29_GH0.tar.gz) = 138799
+SHA256 (AlecAivazis-survey-v2.3.2_GH0.tar.gz) = 0228fe7ecf6964cac7cba8fcd9dbb07a34ff5bc786435c750866033adc1f4faa
+SIZE (AlecAivazis-survey-v2.3.2_GH0.tar.gz) = 1238289
+SHA256 (HdrHistogram-hdrhistogram-go-v1.1.2_GH0.tar.gz) = 4990c5373608beec3239d051f4cf393e54c08c8ea472a861ac8c479646d38a57
+SIZE (HdrHistogram-hdrhistogram-go-v1.1.2_GH0.tar.gz) = 199187
+SHA256 (alecthomas-kingpin-v2.2.6_GH0.tar.gz) = 4624eae43489de8a71ea60efaf6744c581b6bd62909f7514c484c1ea0efaba5a
+SIZE (alecthomas-kingpin-v2.2.6_GH0.tar.gz) = 44383
+SHA256 (alecthomas-template-fb15b899a751_GH0.tar.gz) = 2e2a44375eca48ce941182504b5d13aa98182b9a3f64ace33bfda52208bd0f5e
+SIZE (alecthomas-template-fb15b899a751_GH0.tar.gz) = 55339
+SHA256 (alecthomas-units-b94a6e3cc137_GH0.tar.gz) = 85363142a53436bea696d297e5b5fcda6bc6a8104b1d7ba0db88ffee455b72e2
+SIZE (alecthomas-units-b94a6e3cc137_GH0.tar.gz) = 6012
+SHA256 (beorn7-perks-v1.0.1_GH0.tar.gz) = 98db84bb0224a26094e6adba91b7ee7a1a7ace28cb648d818f8e779e6a19f825
+SIZE (beorn7-perks-v1.0.1_GH0.tar.gz) = 10867
+SHA256 (cespare-xxhash-v2.1.2_GH0.tar.gz) = 471399cfcf0b1bd188add8d34435b91e7011cedbfe76e29687803a9d74320352
+SIZE (cespare-xxhash-v2.1.2_GH0.tar.gz) = 11244
+SHA256 (dustin-go-humanize-v1.0.0_GH0.tar.gz) = e4540bd50ac855143b4f2e509313079c50cf5d8774f09cc10dbca5ae9803d8ba
+SIZE (dustin-go-humanize-v1.0.0_GH0.tar.gz) = 17260
+SHA256 (emicklei-dot-v0.16.0_GH0.tar.gz) = ae3c3409e92f60f5cafefe6c514d615e907142e13200e10b14a1174b9cb55a26
+SIZE (emicklei-dot-v0.16.0_GH0.tar.gz) = 32422
+SHA256 (fatih-color-v1.13.0_GH0.tar.gz) = 326ff785bc0cb5171c17be2a65959e83ee7889ba39412ba4c53c062e2df3ffec
+SIZE (fatih-color-v1.13.0_GH0.tar.gz) = 10826
+SHA256 (ghodss-yaml-v1.0.0_GH0.tar.gz) = 8a76b47cd171944612aae1cfa08bbb971b63fec16794c839252808392097de44
+SIZE (ghodss-yaml-v1.0.0_GH0.tar.gz) = 11772
+SHA256 (go-yaml-yaml-v2.4.0_GH0.tar.gz) = d8e94679e5fff6bd1a35e10241543929a5f3da44f701755babf99b3daf0faac0
+SIZE (go-yaml-yaml-v2.4.0_GH0.tar.gz) = 73209
+SHA256 (golang-crypto-86341886e292_GH0.tar.gz) = 92b4ef34c44645bf9e6fccc20ca0a4307ef1e4e526f583141c05832182124b6b
+SIZE (golang-crypto-86341886e292_GH0.tar.gz) = 1628070
+SHA256 (golang-protobuf-v1.5.2_GH0.tar.gz) = 088cc0f3ba18fb8f9d00319568ff0af5a06d8925a6e6cb983bb837b4efb703b3
+SIZE (golang-protobuf-v1.5.2_GH0.tar.gz) = 171702
+SHA256 (golang-sys-da31bd327af9_GH0.tar.gz) = 0c834c593096084aa9458c2ad0ff9177a6397950f4dc7376c9d67367f0687623
+SIZE (golang-sys-da31bd327af9_GH0.tar.gz) = 1257001
+SHA256 (golang-term-03fcf44c2211_GH0.tar.gz) = 1919967c8fbf15de9261a2315d90072357524ee557d7df106b426def02a8e5f3
+SIZE (golang-term-03fcf44c2211_GH0.tar.gz) = 14972
+SHA256 (golang-text-v0.3.7_GH0.tar.gz) = 7cab2f6c3133ac1d422edd952b0dd2082fa55a73c2663fb2defd9bf83d649b26
+SIZE (golang-text-v0.3.7_GH0.tar.gz) = 8354718
+SHA256 (golang-time-f0f3c7e86c11_GH0.tar.gz) = 421890dd6e4b7e8d5ca68cc163c8b3b08436898664534aedfefd8602e11a4e53
+SIZE (golang-time-f0f3c7e86c11_GH0.tar.gz) = 9626
+SHA256 (google-go-cmp-v0.5.7_GH0.tar.gz) = 70c779a3f2625d7ab5a427b4244b93c2e6a8d1cd779c182fc4fad7ff864a4fb2
+SIZE (google-go-cmp-v0.5.7_GH0.tar.gz) = 104499
+SHA256 (gosuri-uilive-v0.0.4_GH0.tar.gz) = d6d60529725b8fe0a75d30361961257f2dc0c99ae567256fb6d9e45bf5243036
+SIZE (gosuri-uilive-v0.0.4_GH0.tar.gz) = 153271
+SHA256 (gosuri-uiprogress-v0.0.1_GH0.tar.gz) = 02c75ecc3f948d33beb2a484deb9566a00fccbdfc55ed52ae3bc6e84af669c3d
+SIZE (gosuri-uiprogress-v0.0.1_GH0.tar.gz) = 1655252
+SHA256 (guptarohit-asciigraph-v0.5.2_GH0.tar.gz) = 0c89a5e402cb491f0257457610be2c622d783d49c83524689f4ecb9621096c72
+SIZE (guptarohit-asciigraph-v0.5.2_GH0.tar.gz) = 9606
+SHA256 (kballard-go-shellquote-95032a82bc51_GH0.tar.gz) = dde336eb697f7f9c26cf6d1467f75b6cf559262c1b0b110d28fff29790f76bc5
+SIZE (kballard-go-shellquote-95032a82bc51_GH0.tar.gz) = 4328
+SHA256 (klauspost-compress-v1.14.3_GH0.tar.gz) = 43a6fd9c10745891a104b05e960897b9cc34af63eeda96ce1c6812b5b0c64c55
+SIZE (klauspost-compress-v1.14.3_GH0.tar.gz) = 15495638
+SHA256 (mattn-go-colorable-v0.1.9_GH0.tar.gz) = 37412d729fb569597b5af6c2c9600ba560e828ad96fa053a0957fdacdb3678ef
+SIZE (mattn-go-colorable-v0.1.9_GH0.tar.gz) = 9578
+SHA256 (mattn-go-isatty-v0.0.14_GH0.tar.gz) = e6460325edf600297cf2ef68834938fb1c5b8d5f234b3b24ec7c0a29a2d70b39
+SIZE (mattn-go-isatty-v0.0.14_GH0.tar.gz) = 4710
+SHA256 (matttproud-golang_protobuf_extensions-v1.0.1_GH0.tar.gz) = 2def0ee6f6b12b1efc0e3007d89f598608a072610e805c3655ea9d13c3ead49b
+SIZE (matttproud-golang_protobuf_extensions-v1.0.1_GH0.tar.gz) = 37184
+SHA256 (mgutz-ansi-9520e82c474b_GH0.tar.gz) = f9203c71aceb8b7ffa87181fd8f51dc69acce3d2161c4c017ea92c6840f85093
+SIZE (mgutz-ansi-9520e82c474b_GH0.tar.gz) = 4876
+SHA256 (minio-highwayhash-v1.0.1_GH0.tar.gz) = aa1fd01cd0c16d362e8e8a522f1bed6ccff76fb55107e6f5478b1b7bd329e951
+SIZE (minio-highwayhash-v1.0.1_GH0.tar.gz) = 22967
+SHA256 (nats-io-jsm.go-v0.0.29_GH0.tar.gz) = 3ca8f71a322c7370b98e34f2612d4fcb58ae16f8e066142be5fbdbb504d020a6
+SIZE (nats-io-jsm.go-v0.0.29_GH0.tar.gz) = 131964
+SHA256 (nats-io-jwt-58e87895b296_GH0.tar.gz) = 9bd3d924f32842fa5fcceb1cd4ff1992bee7c5c553c1f9c98a268816e9585878
+SIZE (nats-io-jwt-58e87895b296_GH0.tar.gz) = 81105
+SHA256 (nats-io-nats-server-58806c1290b3_GH0.tar.gz) = 0ea565d18a6e937b737a5d324875c3e8026101ac2011cc97b5f5c7c12245115a
+SIZE (nats-io-nats-server-58806c1290b3_GH0.tar.gz) = 1388395
+SHA256 (nats-io-nats.go-0096b1bfae8d_GH0.tar.gz) = e3b66af89332b50052f68a554271f30742a9436cc5c84a1c52cd0197162f001c
+SIZE (nats-io-nats.go-0096b1bfae8d_GH0.tar.gz) = 250216
+SHA256 (nats-io-nkeys-v0.3.0_GH0.tar.gz) = ea281df5dc380b84f61c3712b367f02957cff4cb7802e73b2b0b7588e4f6b809
+SIZE (nats-io-nkeys-v0.3.0_GH0.tar.gz) = 19986
+SHA256 (nats-io-nuid-v1.0.1_GH0.tar.gz) = a0b4fe5b40781add2a9fdb5d723313be5f5d11c1a79ea1dd2671278826ef078d
+SIZE (nats-io-nuid-v1.0.1_GH0.tar.gz) = 7529
+SHA256 (prometheus-client_golang-v1.12.1_GH0.tar.gz) = 3f7929ec4837932e68a0e7da9e0f1ff5aa19bc02de7a67823d0533a0d6852014
+SIZE (prometheus-client_golang-v1.12.1_GH0.tar.gz) = 194206
+SHA256 (prometheus-client_model-v0.2.0_GH0.tar.gz) = 4ab1be9cdfa702d7f49beeb09a256bcc6a2aad55e8a0a37e7732a46934264e12
+SIZE (prometheus-client_model-v0.2.0_GH0.tar.gz) = 10986
+SHA256 (prometheus-common-v0.32.1_GH0.tar.gz) = de06f354e24dec3bfeba9a3bd43bd3170b4231dfff3cd338b688a6e8c8050af6
+SIZE (prometheus-common-v0.32.1_GH0.tar.gz) = 146585
+SHA256 (prometheus-procfs-v0.7.3_GH0.tar.gz) = 5514e8b18c38b6376a84c623d59735d4eefb61fb3a14eb1f45e0a4c848f14a2b
+SIZE (prometheus-procfs-v0.7.3_GH0.tar.gz) = 178957
+SHA256 (protocolbuffers-protobuf-go-v1.26.0_GH0.tar.gz) = 26218474bcf776ecf32d7d194c6bfaca8e7b4f0c087e5b595fd50fbb31409676
+SIZE (protocolbuffers-protobuf-go-v1.26.0_GH0.tar.gz) = 1270215
+SHA256 (santhosh-tekuri-jsonschema-v5.0.0_GH0.tar.gz) = f25779f25a75967d7fde5b99d265f1ed12acb1f63f24f62fa47c45404de1aa5f
+SIZE (santhosh-tekuri-jsonschema-v5.0.0_GH0.tar.gz) = 242000
+SHA256 (tylertreat-hdrhistogram-writer-2e440612a39f_GH0.tar.gz) = b26789894d2aa47bd04a7ce6bcec7f569af10b966394d81e94593173065d6a2d
+SIZE (tylertreat-hdrhistogram-writer-2e440612a39f_GH0.tar.gz) = 8900
+SHA256 (xlab-tablewriter-80b567a11ad5_GH0.tar.gz) = 2e5155cfc91a39b7b52e79a44764a3ba1701c74cb56f3f970fe2afb72b2a779e
+SIZE (xlab-tablewriter-80b567a11ad5_GH0.tar.gz) = 18085
diff --git a/net/natscli/pkg-descr b/net/natscli/pkg-descr
new file mode 100644
index 000000000000..735a4d958d07
--- /dev/null
+++ b/net/natscli/pkg-descr
@@ -0,0 +1,16 @@
+NATS is an open-source, cloud-native messaging system.
+
+This is a command line utility to interact with and manage NATS.
+
+Features:
+
+  * JetStream management
+  * JetStream data and configuration backup
+  * Message publish and subscribe
+  * Service requests and creation
+  * Benchmarking and Latency testing
+  * Super Cluster observation
+  * Configuration context maintenance
+  * NATS ecosystem schema registry
+
+WWW: https://github.com/nats-io/natscli