Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 20 Sep 2014 17:42:15 +0000 (UTC)
From:      John Marino <marino@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r368669 - in head: . sysutils sysutils/rundeck sysutils/rundeck/files
Message-ID:  <201409201742.s8KHgFro024119@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marino
Date: Sat Sep 20 17:42:15 2014
New Revision: 368669
URL: http://svnweb.freebsd.org/changeset/ports/368669
QAT: https://qat.redports.org/buildarchive/r368669/

Log:
  Add new port sysutils/rundeck
  
  PR:		191562
  Submitted by:	arcade (b1t.name)
  
  Welcome to Rundeck, the human interface to your operations. Rundeck
  features fine-grain access controls, a built-in job scheduler, and the
  ability to define workflows that dispatch commands and scripts to your
  nodes.

Added:
  head/sysutils/rundeck/
  head/sysutils/rundeck/Makefile   (contents, props changed)
  head/sysutils/rundeck/distinfo   (contents, props changed)
  head/sysutils/rundeck/files/
  head/sysutils/rundeck/files/rundeck.in   (contents, props changed)
  head/sysutils/rundeck/pkg-descr   (contents, props changed)
Modified:
  head/GIDs
  head/UIDs
  head/sysutils/Makefile

Modified: head/GIDs
==============================================================================
--- head/GIDs	Sat Sep 20 17:40:37 2014	(r368668)
+++ head/GIDs	Sat Sep 20 17:42:15 2014	(r368669)
@@ -214,6 +214,7 @@ foreman_proxy:*:812:
 puppet:*:814:
 btsync:*:817:
 jenkins:*:818:
+rundeck:*:819:
 openacs:*:820:
 dotlrn:*:821:
 polw:*:825:

Modified: head/UIDs
==============================================================================
--- head/UIDs	Sat Sep 20 17:40:37 2014	(r368668)
+++ head/UIDs	Sat Sep 20 17:42:15 2014	(r368669)
@@ -218,6 +218,7 @@ foreman_proxy:*:812:812::0:0:Foreman Sma
 puppet:*:814:814::0:0:Puppet Daemon:/nonexistent:/usr/sbin/nologin
 btsync:*:817:817::0:0:BitTorrent Sync Daemon:/nonexistent:/usr/sbin/nologin
 jenkins:*:818:818::0:0:Jenkins CI:/usr/local/jenkins:/bin/sh
+rundeck:*:819:819::0:0:Rundeck:/usr/local/rundeck:/bin/sh
 openacs:*:820:820::0:0:OpenACS Daemon User:/nonexistent:/usr/sbin/nologin
 dotlrn:*:821:821::0:0:.LRN Daemon User:/nonexistent:/usr/sbin/nologin
 polw:*:825:825::0:0:Policyd-weight Cache Owner:/nonexistent:/sbin/nologin

Modified: head/sysutils/Makefile
==============================================================================
--- head/sysutils/Makefile	Sat Sep 20 17:40:37 2014	(r368668)
+++ head/sysutils/Makefile	Sat Sep 20 17:42:15 2014	(r368669)
@@ -824,6 +824,7 @@
     SUBDIR += rubygem-teamocil
     SUBDIR += rubygem-winrm
     SUBDIR += rubygem-yell
+    SUBDIR += rundeck
     SUBDIR += runit
     SUBDIR += runwhen
     SUBDIR += safe-rm

Added: head/sysutils/rundeck/Makefile
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/rundeck/Makefile	Sat Sep 20 17:42:15 2014	(r368669)
@@ -0,0 +1,50 @@
+# $FreeBSD$
+
+PORTNAME=	rundeck
+PORTVERSION=	2.2.1
+CATEGORIES=	sysutils java
+MASTER_SITES=	http://dl.bintray.com/rundeck/rundeck-maven/
+DISTNAME=	rundeck-launcher-${PORTVERSION}
+EXTRACT_SUFX=	.jar
+
+MAINTAINER=	c.kworr@gmail.com
+COMMENT=	Web-console for dispatching commands and scripts to your nodes
+
+LICENSE=	APACHE20
+
+USE_JAVA=	yes
+JAVA_VERSION=	1.6+
+
+NO_BUILD=	yes
+PLIST_FILES=	rundeck/server/lib/.keep \
+		share/rundeck/rundeck-launcher.jar
+PLIST_DIRS=	share/rundeck
+PLIST_DIRSTRY=	rundeck/server/lib \
+		rundeck/server \
+		rundeck
+
+USE_RC_SUBR=	rundeck
+
+RUNDECK_HOME=	${PREFIX}/rundeck
+RUNDECK_USER?=	rundeck
+RUNDECK_GROUP?=	rundeck
+RUNDECK_LOG_FILE?=	/var/log/rundeck.log
+
+.if ${RUNDECK_USER} == "rundeck"
+USERS=	rundeck
+.endif
+.if ${RUNDECK_GROUP} == "rundeck"
+GROUPS=	rundeck
+.endif
+
+SUB_LIST+=	RUNDECK_HOME=${RUNDECK_HOME} RUNDECK_USER=${RUNDECK_USER} \
+		RUNDECK_GROUP=${RUNDECK_GROUP} JAVA_HOME=${JAVA_HOME} \
+		RUNDECK_LOG_FILE=${RUNDECK_LOG_FILE}
+
+do-install:
+	${MKDIR} ${STAGEDIR}${DATADIR} ${STAGEDIR}${RUNDECK_HOME}/server/lib
+	${TOUCH} ${STAGEDIR}${RUNDECK_HOME}/server/lib/.keep
+	${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX} \
+		${STAGEDIR}${DATADIR}/rundeck-launcher${EXTRACT_SUFX}
+
+.include <bsd.port.mk>

