From owner-svn-ports-all@freebsd.org Fri Sep 25 12:24:10 2015 Return-Path: Delivered-To: svn-ports-all@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id EE3AEA08929; Fri, 25 Sep 2015 12:24:10 +0000 (UTC) (envelope-from wg@FreeBSD.org) Received: from repo.freebsd.org (repo.freebsd.org [IPv6:2001:1900:2254:2068::e6a:0]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id D1DE51619; Fri, 25 Sep 2015 12:24:10 +0000 (UTC) (envelope-from wg@FreeBSD.org) Received: from repo.freebsd.org ([127.0.1.70]) by repo.freebsd.org (8.15.2/8.15.2) with ESMTP id t8PCOANx021919; Fri, 25 Sep 2015 12:24:10 GMT (envelope-from wg@FreeBSD.org) Received: (from wg@localhost) by repo.freebsd.org (8.15.2/8.15.2/Submit) id t8PCO8O2021911; Fri, 25 Sep 2015 12:24:08 GMT (envelope-from wg@FreeBSD.org) Message-Id: <201509251224.t8PCO8O2021911@repo.freebsd.org> X-Authentication-Warning: repo.freebsd.org: wg set sender to wg@FreeBSD.org using -f From: William Grzybowski Date: Fri, 25 Sep 2015 12:24:08 +0000 (UTC) To: ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org Subject: svn commit: r397818 - in head: . sysutils sysutils/stanchion sysutils/stanchion/files X-SVN-Group: ports-head MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-BeenThere: svn-ports-all@freebsd.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: SVN commit messages for the ports tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 25 Sep 2015 12:24:11 -0000 Author: wg Date: Fri Sep 25 12:24:07 2015 New Revision: 397818 URL: https://svnweb.freebsd.org/changeset/ports/397818 Log: sysutils/stanchion: Open source database cluster control for Riak Stanchion is an application to enforce the serialization of requests. It consists of two main parts: a simple HTTP interface and a processing backend that manages requests and interacts with a local Riak instance. WWW: https://github.com/basho/stanchion Submitted by: Scott Kamp (based on) Added: head/sysutils/stanchion/ head/sysutils/stanchion/Makefile (contents, props changed) head/sysutils/stanchion/distinfo (contents, props changed) head/sysutils/stanchion/files/ head/sysutils/stanchion/files/patch-rel_vars.config (contents, props changed) head/sysutils/stanchion/files/stanchion.in (contents, props changed) head/sysutils/stanchion/pkg-descr (contents, props changed) head/sysutils/stanchion/pkg-plist (contents, props changed) Modified: head/UIDs head/sysutils/Makefile Modified: head/UIDs ============================================================================== --- head/UIDs Fri Sep 25 11:53:58 2015 (r397817) +++ head/UIDs Fri Sep 25 12:24:07 2015 (r397818) @@ -223,6 +223,7 @@ caldavd:*:639:639::0:0:Caldavd user:/var monkeysphere:*:641:641::0:0:Monkeysphere User:/var/monkeysphere:/usr/local/bin/bash aox:*:666:666::0:0:Archiveopteryx user:/nonexistent:/usr/sbin/nologin riak:*:667:667::0:0:Riak user:/usr/local/lib/riak:/bin/sh +stanchion:*:669:667::0:0:Stanchion user:/usr/local/lib/stanchion:/bin/sh bnetd:*:700:700::0:0:Bnetd user:/nonexistent:/usr/sbin/nologin fastnetmon:*:701:701::0:0:FastNetMon user:/nonexistent:/usr/sbin/nologin bopm:*:717:717::0:0:Blitzed Open Proxy Monitor:/nonexistent:/bin/sh Modified: head/sysutils/Makefile ============================================================================== --- head/sysutils/Makefile Fri Sep 25 11:53:58 2015 (r397817) +++ head/sysutils/Makefile Fri Sep 25 12:24:07 2015 (r397818) @@ -957,6 +957,7 @@ SUBDIR += ssid SUBDIR += ssync SUBDIR += stalepid + SUBDIR += stanchion SUBDIR += stmpclean SUBDIR += storcli SUBDIR += stow Added: head/sysutils/stanchion/Makefile ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/stanchion/Makefile Fri Sep 25 12:24:07 2015 (r397818) @@ -0,0 +1,79 @@ +# $FreeBSD$ + +PORTNAME= stanchion +PORTVERSION= 2.0.0 +CATEGORIES= sysutils +MASTER_SITES= http://s3.amazonaws.com/downloads.basho.com/stanchion/${PORTVERSION:R}/${PORTVERSION}/ \ + http://downloads.basho.com.s3.amazonaws.com/stanchion/${PORTVERSION:R}/${PORTVERSION}/ + +MAINTAINER= wg@FreeBSD.org +COMMENT= Open source database cluster control for Riak + +LICENSE= APACHE20 + +BUILD_DEPENDS= ${LOCALBASE}/lib/riak-erlang/bin/erlc:${PORTSDIR}/lang/erlang-riak + +USES= gmake readline +USE_RC_SUBR= stanchion +USE_GCC= yes + +USERS= stanchion +GROUPS= riak + +STANCHION_CONFDIR?= ${PREFIX}/etc/stanchion +STANCHION_DBDIR?= /var/db/stanchion +STANCHION_HOMEDIR?= ${PREFIX}/lib/stanchion +STANCHION_LIBDIR?= ${PREFIX}/lib/stanchion/lib +STANCHION_LOGDIR?= /var/log/stanchion + +PLIST_SUB+= STANCHION_CONFDIR=${STANCHION_CONFDIR} \ + STANCHION_DBDIR=${STANCHION_DBDIR} \ + STANCHION_HOMEDIR=${STANCHION_HOMEDIR} \ + STANCHION_LIBDIR=${STANCHION_LIBDIR} \ + STANCHION_LOGDIR=${STANCHION_LOGDIR} \ + USERS=${USERS} \ + GROUPS=${GROUPS} + +ALL_TARGET= rel +MAKE_JOBS_UNSAFE=yes +MAKE_ENV= PATH=${LOCALBASE}/lib/riak-erlang/bin:${PATH} + +post-patch: + @${REINPLACE_CMD} 's|%%PREFIX%%|${PREFIX}|g' ${WRKSRC}/rel/vars.config + +do-install: + ${MKDIR} ${STAGEDIR}${STANCHION_CONFDIR} + ${MKDIR} ${STAGEDIR}${STANCHION_DBDIR} + ${MKDIR} ${STAGEDIR}${STANCHION_LOGDIR} + ${INSTALL_DATA} ${WRKSRC}/rel/stanchion/etc/stanchion.conf ${STAGEDIR}${STANCHION_CONFDIR}/stanchion.conf + ${INSTALL_DATA} ${WRKSRC}/rel/stanchion/etc/advanced.config ${STAGEDIR}${STANCHION_CONFDIR}/advanced.config + ${INSTALL_DATA} ${WRKSRC}/rel/stanchion/etc/cert.pem ${STAGEDIR}${STANCHION_CONFDIR}/cert.pem + ${INSTALL_DATA} ${WRKSRC}/rel/stanchion/etc/key.pem ${STAGEDIR}${STANCHION_CONFDIR}/key.pem + (cd ${WRKSRC}/rel/stanchion/lib/ && ${COPYTREE_BIN} . ${STAGEDIR}${STANCHION_LIBDIR}) + (cd ${WRKSRC}/rel/stanchion/bin/ && ${COPYTREE_BIN} . ${STAGEDIR}${PREFIX}/sbin/) + (cd ${WRKSRC}/rel/stanchion/releases && ${COPYTREE_SHARE} . ${STAGEDIR}${STANCHION_HOMEDIR}/releases) + ${CP} -R ${WRKSRC}/rel/stanchion/erts-* ${STAGEDIR}${STANCHION_HOMEDIR} + +post-install: + (cd ${STAGEDIR}${STANCHION_HOMEDIR}; ${FIND} releases -type f \ + | ${SED} -e 's,^\./,,g' \ + | ${AWK} '{print length, $$0}' | ${SORT} -rn | ${SED} -e 's/^/lib\//' \ + | ${AWK} '{print "lib/stanchion/"$$2 }' >> ${TMPPLIST}) + (cd ${STAGEDIR}${STANCHION_HOMEDIR}; ${FIND} erts-* -type f \ + | ${SED} -e 's,^\./,,g' \ + | ${AWK} '{print length, $$0}' | ${SORT} -rn \ + | ${AWK} '{print "lib/stanchion/"$$2 }' >> ${TMPPLIST}) + (cd ${STAGEDIR}${STANCHION_HOMEDIR}; ${FIND} erts-* -type d -empty \ + | ${SED} -e 's,^\./,,g' \ + | ${AWK} '{print length, $$0}' | ${SORT} -rn | ${SED} -e 's/^/lib\//' \ + | ${AWK} '{print "@dir lib/stanchion/"$$2 }' >> ${TMPPLIST}) + (cd ${STAGEDIR}${STANCHION_LIBDIR}; ${FIND} . -type f \ + | ${SED} -e 's,^\./,,g' \ + | ${AWK} '{print length, $$0}' | ${SORT} -rn | ${SED} -e 's/^/lib\//' \ + | ${AWK} '{print "lib/stanchion/lib/"$$2 }' >> ${TMPPLIST}) + (cd ${STAGEDIR}${STANCHION_LIBDIR}; ${FIND} . -type d -empty \ + | ${SED} -e 's,^\./,,g' \ + | ${AWK} '{print length, $$0}' | ${SORT} -rn | ${SED} -e 's/^/lib\//' \ + | ${AWK} '{print "@dir lib/stanchion/lib/"$$2 }' >> ${TMPPLIST}) + +.include Added: head/sysutils/stanchion/distinfo ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/stanchion/distinfo Fri Sep 25 12:24:07 2015 (r397818) @@ -0,0 +1,2 @@ +SHA256 (stanchion-2.0.0.tar.gz) = c5380f25cf8f65687e8b3a17db8e319a13e7b786110ea7c606de213d78e44106 +SIZE (stanchion-2.0.0.tar.gz) = 4109581 Added: head/sysutils/stanchion/files/patch-rel_vars.config ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/stanchion/files/patch-rel_vars.config Fri Sep 25 12:24:07 2015 (r397818) @@ -0,0 +1,43 @@ +--- rel/vars.config.orig 2015-03-23 18:52:47.000000000 +1100 ++++ rel/vars.config 2015-09-24 15:04:54.707161521 +1000 +@@ -2,11 +2,12 @@ + %% ex: ft=erlang ts=4 sw=4 et + + %% Platform-specific installation paths +-{platform_bin_dir, "./bin"}. +-{platform_data_dir, "./data"}. +-{platform_etc_dir, "./etc"}. +-{platform_lib_dir, "./lib"}. +-{platform_log_dir, "./log"}. ++{platform_base_dir, "%%PREFIX%%/lib/stanchion"}. ++{platform_bin_dir, "%%PREFIX%%/sbin"}. ++{platform_etc_dir, "%%PREFIX%%/etc/stanchion"}. ++{platform_lib_dir, "%%PREFIX%%/lib/stanchion/lib"}. ++{platform_data_dir, "/var/db/stanchion"}. ++{platform_log_dir, "/var/log/stanchion"}. + + %% + %% etc/app.config +@@ -29,14 +30,14 @@ + %% bin/stanchion + %% + {data_dir, "{{target_dir}}/data"}. +-{runner_script_dir, "\`cd \\`dirname $0\\` && /bin/pwd\`"}. +-{runner_base_dir, "{{runner_script_dir}}/.."}. +-{runner_etc_dir, "$RUNNER_BASE_DIR/etc"}. +-{runner_log_dir, "$RUNNER_BASE_DIR/log"}. +-{runner_lib_dir, "$RUNNER_BASE_DIR/lib"}. +-{runner_patch_dir, "$RUNNER_BASE_DIR/lib/basho-patches"}. +-{pipe_dir, "/tmp/$RUNNER_BASE_DIR/"}. +-{runner_user, ""}. ++{runner_script_dir, "{{platform_bin_dir}}"}. ++{runner_base_dir, "{{platform_base_dir}}"}. ++{runner_etc_dir, "{{platform_etc_dir}}"}. ++{runner_log_dir, "{{platform_log_dir}}"}. ++{runner_lib_dir, "{{platform_lib_dir}}"}. ++{runner_patch_dir, "{{platform_lib_dir}}/basho-patches"}. ++{pipe_dir, "/tmp/stanchion"}. ++{runner_user, "stanchion"}. + {runner_wait_process, "stanchion_server_sup"}. + + %% lager Added: head/sysutils/stanchion/files/stanchion.in ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/stanchion/files/stanchion.in Fri Sep 25 12:24:07 2015 (r397818) @@ -0,0 +1,84 @@ +#!/bin/sh +# $FreeBSD$ + +# PROVIDE: stanchion +# REQUIRE: LOGIN cleanvar +# KEYWORD: shutdown + +# +# Add the following lines to /etc/rc.conf to enable stanchion: +# stanchion_enable (bool): Set to "NO" by default. +# Set it to "YES" to enable stanchion on boot. +# + +. /etc/rc.subr + +name="stanchion" +rcvar=stanchion_enable + +pidfile=/var/run/stanchion/stanchion.pid + +start_cmd="stanchion_start" +stop_cmd="stanchion_stop" +restart_cdm="stanchion_restart" +status_cmd="stanchion_status" +command="%%PREFIX%%/sbin/stanchion" + +load_rc_config $name + +# Read rc.d config and set defaults +load_rc_config "$name" +: ${stanchion_enable="NO"} + +stanchion_start() +{ + echo "Starting Riak." + %%PREFIX%%/sbin/stanchion start + return 0 +} + +stanchion_stop() +{ + echo "Stopping Riak processes" + %%PREFIX%%/sbin/stanchion stop + killall -9 epmd + return 0 +} + +stanchion_restart() +{ + stanchion_stop + stanchion_start + return 0 +} + +stanchion_status() +{ + if stanchion_running; then + echo "Riak is running." + return 0 + else + echo "Riak is not running" + return 1 + fi +} + +stanchion_running() +{ + local pid result ps + pid=`%%PREFIX%%/sbin/stanchion getpid` + result=`echo $?` + if [ "$result" == 0 ]; then + ps=`ps -waux | grep ${pid} | grep stanchion` + result=`echo $?` + if [ "$result" ]; then + return 0 + else + return 1 + fi + else + return 1 + fi +} + +run_rc_command "$1" Added: head/sysutils/stanchion/pkg-descr ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/stanchion/pkg-descr Fri Sep 25 12:24:07 2015 (r397818) @@ -0,0 +1,5 @@ +Stanchion is an application to enforce the serialization of requests. It +consists of two main parts: a simple HTTP interface and a processing backend +that manages requests and interacts with a local Riak instance. + +WWW: https://github.com/basho/stanchion Added: head/sysutils/stanchion/pkg-plist ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/sysutils/stanchion/pkg-plist Fri Sep 25 12:24:07 2015 (r397818) @@ -0,0 +1,12 @@ +sbin/stanchion +@sample %%STANCHION_CONFDIR%%/stanchion.conf +@sample %%STANCHION_CONFDIR%%/advanced.config +@sample %%STANCHION_CONFDIR%%/key.pem +@sample %%STANCHION_CONFDIR%%/cert.pem +@dir %%STANCHION_CONFDIR%% +@owner %%USERS%% +@group %%GROUPS%% +@dir %%STANCHION_DBDIR%% +@dir %%STANCHION_HOMEDIR%% +@dir %%STANCHION_LIBDIR%% +@dir %%STANCHION_LOGDIR%%