Index: sysutils/snmp_exporter/Makefile =================================================================== --- sysutils/snmp_exporter/Makefile +++ sysutils/snmp_exporter/Makefile @@ -1,37 +1,40 @@ # $FreeBSD$ PORTNAME= snmp_exporter -PORTVERSION= 0.9.0 DISTVERSIONPREFIX=v +DISTVERSION= 0.9.0 +PORTREVISION= 1 CATEGORIES= sysutils MAINTAINER= fabian.freyer@physik.tu-berlin.de COMMENT= SNMP Exporter for Prometheus LICENSE= APACHE20 LIB_DEPENDS= libnetsnmp.so:net-mgmt/net-snmp USES= go USE_GITHUB= yes +GH_ACCOUNT= prometheus USE_RC_SUBR= snmp_exporter -GH_ACCOUNT= prometheus +USERS= prometheus +GROUPS= prometheus GO_PKGNAME= github.com/${GH_ACCOUNT}/${PORTNAME} GO_TARGET= github.com/${GH_ACCOUNT}/${PORTNAME} do-build: (cd ${GO_WRKSRC}; ${SETENV} ${MAKE_ENV} ${GO_ENV} ${GO_CMD} install -v ${GO_TARGET}) (cd ${GO_WRKSRC}/generator; ${SETENV} ${MAKE_ENV} ${GO_ENV} ${GO_CMD} install -v ${GO_TARGET}/generator) post-patch: @${REINPLACE_CMD} -e 's|/usr/local|${PREFIX}|g' ${GO_WRKSRC}/generator/main.go do-install: ${MKDIR} ${STAGEDIR}${PREFIX}/etc/snmp_exporter/ ${INSTALL_DATA} ${FILESDIR}/generator.yml ${STAGEDIR}${PREFIX}/etc/snmp_exporter/generator.yml ${INSTALL_PROGRAM} ${WRKDIR}/bin/snmp_exporter ${STAGEDIR}${PREFIX}/bin ${INSTALL_PROGRAM} ${WRKDIR}/bin/generator ${STAGEDIR}${PREFIX}/bin/snmp_exporter_generator .include Index: sysutils/snmp_exporter/files/snmp_exporter.in =================================================================== --- sysutils/snmp_exporter/files/snmp_exporter.in +++ sysutils/snmp_exporter/files/snmp_exporter.in @@ -12,9 +12,9 @@ # snmp_exporter_enable (bool): Set to NO by default. # Set it to YES to enable snmp_exporter. # snmp_exporter_user (string): Set user that snmp_exporter will run under -# Default is "nobody". +# Default is "prometheus". # snmp_exporter_group (string): Set group that snmp_exporter will run under -# Default is "nobody". +# Default is "prometheus". # snmp_exporter_args (string): Set extra arguments to pass to snmp_exporter # Default is "". # snmp_exporter_listen_address (string):Set ip:port that snmp_exporter will listen on @@ -26,36 +26,34 @@ . /etc/rc.subr name=snmp_exporter +desc="SNMP exporter for use with prometheus" rcvar=snmp_exporter_enable load_rc_config $name -: ${snmp_exporter_enable:="NO"} -: ${snmp_exporter_user:="nobody"} -: ${snmp_exporter_group:="nobody"} -: ${snmp_exporter_args:=""} -: ${snmp_exporter_listen_address:=":9116"} -: ${snmp_exporter_config_file:="%%PREFIX%%/etc/snmp_exporter/snmp.yml"} +: ${snmp_exporter_enable:=NO} +: ${snmp_exporter_user:=prometheus} +: ${snmp_exporter_group:=prometheus} +: ${snmp_exporter_listen_address=:9116} +: ${snmp_exporter_config_file="%%PREFIX%%/etc/snmp_exporter/snmp.yml"} pidfile=/var/run/snmp_exporter.pid -command="/usr/sbin/daemon" +command=/usr/sbin/daemon procname="%%PREFIX%%/bin/snmp_exporter" command_args="-p ${pidfile} /usr/bin/env ${procname} \ --web.listen-address=${snmp_exporter_listen_address} \ --config.file=${snmp_exporter_config_file} \ ${snmp_exporter_args}" start_precmd=snmp_exporter_startprecmd snmp_exporter_startprecmd() { if [ ! -e ${pidfile} ]; then install -o ${snmp_exporter_user} -g ${snmp_exporter_group} /dev/null ${pidfile}; - fi - if [ ! -d ${snmp_exporter_textfile_dir} ]; then - install -d -o ${snmp_exporter_user} -g ${snmp_exporter_group} -m 1755 ${snmp_exporter_textfile_dir} + else + chown ${snmp_exporter_user}:${snmp_exporter_group} ${pidfile}; fi } -load_rc_config $name run_rc_command "$1"