Page MenuHomeFreeBSD

D18792.id52695.diff
No OneTemporary

D18792.id52695.diff

Index: sysutils/node_exporter/Makefile
===================================================================
--- sysutils/node_exporter/Makefile
+++ sysutils/node_exporter/Makefile
@@ -4,24 +4,36 @@
PORTNAME= node_exporter
PORTVERSION= 0.17.0
DISTVERSIONPREFIX=v
+PORTREVISION= 1
CATEGORIES= sysutils
MAINTAINER= ports@ecadlabs.com
COMMENT= Prometheus exporter for machine metrics
LICENSE= APACHE20
+LICENSE_FILE= ${WRKSRC}/LICENSE
-USES= go
-USE_GITHUB= yes
+TEST_DEPENDS= promtool:net-mgmt/prometheus2 \
+ bash:shells/bash \
+ gsed:textproc/gsed
+USES= gmake go
+USE_GITHUB= yes
GH_ACCOUNT= prometheus
+USE_RC_SUBR= node_exporter
+.if target(do-test)
+USES+= shebangfix
+SHEBANG_FILES= ttar
+.endif
+
GO_PKGNAME= github.com/${GH_ACCOUNT}/${PORTNAME}
GO_TARGET= github.com/${GH_ACCOUNT}/${PORTNAME}
-PLIST_FILES= bin/node_exporter
+# A "checkrules" target is being added in >0.17.0.
+TEST_TARGET= test
-USE_RC_SUBR= node_exporter
+TEST_ENV= PROMTOOL=${LOCALBASE}/bin/promtool
BUILD_USER?= ${USER}
LD_FLAG_X_PREFIX= -X ${GO_PKGNAME}/vendor/${GO_PKGNAME:H}/common/version
@@ -32,7 +44,38 @@
${LD_FLAG_X_PREFIX}.BuildUser=${BUILD_USER}
GO_BUILDFLAGS= -v -ldflags "${LD_FLAG_STRING}"
+OPTIONS_DEFINE= DOCS EXAMPLES
+
do-install:
${INSTALL_PROGRAM} ${WRKDIR}/bin/node_exporter ${STAGEDIR}${PREFIX}/bin
+
+post-install-DOCS-on:
+ ${MKDIR} ${STAGEDIR}${DOCSDIR}
+ cd ${WRKSRC}/docs && \
+ ${COPYTREE_SHARE} . ${STAGEDIR}${DOCSDIR}
+ ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR}
+
+post-install-EXAMPLES-on:
+ ${MKDIR} ${STAGEDIR}${EXAMPLESDIR}/text_collector_examples
+ cd ${WRKSRC} && ${COPYTREE_SHARE} ./text_collector_examples ${STAGEDIR}${EXAMPLESDIR}
+
+# TestFileDescriptorLeak is being skipped at the moment because procfs(5) is
+# not properly detected.
+pre-test:
+ # Prevent Go from attempting to use Git to redownload its dependencies.
+ # They are already present in ${WRKSRC}/vendor.
+ ${RM} ${WRKSRC}/go.mod
+
+ ${REINPLACE_CMD} -e 's|sed|${LOCALBASE}/bin/gsed|g' ${WRKSRC}/ttar
+
+ ${RM} -r ${WRKDIR}/src
+ ${LN} -sf ${WRKSRC}/vendor ${WRKDIR}/src
+ ${MKDIR} ${WRKSRC}/vendor/${GO_PKGNAME}
+ ${LN} -sf ${WRKSRC}/collector ${WRKSRC}/vendor/${GO_PKGNAME}/collector
+
+ # GOPATH has to have exactly one element in order to have the test
+ # suite detect the node_exporter binary. "-v" is added here for us to
+ # see skipped tests.
+ ${REINPLACE_CMD} -E 's|(\$$\(GO\) test)|env GOPATH="${WRKDIR}" \1 -v|g' ${WRKSRC}/Makefile
.include <bsd.port.mk>
Index: sysutils/node_exporter/pkg-descr
===================================================================
--- sysutils/node_exporter/pkg-descr
+++ sysutils/node_exporter/pkg-descr
@@ -1,4 +1,4 @@
-node_exporter is a prometheus exporter for machine metrics, written in Go
-with pluggable metric collectors.
+Node exporter is a Prometheus exporter for hardware and OS metrics, written in
+Go with pluggable metric collectors.
WWW: https://github.com/prometheus/node_exporter
Index: sysutils/node_exporter/pkg-plist
===================================================================
--- /dev/null
+++ sysutils/node_exporter/pkg-plist
@@ -0,0 +1,17 @@
+bin/node_exporter
+%%PORTDOCS%%%%DOCSDIR%%/README.md
+%%PORTDOCS%%%%DOCSDIR%%/TIME.md
+%%PORTDOCS%%%%DOCSDIR%%/V0_16_UPGRADE_GUIDE.md
+%%PORTDOCS%%%%DOCSDIR%%/example-16-compatibility-rules-new-to-old.yml
+%%PORTDOCS%%%%DOCSDIR%%/example-16-compatibility-rules.yml
+%%PORTDOCS%%%%DOCSDIR%%/example-17-compatibility-rules-new-to-old.yml
+%%PORTDOCS%%%%DOCSDIR%%/example-17-compatibility-rules.yml
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/README.md
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/apt.sh
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/deleted_libraries.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/directory-size.sh
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/ipmitool
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/md_info.sh
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/ntpd_metrics.py
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/smartmon.sh
+%%PORTEXAMPLES%%%%EXAMPLESDIR%%/text_collector_examples/storcli.py

File Metadata

Mime Type
text/plain
Expires
Fri, Apr 10, 8:27 PM (7 h, 45 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
31243678
Default Alt Text
D18792.id52695.diff (4 KB)

Event Timeline