# $Id: Portfile 56061 2009-08-24 00:33:19Z ryandesign@macports.org $ PortSystem 1.0 name pulse version 1.2.18 categories java platforms darwin maintainers redhillconsulting.com.au:simon description Pulse automated build server long_description Pulse is an automated build or continuous integration server. \ Pulse regularly checks out your project's source code from your \ SCM, builds the project and reports on the results. A project \ build typically involves compiling the source code and running \ tests to ensure the quality of the code. By automating this \ process, pulse allows you to constantly monitor the health of \ your project. homepage http://www.zutubi.com/products/pulse/ master_sites http://www.zutubi.com/download/ checksums md5 6da10683325bf7239827e2ff842600d1 depends_lib bin:java:kaffe set osuser pulse set osgroup pulse set home ${prefix}/share/java/pulse set bin ${home}/bin set executable ${bin}/pulse set dbdir ${prefix}/var/db/pulse use_configure no startupitem.create yes startupitem.init "PULSE_HOME=${home}\nPATH=${prefix}/bin:${prefix}/sbin:${prefix}/lib/postgresql82/bin:\$PATH" startupitem.start "su ${osuser} -c \"${executable} start\"" startupitem.stop "su ${osuser} -c \"${executable} shutdown\"" build {} destroot { # Create the Pulse user addgroup ${osgroup} set gid [existsgroup ${osgroup}] adduser ${osuser} shell=/bin/sh gid=${gid} home=${dbdir} realname=Pulse\ Server # Ensure we have the needed directories xinstall -m 755 -d ${destroot}${home} # Copy the files system "cp -R ${worksrcpath}/ ${destroot}${home}" # Keep empty directories destroot.keepdirs-append ${destroot}${home}/logs ${destroot}${home}/versions # Fix ownership of some directories pulse really needs to write to system "chown -R ${osuser}:${osgroup} ${destroot}${home}/logs" system "chown -R ${osuser}:${osgroup} ${destroot}${home}/versions" # Add a symlink from bin directory to the pulse script system "ln -fs ${executable} ${destroot}${prefix}/bin/pulse" } post-install { ui_msg "#" ui_msg "# The script ${executable} has been installed to facilitate starting and" ui_msg "# stopping ${name} as a true daemon process. It must be run as ${osuser}." ui_msg "# For example:" ui_msg "#" ui_msg "# sudo su pulse -c "${executable} start" ui_msg "#" ui_msg "# This script assumes it is run from ${home}. To run from outside this" ui_msg "# directory, you must set the value of PULSE_HOME to the absolute path" ui_msg "# of this directory. For example:" ui_msg "#" ui_msg "# PULSE_HOME=${home} sudo su pulse -c "${executable} start" ui_msg "#" ui_msg "# You will also need To create the directory ${dbdir} if it does not" ui_msg "# already exist:" ui_msg "#" ui_msg "# sudo mkdir -p ${dbdir}" ui_msg "# sudo chown ${osuser}:${osgroup} ${dbdir}" ui_msg "#" }