diff options
author | lwhsu <lwhsu@FreeBSD.org> | 2011-03-06 17:59:52 +0800 |
---|---|---|
committer | lwhsu <lwhsu@FreeBSD.org> | 2011-03-06 17:59:52 +0800 |
commit | 36d3c26a0c1968524196af6f198efd2733715c01 (patch) | |
tree | 8ce98cc993a72c34c574556306139d4770b95f66 | |
parent | 1b27c581acf937b79b3ded77a9430a448e8e465c (diff) | |
download | freebsd-ports-gnome-36d3c26a0c1968524196af6f198efd2733715c01.tar.gz freebsd-ports-gnome-36d3c26a0c1968524196af6f198efd2733715c01.tar.zst freebsd-ports-gnome-36d3c26a0c1968524196af6f198efd2733715c01.zip |
Add jenkins 1.399, open-source continuous integration server.
This port is mostly copied and modified from www/hudson, and
many thanks to dougb for the rc script.
-rw-r--r-- | devel/Makefile | 1 | ||||
-rw-r--r-- | devel/jenkins/Makefile | 50 | ||||
-rw-r--r-- | devel/jenkins/distinfo | 2 | ||||
-rw-r--r-- | devel/jenkins/files/jenkins.in | 79 | ||||
-rw-r--r-- | devel/jenkins/pkg-descr | 5 |
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/ |