Added: head/sysutils/rundeck/distinfo
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/rundeck/distinfo	Sat Sep 20 17:42:15 2014	(r368669)
@@ -0,0 +1,2 @@
+SHA256 (rundeck-launcher-2.2.1.jar) = 2c82a57e3795d188ac6d4e0825aebdb298a3883f070dc99c2bc08682ee652fde
+SIZE (rundeck-launcher-2.2.1.jar) = 56858931

Added: head/sysutils/rundeck/files/rundeck.in
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/rundeck/files/rundeck.in	Sat Sep 20 17:42:15 2014	(r368669)
@@ -0,0 +1,84 @@
+#!/bin/sh
+
+# PROVIDE: rundeck
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+#
+# Configuration settings for rundeck in /etc/rc.conf:
+#
+# rundeck_enable (bool):
+#   Set to "NO" by default.
+#   Set it to "YES" to enable rundeck
+#
+# rundeck_args (str):
+#   Extra arguments passed to start command
+#
+# rundeck_home (str)
+#   Set to "%%RUNDECK_HOME%%" by default.
+#   Set the RUNDECK_HOME variable for rundeck process
+#
+# rundeck_java_home (str):
+#   Set to "%%JAVA_HOME%%" by default.
+#   Set the Java virtual machine to run rundeck
+#
+# rundeck_java_opts (str):
+#   Set to "" by default.
+#   Java VM args to use.
+#
+# rundeck_user (str):
+#   Set to "%%RUNDECK_USER%%" by default.
+#   User to run rundeck as.
+#
+# rundeck_group (str):
+#   Set to "%%RUNDECK_GROUP%%" by default.
+#   Group for data file ownership.
+#
+# rundeck_log_file (str):
+#   Set to "%%RUNDECK_LOG_FILE%%" by default.
+#   Log file location.
+#
+
+. /etc/rc.subr
+
+name="rundeck"
+rcvar=rundeck_enable
+
+load_rc_config "${name}"
+
+: ${rundeck_args="-b %%RUNDECK_HOME%%"}
+: ${rundeck_enable="NO"}
+: ${rundeck_home="%%RUNDECK_HOME%%"}
+: ${rundeck_java_home="%%JAVA_HOME%%"}
+: ${rundeck_user="%%RUNDECK_USER%%"}
+: ${rundeck_group="%%RUNDECK_GROUP%%"}
+: ${rundeck_log_file="%%RUNDECK_LOG_FILE%%"}
+
+pidfile="/var/run/rundeck/rundeck.pid"
+command="/usr/sbin/daemon"
+java_cmd="${rundeck_java_home}/bin/java"
+procname="${java_cmd}"
+command_args="-p ${pidfile} ${java_cmd} ${rundeck_java_opts} -jar %%DATADIR%%/rundeck-launcher.jar ${rundeck_args} > ${rundeck_log_file} 2>&1"
+required_files="${java_cmd}"
+
+start_precmd="rundeck_prestart"
+start_cmd="rundeck_start"
+
+rundeck_prestart() {
+	if [ ! -f "${rundeck_log_file}" ]; then
+		touch "${rundeck_log_file}"
+		chown "${rundeck_user}:${rundeck_group}" "${rundeck_log_file}"
+		chmod 640 "${rundeck_log_file}"
+	fi
+	if [ ! -d "/var/run/rundeck" ]; then
+		install -d -o "${rundeck_user}" -g "${rundeck_group}" -m 750 "/var/run/rundeck"
+	fi
+}
+
+rundeck_start()
+{
+	check_startmsgs && echo "Starting ${name}."
+	su -l ${rundeck_user} -c "exec ${command} ${command_args} ${rc_arg}"
+}
+
+run_rc_command "$1"

Added: head/sysutils/rundeck/pkg-descr
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/sysutils/rundeck/pkg-descr	Sat Sep 20 17:42:15 2014	(r368669)
@@ -0,0 +1,6 @@
+Welcome to Rundeck, the human interface to your operations. Rundeck
+features fine-grain access controls, a built-in job scheduler, and the
+ability to define workflows that dispatch commands and scripts to your
+nodes.
+
+WWW: http://rundeck.org



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201409201742.s8KHgFro024119>