Wednesday, March 25, 2009

Famous Art Deco Product



Continuous Integration with Hudson: great. I find really nice .... operate To Hudson, there are a lot of different installation and configuration options: Stand Alone, in a web server (Tomcat, JBoss, Glassfish), with a front "dazzled" Apache, etc.
This is a small explanation on how I Hudson set have. I

the current development snapshot on the same VM operators like Hudson, I opted for the standalone version


of Hudson. I hope this way side effects between the development server (in this case JBoss) to reduce and Hudson. In the joint operation on JBoss PermGen example, I received error messages / OutOfMemory exceptions which I could then assign it not clean (too resource-intensive activities or a Hudson memory leaks in the application?).

   requirements 




OS debian etch
JAVA is installed and create the PATH

 own user   



i041: ~ # mkdir / data
i041: ~ # mkdir / data / hudson
i041: ~ # addgroup Hudson
Adding group `Hudson '(GID

1002) ...

 Done.  i041: ~ # useradd g- 1002 
-d / data / hudson-s / bin / bash hudson
i041: ~ # chown Hudson: hudson / data / hudson /



When the user system (useradd) must be taken be taken that the GID (option-g) corresponds to the GID of the group system.
if necessary. now some settings from the Favourites copy to get the job then "beautiful" is done.



i041: ~ # cp / data / jboss / .bashrc / data / hudson /.
i041: ~ # chown-R Hudson: hudson / data / hudson

The following activities should be undertaken as Hudson User

hudson @ i041: ~ $



Hudson directory and startup scripts



hudson @ i041 setup: ~ $ mkdir bin

hudson @ i041: ~ $ mkdir lib

hudson @ i041: ~ $ mkdir log hudson @ i041: ~ $ cp / tmp / hudson.war lib /
script run.sh systems



hudson @ i041: ~ / bin $ run.sh nano


##################### # # # #
CURRENT_USER=`whoami`
if [ $CURRENT_USER != "hudson" ]; then

echo "Run only valid as hudson user!... (not as $CURRENT_USER)"

exit -1; fi

export HUDSON_HOME=/data/Hudson
export PATH="/usr/share/apache-ant/latest/bin:$PATH" export FINDBUGS_HOME=$HUDSON_HOME/externals/findbugs-1.3.8
HTTP_PORT=8280
AJP13_PORT=8209 CONTROL_PORT=-1 LOGFILE=$HUDSON_HOME/log/hudson.log

nohup java -jar $HUDSON_HOME/lib/hudson.war \
--httpPort=$HTTP_PORT \

--ajp13Port=$AJP13_PORT \

--controlPort=$CONTROL_PORT \
> $LOGFILE 2>&1&

#########################



Skript shutdown.sh anlagen

hudson@i041:~/bin$ nano run.sh

#########################
#stop per kill. see
http://winstone.sourceforge.net/#security

CURRENT_USER=`whoami`

if [ $CURRENT_USER != "hudson" ]; then echo "Shutdown only valid as hudson user!... (not as $CURRENT_USER)" exit -1;
fi
pid=`ps x awk '{print $ 1}' `; kill $ pid





#########################


hudson @ i041: ~ / bin $ chmod u + x run.sh

hudson @ i041: ~ / bin $ chmod u + x shutdown.sh

The Hudson server can now

run.sh start and shutdown with
.
be sh stopped. Thus, the Hudson does not come with the JBoss server on the same VM to preserve the Web ports are modified accordingly (see variable
HTTP_PORT
and
AJP13_PORT
). In the $
HUDSON_HOME / log is the log file mentioned. If the server does not boots (for example, is possibly the Web port already in use) this file should be checked at all costs!


[TODO: FindBugs integration]




0 comments:

Post a Comment