mirror of
https://git.freebsd.org/ports.git
synced 2025-07-18 01:39:16 -04:00
sysutils/fusefs-unreliablefs: Add new port
UnreliableFS is a FUSE-based fault injection filesystem that allows to change fault-injections in runtime using simple configuration file. Supported fault injections are: - errinj_errno - return error value and set random errno. - errinj_kill_caller - send SIGKILL to a process that invoked file operation. - errinj_noop - replace file operation with no operation (similar to libeatmydata, but applicable to any file operation). - errinj_slowdown - slowdown invoked file operation. WWW: https://github.com/ligurio/unreliablefs
This commit is contained in:
parent
d65b482f83
commit
c46bf2783f
4 changed files with 64 additions and 0 deletions
|
@ -419,6 +419,7 @@
|
||||||
SUBDIR += fusefs-squashfuse
|
SUBDIR += fusefs-squashfuse
|
||||||
SUBDIR += fusefs-sshfs
|
SUBDIR += fusefs-sshfs
|
||||||
SUBDIR += fusefs-unionfs
|
SUBDIR += fusefs-unionfs
|
||||||
|
SUBDIR += fusefs-unreliablefs
|
||||||
SUBDIR += fusefs-webdavfs
|
SUBDIR += fusefs-webdavfs
|
||||||
SUBDIR += fusefs-zip
|
SUBDIR += fusefs-zip
|
||||||
SUBDIR += fvcool
|
SUBDIR += fvcool
|
||||||
|
|
48
sysutils/fusefs-unreliablefs/Makefile
Normal file
48
sysutils/fusefs-unreliablefs/Makefile
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
PORTNAME= unreliablefs
|
||||||
|
DISTVERSION= 0.1.0
|
||||||
|
CATEGORIES= sysutils
|
||||||
|
PKGNAMEPREFIX= fusefs-
|
||||||
|
|
||||||
|
MAINTAINER= 0mp@FreeBSD.org
|
||||||
|
COMMENT= FUSE-based fault injection filesystem
|
||||||
|
|
||||||
|
LICENSE= MIT
|
||||||
|
LICENSE_FILE= ${WRKSRC}/LICENSE
|
||||||
|
|
||||||
|
RUN_DEPENDS= fusefs-libs>=0:fusefs-libs
|
||||||
|
TEST_DEPENDS= ${PYTHON_PKGNAMEPREFIX}pytest>=0:devel/py-pytest@${PY_FLAVOR} \
|
||||||
|
fio:benchmarks/fio
|
||||||
|
|
||||||
|
USES= cmake:testing fuse pkgconfig python:env
|
||||||
|
USE_CSTD= c11
|
||||||
|
USE_GITHUB= yes
|
||||||
|
GH_ACCOUNT= ligurio
|
||||||
|
|
||||||
|
CFLAGS+= -fcommon
|
||||||
|
|
||||||
|
PLIST_FILES= bin/${PORTNAME} \
|
||||||
|
share/man/man1/${PORTNAME}.1.gz \
|
||||||
|
share/man/man5/${PORTNAME}.conf.5.gz
|
||||||
|
|
||||||
|
post-patch:
|
||||||
|
# Upstream hardcodes FreeBSD release versions in order to skip some tests. We
|
||||||
|
# need to adjust those to values as not all supported FreeBSD releases are
|
||||||
|
# listed there.
|
||||||
|
${REINPLACE_CMD} 's|freebsd12|freebsd${OSREL:R}|' \
|
||||||
|
${WRKSRC}/tests/util.py \
|
||||||
|
${WRKSRC}/tests/test_unreliablefs.py
|
||||||
|
|
||||||
|
do-install:
|
||||||
|
${INSTALL_PROGRAM} ${INSTALL_WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin
|
||||||
|
${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.1 ${STAGEDIR}${PREFIX}/share/man/man1
|
||||||
|
${INSTALL_MAN} ${WRKSRC}/${PORTNAME}.conf.5 ${STAGEDIR}${PREFIX}/share/man/man5
|
||||||
|
|
||||||
|
do-test:
|
||||||
|
# The test suite assumes that the binaries are available in the ${WRKSRC}/build
|
||||||
|
# directory, which is not the case here.
|
||||||
|
${MKDIR} ${WRKSRC}/build/tests
|
||||||
|
${RLN} ${INSTALL_WRKSRC}/${PORTNAME} ${WRKSRC}/build/
|
||||||
|
${RLN} ${INSTALL_WRKSRC}/tests/fsx ${WRKSRC}/build/tests
|
||||||
|
cd ${WRKSRC} && ${SETENV} ${TEST_ENV} pytest --verbose -rxXs tests/
|
||||||
|
|
||||||
|
.include <bsd.port.mk>
|
3
sysutils/fusefs-unreliablefs/distinfo
Normal file
3
sysutils/fusefs-unreliablefs/distinfo
Normal file
|
@ -0,0 +1,3 @@
|
||||||
|
TIMESTAMP = 1625398764
|
||||||
|
SHA256 (ligurio-unreliablefs-0.1.0_GH0.tar.gz) = 4fc13b4cc4e947c72bd02c891b3be135083d57fba245a35808f9b2e039574074
|
||||||
|
SIZE (ligurio-unreliablefs-0.1.0_GH0.tar.gz) = 33789
|
12
sysutils/fusefs-unreliablefs/pkg-descr
Normal file
12
sysutils/fusefs-unreliablefs/pkg-descr
Normal file
|
@ -0,0 +1,12 @@
|
||||||
|
UnreliableFS is a FUSE-based fault injection filesystem that allows to change
|
||||||
|
fault-injections in runtime using simple configuration file.
|
||||||
|
|
||||||
|
Supported fault injections are:
|
||||||
|
|
||||||
|
- errinj_errno - return error value and set random errno.
|
||||||
|
- errinj_kill_caller - send SIGKILL to a process that invoked file operation.
|
||||||
|
- errinj_noop - replace file operation with no operation (similar to
|
||||||
|
libeatmydata, but applicable to any file operation).
|
||||||
|
- errinj_slowdown - slowdown invoked file operation.
|
||||||
|
|
||||||
|
WWW: https://github.com/ligurio/unreliablefs
|
Loading…
Add table
Reference in a new issue