git: 720cfd22944e - main - sysutils/gcp-ops-agent: [New port] Gather logs from GCE instances

From: Joseph Mingrone <jrm_at_FreeBSD.org>
Date: Mon, 04 Jul 2022 17:21:59 UTC
The branch main has been updated by jrm:

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

commit 720cfd22944e4656eba347b2dc82eb3fbe1f0069
Author:     Joseph Mingrone <jrm@FreeBSD.org>
AuthorDate: 2022-05-02 14:23:41 +0000
Commit:     Joseph Mingrone <jrm@FreeBSD.org>
CommitDate: 2022-07-04 17:21:30 +0000

    sysutils/gcp-ops-agent: [New port] Gather logs from GCE instances
    
    The Ops Agent is the primary agent for collecting telemetry from your
    Compute Engine instances.  Combining logging and metrics into a single
    agent, the Ops Agent uses Fluent Bit for logs, which supports
    high-throughput logging, and the OpenTelemetry Collector for metrics.
    You can configure the Ops Agent to support parsing of log files from
    third-party applications.
    
    WWW: https://cloud.google.com/stackdriver/docs/solutions/agents/ops-agent
    
    Sponsored by:   The FreeBSD Foundation
    Differential Revision:  https://reviews.freebsd.org/D35107
---
 sysutils/Makefile                |  1 +
 sysutils/gcp-ops-agent/Makefile  | 73 +++++++++++++++++++++++++++++++
 sysutils/gcp-ops-agent/distinfo  | 93 ++++++++++++++++++++++++++++++++++++++++
 sysutils/gcp-ops-agent/pkg-descr |  8 ++++
 4 files changed, 175 insertions(+)

diff --git a/sysutils/Makefile b/sysutils/Makefile
index dbc42a60c27f..3574fd0b40dd 100644
--- a/sysutils/Makefile
+++ b/sysutils/Makefile
@@ -455,6 +455,7 @@
     SUBDIR += garcon
     SUBDIR += gather
     SUBDIR += gconf-editor
+    SUBDIR += gcp-ops-agent
     SUBDIR += gdisk
     SUBDIR += gdmap
     SUBDIR += gdu
