I have finally decided to learn all this stuff about Test Driven Design (TDD). I have a few projects that I go back to every now and then and it would be nice to be able to start hacking away without needing to remember every bit of the project. After looking around and investigating several other Continuous Integration systems I have ended up on Jenkins with ShiningPanda plugin. The development team where I work uses Jenkins and it is reasonably easy to set up but I was initially against it because the machine I have to run it on is fairly low spec. It turns out it isn’t too much of a resource hog for a JVM based application (only 20% of my memory and 10% constant CPU usage).
Small script to run an instance of mysql in my home directory using the binary provided by the OS. Maybe some day I will make it more usable but for the time being it suits my needs.
#!/bin/bash MYSQL_HOME=$HOME MYSQL_USER=$USER MYSQL_PORT=13306 ACTION=$1 if [ $ACTION == 'init' ]; then echo "initialising new mysql installation at $MYSQL_HOME/var/lib/mysql" rm -rf $MYSQL_HOME/var/lib/mysql mkdir -p $MYSQL_HOME/var/lib/mysql $MYSQL_HOME/mysql/data $HOME/var/lib/mysql/tmp mysql_install_db --user=$MYSQL_USER --datadir=$MYSQL_HOME/var/lib/mysql/data/ cat < $HOME/.my.cnf [mysqld] user=$MYSQL_USER datadir=$MYSQL_HOME/var/lib/mysql/data log-error=mysqld.log pid-file=mysqld.pid socket=$MYSQL_HOME/var/lib/mysql/tmp/mysql.sock port=$MYSQL_PORT [client] user=$MYSQL_USER socket=$MYSQL_HOME/var/lib/mysql/tmp/mysql.sock port=$MYSQL_PORT [safe_mysqld] log-error=mysqld.log pid-file=mysqld.pid port=$MYSQL_PORT EOT echo " Done" elif [ $ACTION == 'start' ];then echo -n "Starting mysqld as $MYSQL_USER on $MYSQL_PORT" nohup mysqld_safe &>/dev/null & echo " Done" elif [ $ACTION == 'stop' ];then PID=$(cat $MYSQL_HOME/var/lib/mysql/data/mysqld.pid) echo -n "Stopping mysql instance [$PID]" kill `cat $MYSQL_HOME/var/lib/mysql/data/mysqld.pid` echo " Done" else echo "Unknown command '$1'" fi UPDATED SCRIPT: