Index: head/databases/leofs/Makefile =================================================================== --- head/databases/leofs/Makefile (revision 451401) +++ head/databases/leofs/Makefile (revision 451402) @@ -1,241 +1,241 @@ # Created by: Mikolaj Golub # $FreeBSD$ PORTNAME= leofs -PORTVERSION= 1.3.4 +PORTVERSION= 1.3.7 CATEGORIES= databases DIST_SUBDIR= ${PORTNAME} MAINTAINER= trociny@FreeBSD.org COMMENT= Highly scalable, fault-tolerant distributed file system LICENSE= APACHE20 BUILD_DEPENDS= ${LOCALBASE}/lib/erlang18/bin/erlc:lang/erlang-runtime18 \ ${LOCALBASE}/bin/cmake:devel/cmake \ ${LOCALBASE}/lib/libcheck.a:devel/check USE_GITHUB= yes GH_ACCOUNT= leo-project BROKEN_aarch64= Does not compile: fatal error: lzo/lzo1x.h file not found NOT_FOR_ARCHS= powerpc64 sparc64 NOT_FOR_ARCHS_REASON= does not build: error Please implement AtomicPointer for this platform LEOFS_USER= leofs LEOFS_GROUP= leofs USERS= ${LEOFS_USER} GROUPS= ${LEOFS_GROUP} LEOFS_ETCDIR= ${ETCDIR} LEOFS_BASEDIR= ${PREFIX}/lib/${PORTNAME} LEOFS_DBDIR= /var/db/${PORTNAME} LEOFS_LOGDIR= /var/log/${PORTNAME} LEOFS_RUNDIR= /var/run/${PORTNAME} LEOFS_SBIN_FILES= \ leo_gateway \ leo_manager \ leo_manager_slave \ leo_storage \ leofs PLIST_SUB+= LEOFS_USER=${LEOFS_USER} \ LEOFS_GROUP=${LEOFS_GROUP} \ LEOFS_DBDIR=${LEOFS_DBDIR} \ LEOFS_LOGDIR=${LEOFS_LOGDIR} \ LEOFS_RUNDIR=${LEOFS_RUNDIR} SUB_LIST+= LEOFS_USER=${LEOFS_USER} \ LEOFS_GROUP=${LEOFS_GROUP} \ LEOFS_ETCDIR=${LEOFS_ETCDIR} \ LEOFS_BASEDIR=${LEOFS_BASEDIR} \ LEOFS_DBDIR=${LEOFS_DBDIR} \ LEOFS_LOGDIR=${LEOFS_LOGDIR} \ LEOFS_RUNDIR=${LEOFS_RUNDIR} SUB_FILES+= ${LEOFS_SBIN_FILES:S/^/sbin-/} USES= dos2unix gmake pkgconfig ssl USE_RC_SUBR= ${PORTNAME} DOS2UNIX_FILES= apps/leo_*/snmp/snmpa_*/leo_*_snmp.config ALL_TARGET= release MAKE_JOBS_UNSAFE=yes MAKE_ENV= PATH=${LOCALBASE}/lib/erlang18/bin:${PATH} LEOFS_DEPS= \ - basho/bitcask=2.0.7:bitcask \ - basho/cuttlefish=2.0.11:cuttlefish \ + DeadZen/goldrush=0.1.9:goldrush \ basho/eleveldb=2.0.33:eleveldb \ basho/getopt=v0.8.2:getopt \ - basho/goldrush=0.1.9:goldrush \ - basho/lager=3.2.4:lager \ basho/leveldb=2.0.33:leveldb \ basho/neotoma=1.7.4:neotoma \ davisp/jiffy=0.14.8:jiffy \ - eproxus/meck=0.8.4:meck \ + eproxus/meck=0.8.6:meck \ + erlang-lager/lager=3.5.0:lager \ + erlangpack/bcrypt=1.0.1:bcrypt \ + esl/elarm=5885c90:elarm \ extend/ranch=1.0.0:ranch \ - ferd/erlpass=1.0.3:erlpass \ ferd/recon=2.3.1:recon \ leo-project/bear=0.8.2-for-leofs:bear \ + leo-project/bitcask=2.0.8.2-for-leofs:bitcask \ leo-project/cowboy=for-leofs-1.4:cowboy \ - leo-project/elarm=d9e8a6f:elarm \ - leo-project/erpcgen=0.2.5:erpcgen \ + leo-project/cuttlefish=2.0.9-for-leofs:cuttlefish \ + leo-project/erlpass=dev-for-leofs:erlpass \ + leo-project/erpcgen=0.2.6:erpcgen \ leo-project/folsom=0.8.2-p1:folsom \ - leo-project/leo_backend_db=1.2.12:leo_backend_db \ - leo-project/leo_cache=0.8.3:leo_cache \ - leo-project/leo_commons=1.1.9:leo_commons \ - leo-project/leo_dcerl=0.4.6:leo_dcerl \ - leo-project/leo_logger=1.2.5:leo_logger \ - leo-project/leo_mcerl=0.6.4:leo_mcerl \ - leo-project/leo_mq=1.4.17:leo_mq \ - leo-project/leo_object_storage=1.3.6:leo_object_storage \ - leo-project/leo_ordning_reda=1.2.4:leo_ordning_reda \ - leo-project/leo_pod=0.6.8:leo_pod \ - leo-project/leo_redundant_manager=1.9.39:leo_redundant_manager \ - leo-project/leo_rpc=0.10.12:leo_rpc \ - leo-project/leo_s3_libs=1.2.12:leo_s3_libs \ - leo-project/leo_statistics=1.1.17:leo_statistics \ - leo-project/leo_tran=0.2.8:leo_tran \ - leo-project/leo_watchdog=0.12.7:leo_watchdog \ - leo-project/libcutil=0.4.4:libcutil \ - leo-project/nfs_rpc_server=0.2.5:nfs_rpc_server \ - leo-project/savanna_agent=0.4.20:savanna_agent \ - leo-project/savanna_commons=0.10.6:savanna_commons \ + leo-project/leo_backend_db=1.2.20:leo_backend_db \ + leo-project/leo_cache=0.8.5:leo_cache \ + leo-project/leo_commons=1.1.10:leo_commons \ + leo-project/leo_dcerl=0.4.8:leo_dcerl \ + leo-project/leo_logger=1.2.6:leo_logger \ + leo-project/leo_mcerl=0.6.6:leo_mcerl \ + leo-project/leo_mq=1.5.8:leo_mq \ + leo-project/leo_object_storage=1.3.17:leo_object_storage \ + leo-project/leo_ordning_reda=1.2.6:leo_ordning_reda \ + leo-project/leo_pod=0.6.9:leo_pod \ + leo-project/leo_redundant_manager=1.9.50:leo_redundant_manager \ + leo-project/leo_rpc=0.10.13:leo_rpc \ + leo-project/leo_s3_libs=1.2.14:leo_s3_libs \ + leo-project/leo_statistics=1.1.18:leo_statistics \ + leo-project/leo_tran=0.2.9:leo_tran \ + leo-project/leo_watchdog=1.0.2:leo_watchdog \ + leo-project/libcutil=0.4.5:libcutil \ + leo-project/nfs_rpc_server=0.2.6:nfs_rpc_server \ + leo-project/savanna_agent=0.4.21:savanna_agent \ + leo-project/savanna_commons=0.10.7:savanna_commons \ manopapad/proper=f558989:proper \ ninenines/cowlib=1.0.0:cowlib \ - smarkets/erlang-bcrypt=a63df34:bcrypt \ GH_TUPLE= ${LEOFS_DEPS:C,(.*)/(.*)=(.*):(.*),\1:\2:\3:\4/deps/\4,} post-extract: .for dep in ${LEOFS_DEPS} .for tagname in ${dep:C,^[^=]+=([^\?]+)\?.*$,\1,} .for label in ${dep:C,^.*:,,} @if [ -f "${WRKSRC}/deps/${label}/src/${label}.app.src" ]; then \ ${REINPLACE_CMD} -e "s|{vsn, *git}|{vsn, \"${tagname}\"}|" \ "${WRKSRC}/deps/${label}/src/${label}.app.src"; \ fi .endfor .endfor .endfor @(cd ${WRKSRC}/deps/eleveldb/c_src && ${LN} -s ../../leveldb) @(cd ${WRKSRC}/deps/leo_mcerl/c_src && ${LN} -s ../../libcutil) @(cd ${WRKSRC}/deps/leo_dcerl/c_src && ${LN} -s ../../libcutil) post-patch: @${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g; \ s|%%LEOFS_DBDIR%%|${LEOFS_DBDIR}|g; \ s|%%LEOFS_LOGDIR%%|${LEOFS_LOGDIR}|g;' \ ${WRKSRC}/apps/leo_gateway/priv/leo_gateway.conf \ ${WRKSRC}/apps/leo_gateway/priv/leo_gateway.schema \ ${WRKSRC}/apps/leo_gateway/snmp/snmpa_gateway_0/leo_gateway_snmp.config \ ${WRKSRC}/apps/leo_manager/priv/leo_manager_0.conf \ ${WRKSRC}/apps/leo_manager/priv/leo_manager_0.schema \ ${WRKSRC}/apps/leo_manager/priv/leo_manager_1.conf \ ${WRKSRC}/apps/leo_manager/priv/leo_manager_1.schema \ ${WRKSRC}/apps/leo_manager/snmp/snmpa_manager_0/leo_manager_snmp.config \ ${WRKSRC}/apps/leo_manager/snmp/snmpa_manager_1/leo_manager_snmp.config \ ${WRKSRC}/apps/leo_storage/priv/leo_storage.conf \ ${WRKSRC}/apps/leo_storage/priv/leo_storage.schema \ ${WRKSRC}/apps/leo_storage/snmp/snmpa_storage_0/leo_storage_snmp.config pre-build: (cd ${WRKSRC}/deps/erpcgen && ${MAKE_ENV} ${MAKE}) (cd ${WRKSRC} && ${MAKE_ENV} ./deps/erpcgen/priv/erpcgen \ -a [svc_callback,xdr,hrl] apps/leo_gateway/src/leo_nfs_proto3.x) (cd ${WRKSRC} && ${MAKE_ENV} ./deps/erpcgen/priv/erpcgen \ -a [svc_callback,xdr,hrl] apps/leo_gateway/src/leo_nfs_mount3.x) (cd ${WRKSRC}/deps/nfs_rpc_server/src && \ ${MAKE_ENV} erl -noshell -pa ../../erpcgen/ebin \ -eval 'erpcgen:file(pmap, [xdrlib,clnt])' -s init stop) (cd ${WRKSRC}/deps/nfs_rpc_server/src && \ ${MAKE_ENV} erl -noshell -pa ../../erpcgen/ebin \ -eval 'erpcgen:file(nfs_rpc, [xdrlib,clnt])' -s init stop) FIND_ARGS= "! -name *.bak ! -name *.orig" do-install: ${MKDIR} \ ${STAGEDIR}${LEOFS_BASEDIR}/bin \ ${STAGEDIR}${LEOFS_BASEDIR}/snmp \ ${STAGEDIR}${LEOFS_BASEDIR}/releases/1 \ ${STAGEDIR}${LEOFS_ETCDIR} \ ${STAGEDIR}${LEOFS_DBDIR} \ ${STAGEDIR}${LEOFS_LOGDIR} \ ${STAGEDIR}${LEOFS_RUNDIR} (cd ${WRKSRC}/package/leo_gateway && \ ${COPYTREE_BIN} erts-*/bin ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS} && \ ${COPYTREE_SHARE} etc ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS} && \ ${COPYTREE_SHARE} lib ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_manager_0 && \ ${COPYTREE_SHARE} etc ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS} && \ ${COPYTREE_SHARE} lib ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_storage && \ ${COPYTREE_SHARE} etc ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS} && \ ${COPYTREE_SHARE} lib ${STAGEDIR}${LEOFS_BASEDIR} ${FIND_ARGS}) ${INSTALL_DATA} ${WRKSRC}/package/leo_manager_1/etc/leo_manager.schema \ ${STAGEDIR}${LEOFS_BASEDIR}/etc/leo_manager_slave.schema ${INSTALL_DATA} ${WRKSRC}/package/leo_manager_1/etc/leo_manager.conf \ ${STAGEDIR}${LEOFS_BASEDIR}/etc/leo_manager_slave.conf ${INSTALL_SCRIPT} ${WRKSRC}/package/leo_gateway/bin/cuttlefish \ ${STAGEDIR}${LEOFS_BASEDIR}/bin ${INSTALL_DATA} ${WRKSRC}/package/leo_gateway/releases/start_erl.data \ ${STAGEDIR}${LEOFS_BASEDIR}/releases ${INSTALL_DATA} ${WRKSRC}/package/leo_gateway/releases/1/start_clean.* \ ${STAGEDIR}${LEOFS_BASEDIR}/releases/1 (cd ${WRKSRC}/package/leo_gateway/releases && ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/releases/leo_gateway ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_manager_0/releases && ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/releases/leo_manager ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_storage/releases && ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/releases/leo_storage ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_gateway/snmp/snmpa_gateway_0 && \ ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/snmp/snmpa_gateway ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_manager_0/snmp/snmpa_manager_0 && \ ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/snmp/snmpa_manager ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_manager_1/snmp/snmpa_manager_1 && \ ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/snmp/snmpa_manager_slave ${FIND_ARGS}) (cd ${WRKSRC}/package/leo_storage/snmp/snmpa_storage_0 && \ ${COPYTREE_SHARE} . \ ${STAGEDIR}${LEOFS_BASEDIR}/snmp/snmpa_storage ${FIND_ARGS}) ${INSTALL_DATA} ${WRKSRC}/package/leo_gateway/etc/leo_gateway.conf \ ${STAGEDIR}${LEOFS_ETCDIR}/leo_gateway.conf.sample ${INSTALL_DATA} ${WRKSRC}/package/leo_gateway/etc/server_cert.pem \ ${STAGEDIR}${LEOFS_ETCDIR}/server_cert.pem.sample ${INSTALL_DATA} ${WRKSRC}/package/leo_gateway/etc/server_key.pem \ ${STAGEDIR}${LEOFS_ETCDIR}/server_key.pem.sample ${INSTALL_DATA} ${WRKSRC}/package/leo_manager_0/etc/leo_manager.conf \ ${STAGEDIR}${LEOFS_ETCDIR}/leo_manager.conf.sample ${INSTALL_DATA} ${WRKSRC}/package/leo_manager_1/etc/leo_manager.conf \ ${STAGEDIR}${LEOFS_ETCDIR}/leo_manager_slave.conf.sample ${INSTALL_DATA} ${WRKSRC}/package/leo_storage/etc/leo_storage.conf \ ${STAGEDIR}${LEOFS_ETCDIR}/leo_storage.conf.sample ${INSTALL_SCRIPT} ${WRKSRC}/leofs-adm ${STAGEDIR}${PREFIX}/sbin/leofs-adm .for f in ${LEOFS_SBIN_FILES} ${INSTALL_SCRIPT} ${WRKDIR}/sbin-${f} ${STAGEDIR}${PREFIX}/sbin/${f} .endfor cd ${STAGEDIR}${PREFIX} ; \ ${FIND} ${LEOFS_BASEDIR:S/${PREFIX}\///} \ ${LEOFS_LIBXDIR:S/${PREFIX}\///} -type f -o -type l \ | ${SORT} > ${WRKDIR}/PLIST.leofs cd ${STAGEDIR}${PREFIX} ; \ ${FIND} ${LEOFS_BASEDIR:S/${PREFIX}\///} \ ${LEOFS_LIBXDIR:S/${PREFIX}\///} -type d -empty \ | ${SORT} -r | ${SED} -e 's/^/@dir /' \ >> ${WRKDIR}/PLIST.leofs ${ECHO_CMD} "r ${TMPPLIST}" > ${WRKDIR}/ex.script ${ECHO_CMD} "/Insert PLIST.leofs" >> ${WRKDIR}/ex.script ${ECHO_CMD} "d" >> ${WRKDIR}/ex.script ${ECHO_CMD} "r ${WRKDIR}/PLIST.leofs" >> ${WRKDIR}/ex.script ${ECHO_CMD} "x!" >> ${WRKDIR}/ex.script ${CP} -p ${TMPPLIST} ${TMPPLIST}.pre-leofs cd ${WRKDIR} ; ex < ex.script .include Index: head/databases/leofs/distinfo =================================================================== --- head/databases/leofs/distinfo (revision 451401) +++ head/databases/leofs/distinfo (revision 451402) @@ -1,85 +1,85 @@ -TIMESTAMP = 1494706001 -SHA256 (leofs/leo-project-leofs-1.3.4_GH0.tar.gz) = 9e006b44f0a89b27a4a4c777caa0305e7fcc7ec737ad217d0a4f2f486990332a -SIZE (leofs/leo-project-leofs-1.3.4_GH0.tar.gz) = 6491422 -SHA256 (leofs/basho-bitcask-2.0.7_GH0.tar.gz) = 029a0707618d6a24dc9359bcef21d1fac582a8045674a009aea05db1ec77fd5d -SIZE (leofs/basho-bitcask-2.0.7_GH0.tar.gz) = 968514 -SHA256 (leofs/basho-cuttlefish-2.0.11_GH0.tar.gz) = 75de2ac844de08751e63ea97bbbb63c14bb8cb4860d76866cbdfe6a6992f4dd0 -SIZE (leofs/basho-cuttlefish-2.0.11_GH0.tar.gz) = 232032 +TIMESTAMP = 1506247162 +SHA256 (leofs/leo-project-leofs-1.3.7_GH0.tar.gz) = 9e851313d917a52ec4cec717e00486df8493760f89a4f74ad47c4862b217cad6 +SIZE (leofs/leo-project-leofs-1.3.7_GH0.tar.gz) = 6556209 +SHA256 (leofs/DeadZen-goldrush-0.1.9_GH0.tar.gz) = 6fb8ac6345d940396ecf89d4ce6b9b809039f336d85d7a54239e85106a807612 +SIZE (leofs/DeadZen-goldrush-0.1.9_GH0.tar.gz) = 24548 SHA256 (leofs/basho-eleveldb-2.0.33_GH0.tar.gz) = 9a12167068f20bd61e23f29708a5ee73d5a33e14ee30ad1cb8390ecf4ab9a22c SIZE (leofs/basho-eleveldb-2.0.33_GH0.tar.gz) = 1750242 SHA256 (leofs/basho-getopt-v0.8.2_GH0.tar.gz) = bfeab0aeb3e515b1c2912874d6e644849561971d8d947ec4adc7c9ff4c394ea8 SIZE (leofs/basho-getopt-v0.8.2_GH0.tar.gz) = 151272 -SHA256 (leofs/basho-goldrush-0.1.9_GH0.tar.gz) = 6fb8ac6345d940396ecf89d4ce6b9b809039f336d85d7a54239e85106a807612 -SIZE (leofs/basho-goldrush-0.1.9_GH0.tar.gz) = 24548 -SHA256 (leofs/basho-lager-3.2.4_GH0.tar.gz) = b2212ca817ee551540d4eb815691355e9e0ad4e76d93bc4426d95b6f00fc8d59 -SIZE (leofs/basho-lager-3.2.4_GH0.tar.gz) = 245002 SHA256 (leofs/basho-leveldb-2.0.33_GH0.tar.gz) = bf129f00e8de67f008ae8cdd1cd20b805cd008e6f554fccfb3a9522e5e5b3a3d SIZE (leofs/basho-leveldb-2.0.33_GH0.tar.gz) = 353214 SHA256 (leofs/basho-neotoma-1.7.4_GH0.tar.gz) = 97e01d4577d9882b9cb10e079bd33114f1293abae5180dc272be17e419daa0df SIZE (leofs/basho-neotoma-1.7.4_GH0.tar.gz) = 182456 SHA256 (leofs/davisp-jiffy-0.14.8_GH0.tar.gz) = 7d1054c475c82c626de3ad57201a7fc51da38667c8a7502149eb751edc6b601d SIZE (leofs/davisp-jiffy-0.14.8_GH0.tar.gz) = 1856737 -SHA256 (leofs/eproxus-meck-0.8.4_GH0.tar.gz) = b4f951841c69a75a735ea4aea682899f19f254467c749df596f90757e51104b6 -SIZE (leofs/eproxus-meck-0.8.4_GH0.tar.gz) = 234157 +SHA256 (leofs/eproxus-meck-0.8.6_GH0.tar.gz) = bffb9103000f6c872feb3ab987db3bf4040f2aab93506e596827999924ba4730 +SIZE (leofs/eproxus-meck-0.8.6_GH0.tar.gz) = 238549 +SHA256 (leofs/erlang-lager-lager-3.5.0_GH0.tar.gz) = 743de608a03b9aef6b9a4fa5d1b3ed71544bfa14a378f57b87a0abc81f6fac37 +SIZE (leofs/erlang-lager-lager-3.5.0_GH0.tar.gz) = 255134 +SHA256 (leofs/erlangpack-bcrypt-1.0.1_GH0.tar.gz) = 9386597aa6c3b3b1a0ec7ae277c0483b0ded2c0c27c02e4a97f8cf85a873f3a6 +SIZE (leofs/erlangpack-bcrypt-1.0.1_GH0.tar.gz) = 25860 +SHA256 (leofs/esl-elarm-5885c90_GH0.tar.gz) = 35df30923930ebe15f7de79c55dce34f6f1fe5b1281029c0bdd93afc77901f2e +SIZE (leofs/esl-elarm-5885c90_GH0.tar.gz) = 23942 SHA256 (leofs/extend-ranch-1.0.0_GH0.tar.gz) = ec75e8876bf25df2e1f5156909d51cf11f2e98dd76a3be2090fa30ebefc8062f SIZE (leofs/extend-ranch-1.0.0_GH0.tar.gz) = 41121 -SHA256 (leofs/ferd-erlpass-1.0.3_GH0.tar.gz) = 493782d2fead366fed4e30d0f00451ad8c6b3e1bcb112d047d1fd9134af5ff6a -SIZE (leofs/ferd-erlpass-1.0.3_GH0.tar.gz) = 777313 SHA256 (leofs/ferd-recon-2.3.1_GH0.tar.gz) = c9d9750a07b3743e8a83a273fde83f741b3e802adaf7f8ef666984c985ad0642 SIZE (leofs/ferd-recon-2.3.1_GH0.tar.gz) = 203506 SHA256 (leofs/leo-project-bear-0.8.2-for-leofs_GH0.tar.gz) = 3c547fb59f1d5ba830a3b24cefc600c9ac42b5b41ee9180ebbd2cad7d8899ecd SIZE (leofs/leo-project-bear-0.8.2-for-leofs_GH0.tar.gz) = 110538 +SHA256 (leofs/leo-project-bitcask-2.0.8.2-for-leofs_GH0.tar.gz) = d5b8020f73f697dd14d36a001f6079949fd0af6207d140ca5063e1611d147109 +SIZE (leofs/leo-project-bitcask-2.0.8.2-for-leofs_GH0.tar.gz) = 968754 SHA256 (leofs/leo-project-cowboy-for-leofs-1.4_GH0.tar.gz) = 6d1fc7938c6fc42e457fe4818a19f918ae08d294aec8908df42e59258d00d4e1 SIZE (leofs/leo-project-cowboy-for-leofs-1.4_GH0.tar.gz) = 4829696 -SHA256 (leofs/leo-project-elarm-d9e8a6f_GH0.tar.gz) = abe5140b9f2988dd691e6dda295e3bc549701ae7ebc5e2fec237ac5ba4bb5fa1 -SIZE (leofs/leo-project-elarm-d9e8a6f_GH0.tar.gz) = 23600 -SHA256 (leofs/leo-project-erpcgen-0.2.5_GH0.tar.gz) = 025032ea1d1edfc577d5e913b5225037cb3b45cb1b0732f94b8b130506091474 -SIZE (leofs/leo-project-erpcgen-0.2.5_GH0.tar.gz) = 205451 +SHA256 (leofs/leo-project-cuttlefish-2.0.9-for-leofs_GH0.tar.gz) = ddae2daf738fa737f8aeb6749fec7c4e8093899e0eecc8343dfca52e768ac01c +SIZE (leofs/leo-project-cuttlefish-2.0.9-for-leofs_GH0.tar.gz) = 232877 +SHA256 (leofs/leo-project-erlpass-dev-for-leofs_GH0.tar.gz) = cd14fbcd78e06cf8688c23e350c7b79aa6f3809210d18179cb5562426bee2dae +SIZE (leofs/leo-project-erlpass-dev-for-leofs_GH0.tar.gz) = 772803 +SHA256 (leofs/leo-project-erpcgen-0.2.6_GH0.tar.gz) = ed2783a28206917dd0a9f05088aa97c21df4957e395ee38495c3942115624c30 +SIZE (leofs/leo-project-erpcgen-0.2.6_GH0.tar.gz) = 205454 SHA256 (leofs/leo-project-folsom-0.8.2-p1_GH0.tar.gz) = aa2b2724be9600b0aabdcca535bb18334507b165ebc5728ce459f9321276ee0e SIZE (leofs/leo-project-folsom-0.8.2-p1_GH0.tar.gz) = 174988 -SHA256 (leofs/leo-project-leo_backend_db-1.2.12_GH0.tar.gz) = 3982af2b643b2019d105b0e83596e62a6929cd36510ee8e2aa64caa3d819b67e -SIZE (leofs/leo-project-leo_backend_db-1.2.12_GH0.tar.gz) = 196336 -SHA256 (leofs/leo-project-leo_cache-0.8.3_GH0.tar.gz) = 4734aab62b79a53c9ff7fc07f502bc883cf1b5ef5dd6d7cdc571d4ca353c2282 -SIZE (leofs/leo-project-leo_cache-0.8.3_GH0.tar.gz) = 187896 -SHA256 (leofs/leo-project-leo_commons-1.1.9_GH0.tar.gz) = a19dd833f109513c359d9e5abd93c8678e244f3e39f1c73292501d0687755dcb -SIZE (leofs/leo-project-leo_commons-1.1.9_GH0.tar.gz) = 198750 -SHA256 (leofs/leo-project-leo_dcerl-0.4.6_GH0.tar.gz) = 3d6c94fe0eef3d090969ce281e492d6162bb5a0f4fc204dd660b26ee73ea9b9f -SIZE (leofs/leo-project-leo_dcerl-0.4.6_GH0.tar.gz) = 192867 -SHA256 (leofs/leo-project-leo_logger-1.2.5_GH0.tar.gz) = 65b2f68c74d8ee0ff7f273c1edc4f42ce4bae60c70df707770e7b1f9ac77c00e -SIZE (leofs/leo-project-leo_logger-1.2.5_GH0.tar.gz) = 211445 -SHA256 (leofs/leo-project-leo_mcerl-0.6.4_GH0.tar.gz) = 431fe61dc3885d43a8daff56184f8f64b9db8cfa87f29881a7b75998f7690c54 -SIZE (leofs/leo-project-leo_mcerl-0.6.4_GH0.tar.gz) = 185304 -SHA256 (leofs/leo-project-leo_mq-1.4.17_GH0.tar.gz) = d693be7aed1959d4847284ba25ccd9b406878f15d74a5fb0c453b9fed2989f3f -SIZE (leofs/leo-project-leo_mq-1.4.17_GH0.tar.gz) = 194588 -SHA256 (leofs/leo-project-leo_object_storage-1.3.6_GH0.tar.gz) = 01a9452c5eb3873d9cd963c3ac8844f161cf39d46cb1a1be386359abead1fdb4 -SIZE (leofs/leo-project-leo_object_storage-1.3.6_GH0.tar.gz) = 585429 -SHA256 (leofs/leo-project-leo_ordning_reda-1.2.4_GH0.tar.gz) = 0900177b20166b14ba522f763ef4fb7c9ce88e2f168b25083dc7a8eb5bae8ce4 -SIZE (leofs/leo-project-leo_ordning_reda-1.2.4_GH0.tar.gz) = 190372 -SHA256 (leofs/leo-project-leo_pod-0.6.8_GH0.tar.gz) = 892c366788f4bd5f742a86ce1584de254c5702f455dabc76118fc013db698d82 -SIZE (leofs/leo-project-leo_pod-0.6.8_GH0.tar.gz) = 170692 -SHA256 (leofs/leo-project-leo_redundant_manager-1.9.39_GH0.tar.gz) = eded3b765b0ef37ae43acce184d793d1507599fc657d0d7f2a8c1ddba9d66b51 -SIZE (leofs/leo-project-leo_redundant_manager-1.9.39_GH0.tar.gz) = 240336 -SHA256 (leofs/leo-project-leo_rpc-0.10.12_GH0.tar.gz) = c30b68edcdff6ad71e5c2971b5458332c67efcf2bfb05b75113be20afe5dcac6 -SIZE (leofs/leo-project-leo_rpc-0.10.12_GH0.tar.gz) = 197777 -SHA256 (leofs/leo-project-leo_s3_libs-1.2.12_GH0.tar.gz) = e11cdd535995c2c0621aa1a4394b7ae692a3c92055c27f6297e9867daec33bc6 -SIZE (leofs/leo-project-leo_s3_libs-1.2.12_GH0.tar.gz) = 210964 -SHA256 (leofs/leo-project-leo_statistics-1.1.17_GH0.tar.gz) = 8e25aca6b19f4d3f814246e9d7cad5f081a151a8559ac8ecd15b380adb691702 -SIZE (leofs/leo-project-leo_statistics-1.1.17_GH0.tar.gz) = 190515 -SHA256 (leofs/leo-project-leo_tran-0.2.8_GH0.tar.gz) = 1988005f031738678bd0f7cd34eaaa7b4028cc274bd2955e5ec47aaef35a646a -SIZE (leofs/leo-project-leo_tran-0.2.8_GH0.tar.gz) = 188382 -SHA256 (leofs/leo-project-leo_watchdog-0.12.7_GH0.tar.gz) = c13c0282f22dc2877557245910030411f404f28043df4e635c9ed95f9635e886 -SIZE (leofs/leo-project-leo_watchdog-0.12.7_GH0.tar.gz) = 201359 -SHA256 (leofs/leo-project-libcutil-0.4.4_GH0.tar.gz) = da6b7ed990d45b960e1eb8f2bafc8ae8a127deac5ce71fe58e18359564451c68 -SIZE (leofs/leo-project-libcutil-0.4.4_GH0.tar.gz) = 23825 -SHA256 (leofs/leo-project-nfs_rpc_server-0.2.5_GH0.tar.gz) = 4f90b106f0aa637b109f05592804a083609a9700656b2b49fbda60d37d28cc89 -SIZE (leofs/leo-project-nfs_rpc_server-0.2.5_GH0.tar.gz) = 197604 -SHA256 (leofs/leo-project-savanna_agent-0.4.20_GH0.tar.gz) = cffab336102c0bbf81563866787463111863738b1fbb96355da9253ec9677bc6 -SIZE (leofs/leo-project-savanna_agent-0.4.20_GH0.tar.gz) = 187126 -SHA256 (leofs/leo-project-savanna_commons-0.10.6_GH0.tar.gz) = f3267581e354cf55ea6813da23bd84ce165aa2d7edd145de5ebf87d953350bb7 -SIZE (leofs/leo-project-savanna_commons-0.10.6_GH0.tar.gz) = 198374 +SHA256 (leofs/leo-project-leo_backend_db-1.2.20_GH0.tar.gz) = 11ee7c7160ea4ffd465710665b4c891a11ddaffac4c8c11fa0687a1d1f17f082 +SIZE (leofs/leo-project-leo_backend_db-1.2.20_GH0.tar.gz) = 197206 +SHA256 (leofs/leo-project-leo_cache-0.8.5_GH0.tar.gz) = e7aa71ef569d19185f903970ddd92a0ef12e265d327499b7d02d1fbb3101241d +SIZE (leofs/leo-project-leo_cache-0.8.5_GH0.tar.gz) = 187909 +SHA256 (leofs/leo-project-leo_commons-1.1.10_GH0.tar.gz) = 8e984757f99d22606c31068cf0266d9f165c127bbccac5bcdce54b62a27bd5a2 +SIZE (leofs/leo-project-leo_commons-1.1.10_GH0.tar.gz) = 198757 +SHA256 (leofs/leo-project-leo_dcerl-0.4.8_GH0.tar.gz) = 327fd192ef2dba01da1c86f0c1a16e5f4fdbecb839e6bee8a1ff93a32eec7aac +SIZE (leofs/leo-project-leo_dcerl-0.4.8_GH0.tar.gz) = 192883 +SHA256 (leofs/leo-project-leo_logger-1.2.6_GH0.tar.gz) = 07870698af88b34c6b8f97b4e47ec024c92838c1a083b73b803bc1c164c4607f +SIZE (leofs/leo-project-leo_logger-1.2.6_GH0.tar.gz) = 211464 +SHA256 (leofs/leo-project-leo_mcerl-0.6.6_GH0.tar.gz) = fe939b754a6523e9291952162991410bae7c5783cb865a16d9b7a27304482b0e +SIZE (leofs/leo-project-leo_mcerl-0.6.6_GH0.tar.gz) = 185314 +SHA256 (leofs/leo-project-leo_mq-1.5.8_GH0.tar.gz) = 8370d449a3974a1b066e83f380c31d25f91a3012384fbc88bed6f8083605249b +SIZE (leofs/leo-project-leo_mq-1.5.8_GH0.tar.gz) = 195319 +SHA256 (leofs/leo-project-leo_object_storage-1.3.17_GH0.tar.gz) = 14042c3e23072b9bb21089a36c99d717307ac4b6e22fb0bc60fa114aa8b0df82 +SIZE (leofs/leo-project-leo_object_storage-1.3.17_GH0.tar.gz) = 587004 +SHA256 (leofs/leo-project-leo_ordning_reda-1.2.6_GH0.tar.gz) = 5ff220ada5d74ab264e10ad8443a554f6db9d6060a6b75afda5028c49f294d02 +SIZE (leofs/leo-project-leo_ordning_reda-1.2.6_GH0.tar.gz) = 190582 +SHA256 (leofs/leo-project-leo_pod-0.6.9_GH0.tar.gz) = 55a61bd7c24a411b77149d194676cfefb00d1d1b9f847e2473ce952d8e0b410d +SIZE (leofs/leo-project-leo_pod-0.6.9_GH0.tar.gz) = 170688 +SHA256 (leofs/leo-project-leo_redundant_manager-1.9.50_GH0.tar.gz) = 1745ed80e63ec0c15bf8f301c9c36141cfad19fe5463062ea8516cf20edd4fc4 +SIZE (leofs/leo-project-leo_redundant_manager-1.9.50_GH0.tar.gz) = 240349 +SHA256 (leofs/leo-project-leo_rpc-0.10.13_GH0.tar.gz) = 0c8e8ee2f887ad31280a1e5b578d51af468ed2d05361115a52937e3a29dc51b3 +SIZE (leofs/leo-project-leo_rpc-0.10.13_GH0.tar.gz) = 197792 +SHA256 (leofs/leo-project-leo_s3_libs-1.2.14_GH0.tar.gz) = 857e384ebf8149cf584be184366988fbe1b0f6c80ce5fbed4c458156345416a0 +SIZE (leofs/leo-project-leo_s3_libs-1.2.14_GH0.tar.gz) = 211000 +SHA256 (leofs/leo-project-leo_statistics-1.1.18_GH0.tar.gz) = 0f46c04c4929a132cdf8a875a12e681cb9032e033715f92881ffdfd7c2a3397d +SIZE (leofs/leo-project-leo_statistics-1.1.18_GH0.tar.gz) = 190518 +SHA256 (leofs/leo-project-leo_tran-0.2.9_GH0.tar.gz) = 3e8d383253c48a5c01c085b0d590f8520e12338dcd055f27a29303776fcdeedb +SIZE (leofs/leo-project-leo_tran-0.2.9_GH0.tar.gz) = 188391 +SHA256 (leofs/leo-project-leo_watchdog-1.0.2_GH0.tar.gz) = 48f613c35917c8aa6d71a7ff823efe592d1c33fca0432a77edae1f1284cff873 +SIZE (leofs/leo-project-leo_watchdog-1.0.2_GH0.tar.gz) = 201405 +SHA256 (leofs/leo-project-libcutil-0.4.5_GH0.tar.gz) = 48bcbe7492eaf47785e7628cb6e0793187c21e427720cf73b8800f735e4df5d4 +SIZE (leofs/leo-project-libcutil-0.4.5_GH0.tar.gz) = 23873 +SHA256 (leofs/leo-project-nfs_rpc_server-0.2.6_GH0.tar.gz) = 5cc3785df660774d5bd11175be0da804663913b3c585ed5f7ea57120b7842a13 +SIZE (leofs/leo-project-nfs_rpc_server-0.2.6_GH0.tar.gz) = 197606 +SHA256 (leofs/leo-project-savanna_agent-0.4.21_GH0.tar.gz) = 4cff3214a71aa462fede207b07e881c42924f2ffce7fd68ef79d646262180836 +SIZE (leofs/leo-project-savanna_agent-0.4.21_GH0.tar.gz) = 187123 +SHA256 (leofs/leo-project-savanna_commons-0.10.7_GH0.tar.gz) = e634ead8c2f829ecc762bab6f5c196a066d8e75bdea37d1baac117fbdf79d08d +SIZE (leofs/leo-project-savanna_commons-0.10.7_GH0.tar.gz) = 198373 SHA256 (leofs/manopapad-proper-f558989_GH0.tar.gz) = 67db9f6ee77a5f54967b99d70974d9dda1a07f5cd8839ef8ad80625fde639c1b SIZE (leofs/manopapad-proper-f558989_GH0.tar.gz) = 292555 SHA256 (leofs/ninenines-cowlib-1.0.0_GH0.tar.gz) = 48a8784ae7d266724276f9842b3a06cfbbfe69469f58c27237c602232f7ebe5a SIZE (leofs/ninenines-cowlib-1.0.0_GH0.tar.gz) = 41538 -SHA256 (leofs/smarkets-erlang-bcrypt-a63df34_GH0.tar.gz) = a34fd7dcbcfaa793fcb15e5b28bfa419248f0cfcfed3b14227490794eb8c8d4b -SIZE (leofs/smarkets-erlang-bcrypt-a63df34_GH0.tar.gz) = 25482 Index: head/databases/leofs/files/patch-apps-leo_manager-priv-leo_manager_1.conf =================================================================== --- head/databases/leofs/files/patch-apps-leo_manager-priv-leo_manager_1.conf (revision 451401) +++ head/databases/leofs/files/patch-apps-leo_manager-priv-leo_manager_1.conf (revision 451402) @@ -1,95 +1,95 @@ ---- apps/leo_manager/priv/leo_manager_1.conf.orig 2015-04-14 10:09:26.000000000 +0300 -+++ apps/leo_manager/priv/leo_manager_1.conf 2015-05-02 21:58:23.000000000 +0300 -@@ -13,7 +13,7 @@ +--- apps/leo_manager/priv/leo_manager_1.conf.orig 2017-09-12 09:07:39.000000000 +0000 ++++ apps/leo_manager/priv/leo_manager_1.conf 2017-10-06 13:51:33.276074000 +0000 +@@ -16,7 +16,7 @@ ## about configuration parameters ## SASL error log path -## sasl.sasl_error_log = ./log/sasl/sasl-error.log +## sasl.sasl_error_log = %%LEOFS_LOGDIR%%/leo_manager_slave/sasl/sasl-error.log ## Restricts the error logging performed by the specified sasl_error_logger ## to error reports, progress reports, or both. -@@ -22,7 +22,7 @@ +@@ -25,7 +25,7 @@ ## Specifies in which directory the files are stored. ## If this parameter is undefined or false, the error_logger_mf_h is not installed. -## sasl.error_logger_mf_dir = ./log/sasl +## sasl.error_logger_mf_dir = %%LEOFS_LOGDIR%%/leo_manager_slave/sasl ## Specifies how large each individual file can be. ## If this parameter is undefined, the error_logger_mf_h is not installed. -@@ -36,7 +36,7 @@ +@@ -39,7 +39,7 @@ ## MANAGER ## -------------------------------------------------------------------- ## Partner of manager's alias -manager.partner = manager_0@127.0.0.1 +manager.partner = manager@127.0.0.1 ## Manager-console accepatable port number console.port.cui = 10011 -@@ -55,7 +55,7 @@ +@@ -58,7 +58,7 @@ ## * Store the RING and the command histories ## -------------------------------------------------------------------- ## Mnesia dir -mnesia.dir = ./work/mnesia/127.0.0.1 +mnesia.dir = %%LEOFS_DBDIR%%/leo_manager_slave/mnesia/127.0.0.1 ## The write threshold for transaction log dumps ## as the number of writes to the transaction log -@@ -72,26 +72,26 @@ +@@ -75,26 +75,26 @@ ## log.log_level = 1 ## Output log file(s) - Erlang's log -## log.erlang = ./log/erlang +log.erlang = %%LEOFS_LOGDIR%%/leo_manager_slave/erlang ## Output log file(s) - app -## log.app = ./log/app +log.app = %%LEOFS_LOGDIR%%/leo_manager_slave/app ## Output log file(s) - members of storage-cluster -## log.member_dir = ./log/ring +log.member_dir = %%LEOFS_LOGDIR%%/leo_manager_slave/ring ## Output log file(s) - ring -## log.ring_dir = ./log/ring +log.ring_dir = %%LEOFS_LOGDIR%%/leo_manager_slave/ring ## -------------------------------------------------------------------- ## MANAGER - Other Directories ## -------------------------------------------------------------------- ## Directory of queue for monitoring "RING" -## queue_dir = ./work/queue +## queue_dir = %%LEOFS_DBDIR%%/leo_manager_slave/queue ## Directory of SNMP agent configuration -snmp_agent = ./snmp/snmpa_manager_1/LEO-MANAGER -+snmp_agent = %%PREFIX%%/lib/leofs/snmp/snmpa_manager_slave/LEO-MANAGER ++## snmp_agent = %%PREFIX%%/lib/leofs/snmp/snmpa_manager_slave/LEO-MANAGER ## -------------------------------------------------------------------- -@@ -136,7 +136,7 @@ +@@ -139,7 +139,7 @@ ## For vm.args ##====================================================================== ## Name of the LeoFS's manager node -nodename = manager_1@127.0.0.1 +nodename = manager_slave@127.0.0.1 ## Cookie for distributed node communication. All nodes in the same cluster ## should use the same cookie or they will not be able to communicate. -@@ -152,7 +152,7 @@ +@@ -155,7 +155,7 @@ erlang.max_ports = 64000 ## Set the location of crash dumps -erlang.crash_dump = ./log/erl_crash.dump +erlang.crash_dump = %%LEOFS_LOGDIR%%/leo_manager_slave/erl_crash.dump ## Raise the ETS table limit erlang.max_ets_tables = 256000 -@@ -161,4 +161,4 @@ +@@ -167,4 +167,4 @@ process_limit = 1048576 ## Path of SNMP-agent configuration -## snmp_conf = ./snmp/snmpa_manager_1/leo_manager_snmp +snmp_conf = %%PREFIX%%/lib/leofs/snmp/snmpa_manager_slave/leo_manager_snmp Index: head/databases/leofs/files/patch-apps-leo_storage-priv-leo_storage.conf =================================================================== --- head/databases/leofs/files/patch-apps-leo_storage-priv-leo_storage.conf (revision 451401) +++ head/databases/leofs/files/patch-apps-leo_storage-priv-leo_storage.conf (revision 451402) @@ -1,103 +1,107 @@ ---- apps/leo_storage/priv/leo_storage.conf.orig 2015-06-30 07:30:19.000000000 +0300 -+++ apps/leo_storage/priv/leo_storage.conf 2015-07-04 21:02:35.000000000 +0300 -@@ -13,7 +13,7 @@ +--- apps/leo_storage/priv/leo_storage.conf.orig 2017-09-12 09:07:39.000000000 +0000 ++++ apps/leo_storage/priv/leo_storage.conf 2017-10-06 13:51:42.000000000 +0000 +@@ -16,7 +16,7 @@ ## about configuration parameters ## SASL error log path -## sasl.sasl_error_log = ./log/sasl/sasl-error.log +## sasl.sasl_error_log = %%LEOFS_LOGDIR%%/leo_storage/sasl/sasl-error.log ## Restricts the error logging performed by the specified sasl_error_logger ## to error reports, progress reports, or both. -@@ -22,7 +22,7 @@ +@@ -25,7 +25,7 @@ ## Specifies in which directory the files are stored. ## If this parameter is undefined or false, the error_logger_mf_h is not installed. -## sasl.error_logger_mf_dir = ./log/sasl +## sasl.error_logger_mf_dir = %%LEOFS_LOGDIR%%/leo_storage/sasl ## Specifies how large each individual file can be. ## If this parameter is undefined, the error_logger_mf_h is not installed. -@@ -36,13 +36,13 @@ +@@ -39,13 +39,13 @@ ## Manager's Node(s) ## -------------------------------------------------------------------- ## Name of Manager node(s) -managers = [manager_0@127.0.0.1, manager_1@127.0.0.1] +managers = [manager@127.0.0.1, manager_slave@127.0.0.1] ## -------------------------------------------------------------------- ## STORAGE ## -------------------------------------------------------------------- ## Object container -obj_containers.path = [./avs] +obj_containers.path = [%%LEOFS_DBDIR%%/leo_storage/avs] obj_containers.num_of_containers = [8] ## e.g. Case of plural pathes -@@ -239,16 +239,16 @@ - log.log_level = 1 +@@ -305,16 +305,16 @@ + ## log.access_log_level = 0 ## Output log file(s) - Erlang's log -## log.erlang = ./log/erlang +## log.erlang = %%LEOFS_LOGDIR%%/leo_storage/erlang ## Output log file(s) - app -## log.app = ./log/app +## log.app = %%LEOFS_LOGDIR%%/leo_storage/app ## Output log file(s) - members of storage-cluster -## log.member_dir = ./log/ring +## log.member_dir = %%LEOFS_LOGDIR%%/leo_storage/ring ## Output log file(s) - ring -## log.ring_dir = ./log/ring +## log.ring_dir = %%LEOFS_LOGDIR%%/leo_storage/ring ## Output data-diagnosis log log.is_enable_diagnosis_log = true -@@ -257,10 +257,10 @@ +@@ -323,13 +323,13 @@ ## STORAGE - Other Directories ## -------------------------------------------------------------------- - ## Directory of queue for monitoring "RING" + ## Directory of db for MQs -## queue_dir = ./work/queue +## queue_dir = %%LEOFS_DBDIR%%/leo_storage/queue + ## Directory of db for del-bucket/del-directory +-## del_bucket_state_dir = ./work/db/del_bucket/state ++## del_bucket_state_dir = %%LEOFS_DBDIR%%/leo_storage/db/del_bucket/state + ## Directory of SNMP agent configuration -## snmp_agent = ./snmp/snmpa_storage_0/LEO-STORAGE +## snmp_agent = %%PREFIX%%/lib/leofs/snmp/snmpa_storage/LEO-STORAGE ## -------------------------------------------------------------------- -@@ -270,7 +270,7 @@ - ## leo_ordning_reda.send_after_interval = 100 +@@ -339,7 +339,7 @@ + leo_ordning_reda.send_after_interval = 0 ## Temporary directory of stacked objects -## leo_ordning_reda.temp_stacked_dir = "work/ord_reda/" +## leo_ordning_reda.temp_stacked_dir = %%LEOFS_DBDIR%%/leo_storage/ord_reda/ ## -------------------------------------------------------------------- -@@ -344,7 +344,7 @@ +@@ -413,7 +413,7 @@ ## For vm.args ##====================================================================== ## Name of the leofs-storage node -nodename = storage_0@127.0.0.1 +nodename = storage@127.0.0.1 ## Cookie for distributed node communication. All nodes in the same cluster ## should use the same cookie or they will not be able to communicate. -@@ -360,7 +360,7 @@ +@@ -429,7 +429,7 @@ erlang.max_ports = 64000 ## Set the location of crash dumps -erlang.crash_dump = ./log/erl_crash.dump +erlang.crash_dump = %%LEOFS_LOGDIR%%/leo_storage/erl_crash.dump ## Raise the ETS table limit erlang.max_ets_tables = 256000 -@@ -390,4 +390,4 @@ +@@ -459,4 +459,4 @@ process_limit = 1048576 ## Path of SNMP-agent configuration -## snmp_conf = ./snmp/snmpa_storage_0/leo_storage_snmp +snmp_conf = %%PREFIX%%/lib/leofs/snmp/snmpa_storage/leo_storage_snmp Index: head/databases/leofs/files/sbin-leofs.in =================================================================== --- head/databases/leofs/files/sbin-leofs.in (revision 451401) +++ head/databases/leofs/files/sbin-leofs.in (revision 451402) @@ -1,663 +1,665 @@ #!/bin/sh # # Manage LeoFS servers. # #------------------------------------------------------------------------------- # GLOBALS #------------------------------------------------------------------------------- LEOFS_SERVERS=" gateway manager manager_slave storage " LEOFS_COMMANDS= LEOFS_COMMANDS_MINIHELP= PROGNAME=$(basename $0) PROGPATH=$(realpath $0) #------------------------------------------------------------------------------- # Functions #------------------------------------------------------------------------------- in_list() { local needle=$1 local i shift for i do test "$i" = "$needle" && return 0 done return 1 } #------------------------------------------------------------------------------- usage() { local servers servers=$(echo $LEOFS_SERVERS | sed -e 's/ /|/g') echo "usage: ${PROGNAME} [help | -h | --help]" echo " ${PROGNAME} ${servers} []" echo echo "Commands:" echo "$LEOFS_COMMANDS_MINIHELP" echo echo "See '${PROGNAME} help ' for more information on a specific command." } #------------------------------------------------------------------------------- # cmd utils #------------------------------------------------------------------------------- register_cmd() { local cmd=$1 LEOFS_COMMANDS="${LEOFS_COMMANDS} ${cmd}" LEOFS_COMMANDS_MINIHELP=$(printf "%s\n %-16s%s" \ "${LEOFS_COMMANDS_MINIHELP}" "${cmd}" "$(cmd_${cmd} help_summary)") } #------------------------------------------------------------------------------- check_cmd() { local cmd=$1 if ! in_list "$cmd" $LEOFS_COMMANDS then echo "unknown command: $1" >&2 echo >&2 usage >&2 exit 1 fi } #------------------------------------------------------------------------------- run_cmd() { local cmd=$1 check_cmd "${cmd}" shift "cmd_${cmd}" "$@" } #------------------------------------------------------------------------------- print_cmd_help() { local cmd=$1 local desc check_cmd "${cmd}" echo "NAME" echo " ${cmd} - $(cmd_${cmd} help_summary)" echo echo "SYNOPSIS" echo " $(cmd_${cmd} help_synopsis)" desc="$(cmd_${cmd} help_desc)" if [ -n "${desc}" ] then echo echo "DESCRIPTION" echo -n "${desc}" | sed -e 's/^/ /' fi opts="$(cmd_${cmd} help_opts)" if [ -n "${opts}" ] then echo echo "OPTIONS" echo -n "${opts}" | sed -e 's/^/ /' fi echo } #------------------------------------------------------------------------------- # make ENV #------------------------------------------------------------------------------- check_app() { local app=$1 if ! in_list "${app}" $LEOFS_SERVERS then echo "unknown server: $1" >&2 echo >&2 usage >&2 exit 1 fi } #------------------------------------------------------------------------------- setusercontext() { local cmd : ${LEOFS_USER=%%LEOFS_USER%%} user=`whoami` if [ ${user} = ${LEOFS_USER} ] then return fi if [ ${user} != root ] then echo "Must be run as ${LEOFS_USER} user or root (or set LEOFS_USER)" >&2 exit 1 fi # Restart as LEOFS_USER cmd="${PROGPATH} $@" exec /usr/bin/su -m ${LEOFS_USER} -c "${cmd}" } #------------------------------------------------------------------------------- gen_config() { local args cfg_dir app_config vm_args res snmp_cfg dir cfg_dir=${LEOFS_DBDIR}/etc mkdir -p ${cfg_dir} if [ ${LEOFS_ETCDIR}/${LEOFS_SERVER}.conf -ot ${cfg_dir}/app.config ] then return fi rm -f ${cfg_dir}/app.*.config ${cfg_dir}/vm.*.args args=`PATH=${ERTS_PATH}:${PATH} \ ${LEOFS_BASEDIR}/bin/cuttlefish \ -i ${LEOFS_BASEDIR}/etc/${LEOFS_SERVER}.schema \ -c ${LEOFS_ETCDIR}/${LEOFS_SERVER}.conf \ -d ${cfg_dir}` app_config=`echo ${args} | sed -nEe 's/^.*(app\.[0-9.]*\.config).*$/\1/p'` vm_args=`echo ${args} | sed -nEe 's/^.*(vm\.[0-9.]*\.args).*$/\1/p'` if [ -z "${app_config}" -o -z "${vm_args}" ] then echo "Failed to parse ${LEOFS_SERVER}.conf" >&2 exit 1 fi # Sanity check the app.config file res=`${ERTS_PATH}/escript \ ${ERTS_PATH}/nodetool chkconfig ${cfg_dir}/${app_config}` if [ "${res}" != "ok" ] then echo "Error reading ${app_config}: ${res}" >&2 exit 1 fi mv ${cfg_dir}/$app_config ${cfg_dir}/app.config mv ${cfg_dir}/$vm_args ${cfg_dir}/vm.args } #------------------------------------------------------------------------------- make_env() { local app=${1#leo_} # Remove 'leo_' prefix in server name if present. local user check_app "${app}" LEOFS_SERVER=leo_${app} LEOFS_ETCDIR=%%LEOFS_ETCDIR%% LEOFS_BASEDIR=%%LEOFS_BASEDIR%% LEOFS_DBDIR=%%LEOFS_DBDIR%%/${LEOFS_SERVER} LEOFS_RUNDIR=%%LEOFS_RUNDIR%% LEOFS_PIPE=${LEOFS_RUNDIR}/${LEOFS_SERVER}.pipe LEOFS_LOGDIR=%%LEOFS_LOGDIR%%/${LEOFS_SERVER} START_ERL=`cat ${LEOFS_BASEDIR}/releases/${LEOFS_SERVER%_slave}/start_erl.data` ERTS_VSN=${START_ERL% *} APP_VSN=${START_ERL#* } ERTS_PATH=${LEOFS_BASEDIR}/erts-${ERTS_VSN}/bin + : ${ERLEXEC_MODE=embedded} + LEOFS_BOOT=${LEOFS_BASEDIR}/releases/${LEOFS_SERVER%_slave}/${APP_VSN}/${LEOFS_SERVER%_slave} HOME=%%LEOFS_DBDIR%% cd ${HOME} setusercontext "$@" gen_config snmp_cfg=`sed -nEe 's/^-config *(.*)$/\1.config/p' ${LEOFS_DBDIR}/etc/vm.args` sed -nEe 's:^.*dir, *"((%%LEOFS_DBDIR%%|%%LEOFS_LOGDIR%%)[^"]*)".*$:\1:p' \ ${LEOFS_DBDIR}/etc/app.config ${snmp_cfg} | sort -u | while read dir do mkdir -p "${dir}" done } #------------------------------------------------------------------------------- # Erlang tools #------------------------------------------------------------------------------- nodetool() { local cmd=$1 ; shift local vmargs_path name_arg cookie_arg vmargs_path=${LEOFS_DBDIR}/etc/vm.args name_arg=`egrep '^-s?name' ${vmargs_path}` if [ -z "${name_arg}" ] then echo "vm.args needs either -name or -sname parameter" >&2 exit 1 fi cookie_arg=`grep '^-setcookie' ${vmargs_path}` if [ -z "${cookie_arg}" ] then echo "vm.args needs a -setcookie parameter" 2>&2 exit 1 fi ${ERTS_PATH}/escript ${ERTS_PATH}/nodetool ${name_arg} ${cookie_arg} ${cmd} } #------------------------------------------------------------------------------- check_node() { local expected_state=$1 local status nodetool ping >/dev/null 2>&1 status=$? if [ "${expected_state}" = DOWN ] then if [ ${status} -eq 0 ] then echo "Node is already running" >&2 exit 1 fi else if [ ${status} -ne 0 ] then echo "Node is not running" >&2 exit 1 fi fi } #------------------------------------------------------------------------------- remsh() { local vmargs_path name_arg cookie_arg local remsh_type remsh_name remsh_name_arg remsh_remsh_arg vmargs_path=${LEOFS_DBDIR}/etc/vm.args name_arg=`egrep '^-s?name' ${vmargs_path}` if [ -z "${name_arg}" ] then echo "vm.args needs either -name or -sname parameter" >&2 exit 1 fi cookie_arg=`grep '^-setcookie' ${vmargs_path}` if [ -z "${cookie_arg}" ] then echo "vm.args needs a -setcookie parameter" 2>&2 exit 1 fi # Extract the name type and name from the name_arg for remsh remsh_type=${name_arg% *} remsh_name=${name_arg#* } # `date +%s` is used to allow multiple remsh to the same node transparently remsh_name_arg="${remsh_type} remsh$(date +%s)@${remsh_name#*@}" remsh_remsh_arg="-remsh ${remsh_name}" ${ERTS_PATH}/erl ${remsh_name_arg} ${remsh_remsh_arg} ${cookie_arg} } #------------------------------------------------------------------------------- # Commands #------------------------------------------------------------------------------- cmd_help() { case "$1" in help_summary) echo "Display help information about ${PROGNAME}" exit ;; help_synopsis) echo "${PROGNAME} help []" exit ;; help_desc) echo "With no command given, the synopsis of the ${PROGNAME} command" echo "and a list of possible ${PROGNAME} commands are printed on the" echo "standard output." echo echo "If a ${PROGNAME} command is named, a mini help for that command is" echo "brought up." exit ;; help_*) exit ;; esac if [ -n "$1" ] then print_cmd_help "$1" else usage fi } register_cmd help #------------------------------------------------------------------------------- cmd_attach() { case "$1" in help_summary) echo "Attach to the running node" exit ;; help_synopsis) echo "${PROGNAME} attach" exit ;; help_*) exit ;; esac check_node UP ${ERTS_PATH}/to_erl ${LEOFS_PIPE} } register_cmd attach #------------------------------------------------------------------------------- cmd_console() { local config_path vmargs_path cmd case "$1" in help_summary) echo "Start the server in console" exit ;; help_synopsis) echo "${PROGNAME} console" exit ;; help_*) exit ;; esac export ROOTDIR=${LEOFS_BASEDIR} export BINDIR=${ERTS_PATH} export EMU=beam export PROGNAME=${PROGNAME} config_path=${LEOFS_DBDIR}/etc/app.config vmargs_path=${LEOFS_DBDIR}/etc/vm.args - cmd="${BINDIR}/erlexec -boot ${LEOFS_BOOT} -mode embedded \ - -config ${config_path} -args_file ${vmargs_path} -- $@" + cmd="${BINDIR}/erlexec -boot ${LEOFS_BOOT} -mode ${ERLEXEC_MODE} \ + -config ${config_path} -args_file ${vmargs_path} -- console $@" # Dump environment info for logging purposes echo Exec: ${cmd} echo Root: ${ROOTDIR} ${cmd} } register_cmd console #------------------------------------------------------------------------------- cmd_console_clean() { case "$1" in help_summary) echo "Start the VM in console using start_clean.boot" exit ;; help_synopsis) echo "${PROGNAME} cosole_clean" exit ;; help_*) exit ;; esac LEOFS_BOOT=$(dirname ${LEOFS_BOOT})/start_clean cmd_console } register_cmd console_clean #------------------------------------------------------------------------------- cmd_ping() { case "$1" in help_summary) echo "See if the VM is alive" exit ;; help_synopsis) echo "${PROGNAME} ping" exit ;; help_*) exit ;; esac nodetool ping } register_cmd ping #------------------------------------------------------------------------------- cmd_reboot() { case "$1" in help_summary) echo "Restart the VM completely (uses heart to restart it)" exit ;; help_synopsis) echo "${PROGNAME} reboot" exit ;; help_*) exit ;; esac nodetool reboot } register_cmd reboot #------------------------------------------------------------------------------- cmd_remote_console() { case "$1" in help_summary) echo "Run remote shell command to control node" exit ;; help_synopsis) echo "${PROGNAME} remote_console" exit ;; help_*) exit ;; esac check_node UP remsh "$@" } register_cmd remote_console #------------------------------------------------------------------------------- cmd_restart() { case "$1" in help_summary) echo "Restart the VM without exiting the process" exit ;; help_synopsis) echo "${PROGNAME} restart" exit ;; help_*) exit ;; esac nodetool restart } register_cmd restart #------------------------------------------------------------------------------- cmd_start() { local i res case "$1" in help_summary) echo "Launch the application" exit ;; help_synopsis) echo "${PROGNAME} start" exit ;; help_*) exit ;; esac check_node DOWN export HEART_COMMAND="${PROGPATH} ${LEOFS_SERVER} start" ${ERTS_PATH}/run_erl -daemon ${LEOFS_PIPE} ${LEOFS_LOGDIR} \ "exec ${PROGPATH} ${LEOFS_SERVER} console $@" 2>&1 res=$? if [ "${res}" -ne 0 ] then exit ${res} fi # Wait up to 1 minute for the node to start responding on ping. for i in `jot 60` do nodetool ping >/dev/null 2>&1 || exit 0 sleep 1 done exit 1 } register_cmd start #------------------------------------------------------------------------------- cmd_stop() { local pid res i case "$1" in help_summary) echo "Stop the application" exit ;; help_synopsis) echo "${PROGNAME} stop" exit ;; help_*) exit ;; esac pid=`ps xww -o pid= -o command= | grep "${LEOFS_BASEDIR}.*/[b]eam.*${LEOFS_SERVER}" | awk '{print $1}'` nodetool stop > /dev/null res=$? if [ "${res}" -ne 0 ] then if [ -z "${pid}" ] then echo "${LEOFS_SERVER} is not running" else echo "Failed to stop ${LEOFS_SERVER}" fi exit ${res} fi # Wait up to 1 minute for the process to terminate. for i in `jot 60` do kill -0 ${pid} 2>/dev/null || exit 0 sleep 1 done echo "Failed to terminate the ${LEOFS_SERVER} process (pid ${pid})" exit 1 } register_cmd stop #------------------------------------------------------------------------------- # Main #------------------------------------------------------------------------------- if in_list "$1" "" "help" "-h" "--help" || test -z "$2" then cmd=help ; shift else make_env "$@" app="$1" ; shift cmd="$1" ; shift fi run_cmd "${cmd}" "$@"