diff --git a/sysutils/gcp-ops-agent/Makefile b/sysutils/gcp-ops-agent/Makefile
new file mode 100644
index 000000000000..dfac3b5ec333
--- /dev/null
+++ b/sysutils/gcp-ops-agent/Makefile
@@ -0,0 +1,73 @@
+PORTNAME=	ops-agent
+DISTVERSION=	2.18.1
+CATEGORIES=	sysutils
+PKGNAMEPREFIX=	gcp-
+
+MAINTAINER=	jrm@FreeBSD.org
+COMMENT=	Gather logs and metrics from Google Compute Engine instances
+
+LICENSE=	APACHE20
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+USES=		go:modules
+USE_GITHUB=	yes
+GH_ACCOUNT=	GoogleCloudPlatform
+GH_TUPLE=	StackExchange:wmi:v1.2.1:stackexchange_wmi/vendor/github.com/StackExchange/wmi \
+		blang:semver:v3.5.1:blang_semver/vendor/github.com/blang/semver \
+		cenkalti:backoff:v4.1.2:cenkalti_backoff_v4/vendor/github.com/cenkalti/backoff/v4 \
+		census-instrumentation:opencensus-go:v0.23.0:census_instrumentation_opencensus_go/vendor/go.opencensus.io \
+		fatih:color:v1.10.0:fatih_color/vendor/github.com/fatih/color \
+		go-ole:go-ole:v1.2.5:go_ole_go_ole/vendor/github.com/go-ole/go-ole \
+		go-playground:locales:v0.14.0:go_playground_locales/vendor/github.com/go-playground/locales \
+		go-playground:universal-translator:v0.18.0:go_playground_universal_translator/vendor/github.com/go-playground/universal-translator \
+		go-playground:validator:v10.9.0:go_playground_validator_v10/vendor/github.com/go-playground/validator/v10 \
+		go-yaml:yaml:v2.2.3:go_yaml_yaml/vendor/gopkg.in/yaml.v2 \
+		goccy:go-yaml:v1.9.4:goccy_go_yaml/vendor/github.com/goccy/go-yaml \
+		golang:appengine:v1.6.7:golang_appengine/vendor/google.golang.org/appengine \
+		golang:crypto:a769d52b0f97:golang_crypto/vendor/golang.org/x/crypto \
+		golang:groupcache:8c9f03a8e57e:golang_groupcache/vendor/github.com/golang/groupcache \
+		golang:net:7fd8e65b6420:golang_net/vendor/golang.org/x/net \
+		golang:oauth2:d3ed0bb246c8:golang_oauth2/vendor/golang.org/x/oauth2 \
+		golang:protobuf:v1.5.2:golang_protobuf/vendor/github.com/golang/protobuf \
+		golang:sync:036812b2e83c:golang_sync/vendor/golang.org/x/sync \
+		golang:sys:1d35b9e2eb4e:golang_sys/vendor/golang.org/x/sys \
+		golang:text:v0.3.6:golang_text/vendor/golang.org/x/text \
+		golang:xerrors:5ec99f83aff1:golang_xerrors/vendor/golang.org/x/xerrors \
+		google:go-cmp:v0.5.6:google_go_cmp/vendor/github.com/google/go-cmp \
+		google:go-genproto:00ab72f36ad5:google_go_genproto/vendor/google.golang.org/genproto \
+		google:uuid:v1.3.0:google_uuid/vendor/github.com/google/uuid \
+		googleapis:gax-go:v2.1.1:googleapis_gax_go_v2/vendor/github.com/googleapis/gax-go \
+		googleapis:google-api-go-client:v0.65.0:googleapis_google_api_go_client/vendor/google.golang.org/api \
+		googleapis:google-cloud-go:logging/v1.4.2:googleapis_google_cloud_go_logging \
+		googleapis:google-cloud-go:monitoring/v1.2.0:googleapis_google_cloud_go_monitoring \
+		googleapis:google-cloud-go:storage/v1.18.2:googleapis_google_cloud_go_storage \
+		googleapis:google-cloud-go:v0.1.0:googleapis_google_cloud_go_compute/vendor/cloud.google.com/go \
+		googleapis:google-cloud-go:v0.100.2:googleapis_google_cloud_go \
+		grpc:grpc-go:v1.40.1:grpc_grpc_go/vendor/google.golang.org/grpc \
+		hashicorp:errwrap:v1.0.0:hashicorp_errwrap/vendor/github.com/hashicorp/errwrap \
+		hashicorp:go-multierror:v1.1.0:hashicorp_go_multierror/vendor/github.com/hashicorp/go-multierror \
+		kardianos:osext:2bc1f35cddc0:kardianos_osext/vendor/github.com/kardianos/osext \
+		leodido:go-urn:v1.2.1:leodido_go_urn/vendor/github.com/leodido/go-urn \
+		mattn:go-colorable:v0.1.8:mattn_go_colorable/vendor/github.com/mattn/go-colorable \
+		mattn:go-isatty:v0.0.12:mattn_go_isatty/vendor/github.com/mattn/go-isatty \
+		mitchellh:mapstructure:v1.4.2:mitchellh_mapstructure/vendor/github.com/mitchellh/mapstructure \
+		protocolbuffers:protobuf-go:v1.27.1:protocolbuffers_protobuf_go/vendor/google.golang.org/protobuf \
+		shirou:gopsutil:v3.21.8:shirou_gopsutil/vendor/github.com/shirou/gopsutil \
+		tklauser:go-sysconf:v0.3.6:tklauser_go_sysconf/vendor/github.com/tklauser/go-sysconf \
+		tklauser:numcpus:v0.2.2:tklauser_numcpus/vendor/github.com/tklauser/numcpus \
+		uber-go:atomic:v1.7.0:uber_go_atomic/vendor/go.uber.org/atomic \
+		uber-go:multierr:v1.7.0:uber_go_multierr/vendor/go.uber.org/multierr
+GO_TARGET=	./cmd/google_cloud_ops_agent_engine
+
+PLIST_FILES=	bin/google_cloud_ops_agent_engine
+
+post-extract:
+	@${RLN} ${WRKSRC_googleapis_google_cloud_go} ${WRKSRC}/vendor/cloud.google.com/go
+	@${RM} -r ${WRKSRC}/vendor/cloud.google.com/go/logging
+	@${RLN} ${WRKSRC_googleapis_google_cloud_go_logging}/logging ${WRKSRC}/vendor/cloud.google.com/go/logging
+	@${RM} -r ${WRKSRC}/vendor/cloud.google.com/go/monitoring
+	@${RLN} ${WRKSRC_googleapis_google_cloud_go_monitoring}/monitoring ${WRKSRC}/vendor/cloud.google.com/go/monitoring
+	@${RM} -r ${WRKSRC}/vendor/cloud.google.com/go/storage
+	@${RLN} ${WRKSRC_googleapis_google_cloud_go_storage}/storage ${WRKSRC}/vendor/cloud.google.com/go/storage
+
+.include <bsd.port.mk>
diff --git a/sysutils/gcp-ops-agent/distinfo b/sysutils/gcp-ops-agent/distinfo
new file mode 100644
index 000000000000..9434b5c9263b
--- /dev/null
+++ b/sysutils/gcp-ops-agent/distinfo
@@ -0,0 +1,93 @@
+TIMESTAMP = 1656954872
+SHA256 (GoogleCloudPlatform-ops-agent-2.18.1_GH0.tar.gz) = ca7dc1b7229395efc397989597114876e769b585fba3e8fe5239e399bb9782ce
+SIZE (GoogleCloudPlatform-ops-agent-2.18.1_GH0.tar.gz) = 534226
+SHA256 (StackExchange-wmi-v1.2.1_GH0.tar.gz) = a90126aa4c4defa7455be9610e84b0606972eccfa4111c2ec97179691d240b5a
+SIZE (StackExchange-wmi-v1.2.1_GH0.tar.gz) = 12449
+SHA256 (blang-semver-v3.5.1_GH0.tar.gz) = 3d9da53f4c2d3169bfa9b25f2f36f301a37556a47259c870881524c643c69c57
+SIZE (blang-semver-v3.5.1_GH0.tar.gz) = 14831
+SHA256 (cenkalti-backoff-v4.1.2_GH0.tar.gz) = 22b1fbf617363c3230ccb01cc2708148c7c8f91de332fe923b02da352ebbdd34
+SIZE (cenkalti-backoff-v4.1.2_GH0.tar.gz) = 9826
+SHA256 (census-instrumentation-opencensus-go-v0.23.0_GH0.tar.gz) = cc9dc0234de1baacf1855cf19615b381ca2f2adb83a2871e7a9b8b74e46818cf
+SIZE (census-instrumentation-opencensus-go-v0.23.0_GH0.tar.gz) = 176498
+SHA256 (fatih-color-v1.10.0_GH0.tar.gz) = a00342a7ffb8b119346dce56e152a111cbb9eab3970c429cc2ed4272aec2858e
+SIZE (fatih-color-v1.10.0_GH0.tar.gz) = 1267532
+SHA256 (go-ole-go-ole-v1.2.5_GH0.tar.gz) = 02cdfa4eab288ce2075c9f90ceb6954a12f48a2f6c9eef4a65459b7376d8befa
+SIZE (go-ole-go-ole-v1.2.5_GH0.tar.gz) = 52031
+SHA256 (go-playground-locales-v0.14.0_GH0.tar.gz) = ec0773309a3be0713aca1cf45342a4bded0b8394482bc1e11fe5b7b46e751dc4
+SIZE (go-playground-locales-v0.14.0_GH0.tar.gz) = 4363556
+SHA256 (go-playground-universal-translator-v0.18.0_GH0.tar.gz) = 80858c09759ac21c5dea3c5d99a590cfe42b468afcc11c914fe180dff95a1e30
+SIZE (go-playground-universal-translator-v0.18.0_GH0.tar.gz) = 37195
+SHA256 (go-playground-validator-v10.9.0_GH0.tar.gz) = d9e31aa45fae054fec8911125e7aa1f3e6fea0a9954dfc2d4d2a54479f25844a
+SIZE (go-playground-validator-v10.9.0_GH0.tar.gz) = 204809
+SHA256 (go-yaml-yaml-v2.2.3_GH0.tar.gz) = 47211277d63e284c7196e6b402598e4ba42d8d14ea286c9981fe6e19ad2ea9da
+SIZE (go-yaml-yaml-v2.2.3_GH0.tar.gz) = 70910
+SHA256 (goccy-go-yaml-v1.9.4_GH0.tar.gz) = 3d4b5ea7c2a8711fce5c1a0016cb2ca8fc2a79200cb7b3424aeba4a1684a2e3d
+SIZE (goccy-go-yaml-v1.9.4_GH0.tar.gz) = 84441
+SHA256 (golang-appengine-v1.6.7_GH0.tar.gz) = c623d81235f7c9699e299b328191d813337dd57dcc800d7afdb5130e8c321a8f
+SIZE (golang-appengine-v1.6.7_GH0.tar.gz) = 333007
+SHA256 (golang-crypto-a769d52b0f97_GH0.tar.gz) = d93f7b5b85901b88518c3997c20ac1aff1d60ecb127a0427e87da87cc7d593a1
+SIZE (golang-crypto-a769d52b0f97_GH0.tar.gz) = 1731973
+SHA256 (golang-groupcache-8c9f03a8e57e_GH0.tar.gz) = b92f918daa48048fd360f14d1a4aed6e70c1176ae6b00b0dc04094bb088e9865
+SIZE (golang-groupcache-8c9f03a8e57e_GH0.tar.gz) = 26047
+SHA256 (golang-net-7fd8e65b6420_GH0.tar.gz) = c2aa12e03a70a8fbbe27293d981102697856801f0888fb3fea607132fb3fb5b7
+SIZE (golang-net-7fd8e65b6420_GH0.tar.gz) = 1249773
+SHA256 (golang-oauth2-d3ed0bb246c8_GH0.tar.gz) = 17989d348e2fd423992005229d92c9fc5e25ad5358f72d31361dbf1cdd7c505c
+SIZE (golang-oauth2-d3ed0bb246c8_GH0.tar.gz) = 87604
+SHA256 (golang-protobuf-v1.5.2_GH0.tar.gz) = 088cc0f3ba18fb8f9d00319568ff0af5a06d8925a6e6cb983bb837b4efb703b3
+SIZE (golang-protobuf-v1.5.2_GH0.tar.gz) = 171702
+SHA256 (golang-sync-036812b2e83c_GH0.tar.gz) = 75ac8fc16bdceb2496c4a9cc98584b70c29032d91a9e57a624acb073e3232fda
+SIZE (golang-sync-036812b2e83c_GH0.tar.gz) = 18752
+SHA256 (golang-sys-1d35b9e2eb4e_GH0.tar.gz) = cb599b1befb8f0b8550a528272ac5ebdba968676702bc4adbc8f5122243ede5f
+SIZE (golang-sys-1d35b9e2eb4e_GH0.tar.gz) = 1255687
+SHA256 (golang-text-v0.3.6_GH0.tar.gz) = f66bebcf21985b0a713d67c6c35dfc9800d3b6d00d62b83ed0ce5b2ed4cb9760
+SIZE (golang-text-v0.3.6_GH0.tar.gz) = 8351095
+SHA256 (golang-xerrors-5ec99f83aff1_GH0.tar.gz) = 71975d658357e170fd6a41f92539cde8b39c9cd8bfe5931b6311bc5f5c0da0d7
+SIZE (golang-xerrors-5ec99f83aff1_GH0.tar.gz) = 13664
+SHA256 (google-go-cmp-v0.5.6_GH0.tar.gz) = cba2118596f694c135b3f3d6fe49b73ca2a7882aa4d7f346e341cb106afce5f1
+SIZE (google-go-cmp-v0.5.6_GH0.tar.gz) = 104421
+SHA256 (google-go-genproto-00ab72f36ad5_GH0.tar.gz) = a004fe7501c153279e6fad3b5345e32126c8be31cb7ec7a0a814ae153dd3d344
+SIZE (google-go-genproto-00ab72f36ad5_GH0.tar.gz) = 12335081
+SHA256 (google-uuid-v1.3.0_GH0.tar.gz) = 7f7f37c47980e0afcc178a9ffc390bec29ed2371919b4c07658eb01791a7f921
+SIZE (google-uuid-v1.3.0_GH0.tar.gz) = 16210
+SHA256 (googleapis-gax-go-v2.1.1_GH0.tar.gz) = d90094755c79f84815c5a215edd940ab6ac81a7fa3fa63bc2229e7d7c38171fe
+SIZE (googleapis-gax-go-v2.1.1_GH0.tar.gz) = 70015
+SHA256 (googleapis-google-api-go-client-v0.65.0_GH0.tar.gz) = f2dc3375a7fc734531a4909d73c9adb6a7f6b21c6dce95fbc93682f47aeedc82
+SIZE (googleapis-google-api-go-client-v0.65.0_GH0.tar.gz) = 23377679
+SHA256 (googleapis-google-cloud-go-logging-v1.4.2_GH0.tar.gz) = a27f51732a3cbcbb5970a7dc44113e6eb3c45ec38b6686b911348a0e762e42ed
+SIZE (googleapis-google-cloud-go-logging-v1.4.2_GH0.tar.gz) = 3732162
+SHA256 (googleapis-google-cloud-go-monitoring-v1.2.0_GH0.tar.gz) = 5f8e6ed67ae2b6f95654baac523a5bf162b1860a391a0572268343de2533dc7b
+SIZE (googleapis-google-cloud-go-monitoring-v1.2.0_GH0.tar.gz) = 6885812
+SHA256 (googleapis-google-cloud-go-storage-v1.18.2_GH0.tar.gz) = 4000240724c1f293222a11bed37d9cbce548fa00f92d9ad46db1aac1eaa8b1b1
+SIZE (googleapis-google-cloud-go-storage-v1.18.2_GH0.tar.gz) = 6659129
+SHA256 (googleapis-google-cloud-go-v0.1.0_GH0.tar.gz) = 891f0135a80b2a8c65217ddb2b41a3c13a4871bafb25e8494c7c52951bf7c0cd
+SIZE (googleapis-google-cloud-go-v0.1.0_GH0.tar.gz) = 224826
+SHA256 (googleapis-google-cloud-go-v0.100.2_GH0.tar.gz) = 21a52ffb356b09bbe00bd0a25478a56a1ea9a4c6f5958375784a27fa07501fda
+SIZE (googleapis-google-cloud-go-v0.100.2_GH0.tar.gz) = 6908129
+SHA256 (grpc-grpc-go-v1.40.1_GH0.tar.gz) = c931facadc745132f434a5c01805be564559a487d19d15516e90e14f1686fdc7
+SIZE (grpc-grpc-go-v1.40.1_GH0.tar.gz) = 1301898
+SHA256 (hashicorp-errwrap-v1.0.0_GH0.tar.gz) = 26afc0e5895c6ce87c881c5c02c682ccc9a08174a9c27ca26d4a1e72dbf78128
+SIZE (hashicorp-errwrap-v1.0.0_GH0.tar.gz) = 8346
+SHA256 (hashicorp-go-multierror-v1.1.0_GH0.tar.gz) = 466a1f3596417a35b407d06d2dc2cb87dba46b025af4f77d30f82aa6e0e6d4d4
+SIZE (hashicorp-go-multierror-v1.1.0_GH0.tar.gz) = 12084
+SHA256 (kardianos-osext-2bc1f35cddc0_GH0.tar.gz) = c032455620be4be434428bfe5b73679ccd7c01f402607c45204d233ce8923309
+SIZE (kardianos-osext-2bc1f35cddc0_GH0.tar.gz) = 4898
+SHA256 (leodido-go-urn-v1.2.1_GH0.tar.gz) = b3d5bf4aa0eca3cf0e228267697b58c6d7bab5f3a154ac0bb0f3dcb7d1b2f2ce
+SIZE (leodido-go-urn-v1.2.1_GH0.tar.gz) = 1102833
+SHA256 (mattn-go-colorable-v0.1.8_GH0.tar.gz) = 1027954f9abbe06b6e117e3047af70204dd0eb4f8c27fcd459fb2574b279755f
+SIZE (mattn-go-colorable-v0.1.8_GH0.tar.gz) = 9571
+SHA256 (mattn-go-isatty-v0.0.12_GH0.tar.gz) = addbdc341d7685ed4cc8d2d8a8fd2bd9b784bde00d0ea99fb251039fc10c611c
+SIZE (mattn-go-isatty-v0.0.12_GH0.tar.gz) = 4548
+SHA256 (mitchellh-mapstructure-v1.4.2_GH0.tar.gz) = 640c852b5818ba4b4d756e268048dff4acbb18273ec1ce5df4f16537567b37d8
+SIZE (mitchellh-mapstructure-v1.4.2_GH0.tar.gz) = 28304
+SHA256 (protocolbuffers-protobuf-go-v1.27.1_GH0.tar.gz) = 3ec41a8324431e72f85e0dc0c2c098cc14c3cb1ee8820996c8f46afca2d65609
+SIZE (protocolbuffers-protobuf-go-v1.27.1_GH0.tar.gz) = 1278521
+SHA256 (shirou-gopsutil-v3.21.8_GH0.tar.gz) = 5ec07975b4ec6388f62bde27464fa3fe99b6a7b5697aa46f6e849cfe913f1b04
+SIZE (shirou-gopsutil-v3.21.8_GH0.tar.gz) = 296744
+SHA256 (tklauser-go-sysconf-v0.3.6_GH0.tar.gz) = c3925a5ed176bc62dc1c1abcb3905eea8a0e6bbf001b4aba1a9fc830d40cc0ce
+SIZE (tklauser-go-sysconf-v0.3.6_GH0.tar.gz) = 27559
+SHA256 (tklauser-numcpus-v0.2.2_GH0.tar.gz) = 3dbc9dc377d9b780a7ac16ca2ab177bd6682c072cc82d02228b1697b61a87f04
+SIZE (tklauser-numcpus-v0.2.2_GH0.tar.gz) = 8371
+SHA256 (uber-go-atomic-v1.7.0_GH0.tar.gz) = 4d655e90a23d023b36607e2ce94c3b7bf650d41c81c0faff32432581d9099ad1
+SIZE (uber-go-atomic-v1.7.0_GH0.tar.gz) = 18566
+SHA256 (uber-go-multierr-v1.7.0_GH0.tar.gz) = 7b9b6b812f64ad756ada9dd72db1a8be51cdbfa831defe9111cb4e0877138242
+SIZE (uber-go-multierr-v1.7.0_GH0.tar.gz) = 15054
diff --git a/sysutils/gcp-ops-agent/pkg-descr b/sysutils/gcp-ops-agent/pkg-descr
new file mode 100644
index 000000000000..8f68ae218ef7
--- /dev/null
+++ b/sysutils/gcp-ops-agent/pkg-descr
@@ -0,0 +1,8 @@
+The Ops Agent is the primary agent for collecting telemetry from your
+Compute Engine instances.  Combining logging and metrics into a single
+agent, the Ops Agent uses Fluent Bit for logs, which supports
+high-throughput logging, and the OpenTelemetry Collector for metrics.
+You can configure the Ops Agent to support parsing of log files from
+third-party applications.
+
+WWW: https://cloud.google.com/stackdriver/docs/solutions/agents/ops-agent