diff options
author | Kurt Jaeger <pi@FreeBSD.org> | 2016-03-20 20:20:13 +0000 |
---|---|---|
committer | Kurt Jaeger <pi@FreeBSD.org> | 2016-03-20 20:20:13 +0000 |
commit | a30d6e77afe6ad0b7573e16aa819b08355439224 (patch) | |
tree | b992649d45772f7e3f421922372ac33b0219e631 /sysutils/hfm/Makefile | |
parent | graphics/s2tc: add new port. (diff) |
New port: sysutils/hfm
hfm is an application to run tests in parallel at a high frequency.
If the outcome of the test results in a state change, other commands
can be executed.
It is designed to be a general purpose, loosely-coupled tool, by
having both the tests and the state change commands be executed by
the operating system. For example, one could write the test in
shell or c, and have it called through the exec facility.
In practice, the overhead of spawning a new process per test limits
frequency that can be achieved by the tests, and their results.
Anecdotally, 5ms intervals have been seen to be achievable.
An example application is to poll other network services for health,
and to take actions based on their health status changes.
WWW: https://github.com/derekmarcotte/hfm
PR: 207392
Submitted by: 554b8425@razorfever.net
Notes
Notes:
svn path=/head/; revision=411516
Diffstat (limited to 'sysutils/hfm/Makefile')
-rw-r--r-- | sysutils/hfm/Makefile | 56 |
1 files changed, 56 insertions, 0 deletions
diff --git a/sysutils/hfm/Makefile b/sysutils/hfm/Makefile new file mode 100644 index 000000000000..4e4d0563d0da --- /dev/null +++ b/sysutils/hfm/Makefile @@ -0,0 +1,56 @@ +# $FreeBSD$ + +PORTNAME= hfm +PORTVERSION= 1.1.3 +DISTVERSIONPREFIX= v +CATEGORIES= sysutils + +MAINTAINER= 554b8425@razorfever.net +COMMENT= Run tests in parallel at high frequency + +LICENSE= BSD2CLAUSE + +# gb 0.4 includes FreeBSD-specific fixes that this port requires +# https://github.com/constabulary/gb/issues/506 +BUILD_DEPENDS= go>=1.5:${PORTSDIR}/lang/go \ + gb>=0.4:${PORTSDIR}/devel/gb \ + ${LOCALBASE}/lib/libucl.a:${PORTSDIR}/textproc/libucl + +USES= compiler:c++11-lang +USE_GITHUB= yes + +GH_ACCOUNT= derekmarcotte mitchellh:gu op:gl +GH_PROJECT= hfm go-libucl:gu go-logging:gl +GH_TAGNAME= ${DISTVERSIONFULL} f9d0e55:gu dfaf3df:gl + +USERS= _hfm +GROUPS= _hfm + +USE_RC_SUBR= hfm + +MAKE_ARGS+= ETCDIR=${ETCDIR} TAG=${DISTVERSIONPREFIX}${PORTVERSION} + +NO_INSTALL= yes +ALL_TARGET= test build + +post-extract: + ${MKDIR} ${WRKSRC}/vendor/src/github.com/mitchellh/go-libucl + ${MV} ${WRKDIR}/go-libucl-f9d0e55/* ${WRKSRC}/vendor/src/github.com/mitchellh/go-libucl/ + ${MKDIR} ${WRKSRC}/vendor/src/github.com/op/go-logging + ${MV} ${WRKDIR}/go-logging-dfaf3df/* ${WRKSRC}/vendor/src/github.com/op/go-logging/ + +do-patch: + (cd ${WRKSRC}; ${PATCH} vendor/src/github.com/mitchellh/go-libucl/libucl.go < vendor/patches/github.com/mitchellh/go-libucl/libucl.go.patch ) + +do-install: + @${MKDIR} ${STAGEDIR}${PREFIX}/bin + ${INSTALL_PROGRAM} ${WRKSRC}/bin/hfm ${STAGEDIR}${PREFIX}/bin + @${MKDIR} ${STAGEDIR}${ETCDIR} + ${INSTALL_DATA} ${WRKSRC}/examples/hfm.conf.sample ${STAGEDIR}${ETCDIR} + @${MKDIR} ${STAGEDIR}${EXAMPLESDIR} + ${INSTALL_DATA} ${WRKSRC}/examples/* ${STAGEDIR}${EXAMPLESDIR} + @${MKDIR} ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/README.md ${STAGEDIR}${DOCSDIR} + ${INSTALL_DATA} ${WRKSRC}/doc/* ${STAGEDIR}${DOCSDIR} + +.include <bsd.port.mk> |