Last active
December 11, 2015 10:58
-
-
Save hashrocketeer/4590196 to your computer and use it in GitHub Desktop.
Drop at script/setup to keep everyone up to date, dependency-wise.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
DEPS="YES" | |
check-dependency() { | |
name=$1 | |
program=${2-"brew list $1"} | |
if ! eval $program &>/dev/null; then | |
echo "This app requires $name to run, but it is not installed." | |
echo " brew install $name" | |
echo | |
DEPS="NO" | |
return 1 | |
fi | |
return 0 | |
} | |
check-dependencies() { | |
check-dependency postgresql 'which psql' | |
check-dependency imagemagick 'which convert' | |
check-dependency zeromq | |
if [ $DEPS == "NO" ]; then | |
echo "Dependencies not met. Please install them and re-run $0" | |
exit 1 | |
else | |
echo "dependencies okay" | |
fi | |
} | |
check-bundle() { | |
if bundle check &>/dev/null ; then | |
echo "bundle okay" | |
else | |
bundle | |
fi | |
} | |
setup-database() { | |
for example in config/*.example.yml; do | |
local dest="${example%.example.yml}.yml" | |
if [ ! -f "$dest" ]; then | |
cp "$example" $dest | |
fi | |
done 2>/dev/null | |
rake db:create db:migrate db:seed db:test:prepare 2>/dev/null | |
} | |
check-dependencies | |
check-bundle | |
setup-database | |
echo | |
echo "You're all set!" |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment