Skip to content

Instantly share code, notes, and snippets.

View Stubbs's full-sized avatar

Stuart Grimshaw Stubbs

  • Sheffield, South Yorkshire, UK
View GitHub Profile
@Stubbs
Stubbs / install_jenkins.sh
Created February 3, 2012 10:35
Script to install everything you need for PHP CI on a Debian box.
#!/bin/bash
## Install Git #########################################
apt-get install git
## Install Ant #########################################
apt-get install ant
## Install Jenkins #####################################
@Stubbs
Stubbs / watchr.rb
Created February 2, 2012 12:57
watchr script to auto-run phing tests
# Watchr config script to run phing tests every time you save PHP or fixtures.
# See http://criticallog.thornet.net/2011/03/08/autotesting-with-watchr-growl-and-phpunit/
#
watch('./(.*).(php|inc)') { |m| code_changed(m[0]) }
watch('./fixtures.sql') { |m| code_changed(m[0]) }
watch('phpdebug_trigger') { |m| code_changed(m[0]) }
def code_changed(file)
run "phing test"
@Stubbs
Stubbs / pre-commit
Created January 17, 2012 10:30
pre-commit hook to stop you commiting broken tests.
#!/bin/sh
# Script to check the status of the last test run & cancel the commit if there are any errors or failures
RESULTS="tests/reports/testsuites.xml"
# Check the test results exist, and have results in them.
if [ ! -s $RESULTS ]
then
echo "WTF is this shit? You've not even tried to run the tests. You suck, man."
@Stubbs
Stubbs / behat.sh
Created November 23, 2011 14:17
Behat Bash Autocompletion
#
# Add this to your /etc/bash_completion.d directory for behat parameter auto completion.
#
_behat()
{
local cur prev opts
COMPREPLY=()
cur="${COMP_WORDS[COMP_CWORD]}"
prev="${COMP_WORDS[COMP_CWORD-1]}"
@Stubbs
Stubbs / gist:999180
Created May 30, 2011 17:24
Statsd error
buildstats@buildstats-desktop:~/statsd$ node stats.js config.json
/home/buildstats/statsd/config.js:2
"graphitePort": 2003,
^
SyntaxError: Unexpected token :
at Module._compile (node.js:458:37)
at Module._loadScriptSync (node.js:469:10)
at Module.loadSync (node.js:338:12)
at loadModule (node.js:283:14)
@Stubbs
Stubbs / watchr.rb
Created March 9, 2011 18:13
This is a watchr config script that watches all the Python files in the directories specified by the "watch" command. You can specify one for each Django app in your project.
require "ruby-growl"
watch ('project/(.*).py') {|md| code_changed "#{md[0]}"}
def code_changed(file)
# Get the path of the file that changed
dir = File.dirname(file)
test(dir)
end