aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--devel/Makefile1
-rw-r--r--devel/jenkins/Makefile50
-rw-r--r--devel/jenkins/distinfo2
-rw-r--r--devel/jenkins/files/jenkins.in79
-rw-r--r--devel/jenkins/pkg-descr5
5 files changed, 137 insertions, 0 deletions
diff --git a/devel/Makefile b/devel/Makefile
index 4779732360f8..0727224746e3 100644
--- a/devel/Makefile
+++ b/devel/Makefile
@@ -676,6 +676,7 @@
SUBDIR += javolution
SUBDIR += jclassinfo
SUBDIR += jcmdline
+ SUBDIR += jenkins
SUBDIR += jep
SUBDIR += jiic
SUBDIR += jline
diff --git a/devel/jenkins/Makefile b/devel/jenkins/Makefile
new file mode 100644
index 000000000000..20bdfdacabb3
--- /dev/null
+++ b/devel/jenkins/Makefile
@@ -0,0 +1,50 @@
+# New ports collection makefile for: jenkins
+# Date created: 2011-03-03
+# Whom: Li-Wen Hsu <lwhsu@FreeBSD.org>
+#
+# $FreeBSD$
+#
+
+PORTNAME= jenkins
+PORTVERSION= 1.399
+CATEGORIES= devel java
+MASTER_SITES= http://mirrors.jenkins-ci.org/war/${PORTVERSION}/
+DISTNAME= jenkins
+EXTRACT_SUFX= .war
+DIST_SUBDIR= ${PORTNAME}/${PORTVERSION}
+EXTRACT_ONLY=
+
+MAINTAINER= lwhsu@FreeBSD.org
+COMMENT= Open-source continuous integration server
+
+USE_JAVA= yes
+JAVA_VERSION= 1.5+
+
+FETCH_ARGS= -Fpr
+NO_BUILD= yes
+
+USE_RC_SUBR= jenkins
+
+JENKINS_HOME?= ${PREFIX}/jenkins
+JENKINS_USER?= jenkins
+JENKINS_GROUP?= jenkins
+JENKINS_LOG_FILE?= /var/log/jenkins.log
+
+.if ${JENKINS_USER} == "jenkins"
+USERS= jenkins
+.endif
+.if ${JENKINS_GROUP} == "jenkins"
+GROUPS= jenkins
+.endif
+
+PLIST_FILES= %%DATADIR%%/${DISTNAME}${EXTRACT_SUFX}
+PLIST_DIRS= %%DATADIR%%
+SUB_LIST+= JENKINS_HOME=${JENKINS_HOME} JENKINS_USER=${JENKINS_USER} JENKINS_GROUP=${JENKINS_GROUP} JAVA_HOME=${JAVA_HOME} JENKINS_LOG_FILE=${JENKINS_LOG_FILE}
+
+.include <bsd.port.pre.mk>
+
+do-install:
+ ${MKDIR} "${DATADIR}"
+ ${INSTALL_DATA} ${DISTDIR}/${DIST_SUBDIR}/${DISTNAME}${EXTRACT_SUFX} ${DATADIR}/
+
+.include <bsd.port.post.mk>
diff --git a/devel/jenkins/distinfo b/devel/jenkins/distinfo
new file mode 100644
index 000000000000..377655794a02
--- /dev/null
+++ b/devel/jenkins/distinfo
@@ -0,0 +1,2 @@
+SHA256 (jenkins/1.399/jenkins.war) = 656db5479607e062e060da775a37ceec894077c374de6d0b1aec2305d5bad188
+SIZE (jenkins/1.399/jenkins.war) = 36609840
diff --git a/devel/jenkins/files/jenkins.in b/devel/jenkins/files/jenkins.in
new file mode 100644
index 000000000000..90f3864d5cc8
--- /dev/null
+++ b/devel/jenkins/files/jenkins.in
@@ -0,0 +1,79 @@
+#!/bin/sh
+
+# $FreeBSD$
+#
+# PROVIDE: jenkins
+# REQUIRE: LOGIN
+# KEYWORD: shutdown
+
+#
+# Configuration settings for jenkins in /etc/rc.conf:
+#
+# jenkins_enable (bool):
+# Set to "NO" by default.
+# Set it to "YES" to enable jenkins
+#
+# jenkins_args (str):
+# Extra arguments passed to start command
+#
+# jenkins_home (str)
+# Set to "%%JENKINS_HOME%%" by default.
+# Set the JENKINS_HOME variable for jenkins process
+#
+# jenkins_java_home (str):
+# Set to "%%JAVA_HOME%%" by default.
+# Set the Java virtual machine to run jenkins
+#
+# jenkins_java_opts (str):
+# Set to "" by default.
+# Java VM args to use.
+#
+# jenkins_user (str):
+# Set to "%%JENKINS_USER%%" by default.
+# User to run jenkins as.
+#
+# jenkins_group (str):
+# Set to "%%JENKINS_GROUP%%" by default.
+# Group for data file ownership.
+#
+# jenkins_log_file (str):
+# Set to "%%JENKINS_LOG_FILE%%" by default.
+# Log file location.
+#
+
+. /etc/rc.subr
+
+name="jenkins"
+rcvar=`set_rcvar`
+
+load_rc_config "${name}"
+
+: ${jenkins_enable="NO"}
+: ${jenkins_home="%%JENKINS_HOME%%"}
+: ${jenkins_args="--webroot=${jenkins_home}/war --httpListenAddress=127.0.0.1 --httpPort=8180 --ajp13ListenAddress=127.0.0.1 --ajp13Port=8009 --prefix=/jenkins"}
+: ${jenkins_java_home="%%JAVA_HOME%%"}
+: ${jenkins_user="%%JENKINS_USER%%"}
+: ${jenkins_group="%%JENKINS_GROUP%%"}
+: ${jenkins_log_file="%%JENKINS_LOG_FILE%%"}
+
+pidfile="/var/run/jenkins.pid"
+command="/usr/sbin/daemon"
+java_cmd="${jenkins_java_home}/bin/java"
+procname="${java_cmd}"
+command_args="-p ${pidfile} ${java_cmd} -DJENKINS_HOME=${jenkins_home} ${jenkins_java_opts} -jar %%DATADIR%%/jenkins.war --logfile=${jenkins_log_file} ${jenkins_args}"
+required_files="${java_cmd}"
+
+start_precmd="jenkins_prestart"
+
+jenkins_prestart() {
+ if [ ! -f "${jenkins_log_file}" ]; then
+ touch "${jenkins_log_file}"
+ chown "${jenkins_user}:${jenkins_group}" "${jenkins_log_file}"
+ chmod 640 "${jenkins_log_file}"
+ fi
+ if [ ! -d "${jenkins_home}" ]; then
+ install -d -o "${jenkins_user}" -g "${jenkins_group}" -m 750 "${jenkins_home}"
+ fi
+}
+
+run_rc_command "$1"
diff --git a/devel/jenkins/pkg-descr b/devel/jenkins/pkg-descr
new file mode 100644
index 000000000000..c3e7a5959ac1
--- /dev/null
+++ b/devel/jenkins/pkg-descr
@@ -0,0 +1,5 @@
+In a nutshell Jenkins CI is the leading open-source continuous integration
+server. Built with Java, it provides over 300 plugins to support building
+and testing virtually any project.
+
+WWW: http://jenkins-ci.org/