Merge pull request #1005 from cmar/powed

pow plugin - commands to restart pow and list urls
This commit is contained in:
Robby Russell 2014-03-22 15:41:46 -07:00
commit ae1f331782

View File

@ -8,18 +8,18 @@
# Supports command completion. # Supports command completion.
# #
# If you are not already using completion you might need to enable it with # If you are not already using completion you might need to enable it with
# #
# autoload -U compinit compinit # autoload -U compinit compinit
# #
# Changes: # Changes:
# #
# Defaults to the current application, and will walk up the tree to find # Defaults to the current application, and will walk up the tree to find
# a config.ru file and restart the corresponding app # a config.ru file and restart the corresponding app
# #
# Will Detect if a app does not exist in pow and print a (slightly) helpful # Will Detect if a app does not exist in pow and print a (slightly) helpful
# error message # error message
rack_root_detect(){ rack_root(){
setopt chaselinks setopt chaselinks
local orgdir=$(pwd) local orgdir=$(pwd)
local basedir=$(pwd) local basedir=$(pwd)
@ -32,6 +32,11 @@ rack_root_detect(){
builtin cd $orgdir 2>/dev/null builtin cd $orgdir 2>/dev/null
[[ ${basedir} == "/" ]] && return 1 [[ ${basedir} == "/" ]] && return 1
echo $basedir
}
rack_root_detect(){
basedir=$(rack_root)
echo `basename $basedir | sed -E "s/.(com|net|org)//"` echo `basename $basedir | sed -E "s/.(com|net|org)//"`
} }
@ -51,16 +56,30 @@ kapow(){
compctl -W ~/.pow -/ kapow compctl -W ~/.pow -/ kapow
powit(){ powit(){
local basedir=$(pwd) local basedir=$(pwd)
local vhost=$1 local vhost=$1
[ ! -n "$vhost" ] && vhost=$(rack_root_detect) [ ! -n "$vhost" ] && vhost=$(rack_root_detect)
if [ ! -h ~/.pow/$vhost ] if [ ! -h ~/.pow/$vhost ]
then then
echo "pow: Symlinking your app with pow. ${vhost}" echo "pow: Symlinking your app with pow. ${vhost}"
[ ! -d ~/.pow/${vhost} ] && ln -s $basedir ~/.pow/$vhost [ ! -d ~/.pow/${vhost} ] && ln -s $basedir ~/.pow/$vhost
return 1 return 1
fi fi
} }
powed(){
local basedir=$(rack_root)
find ~/.pow/ -type l -lname "*$basedir*" -exec basename {}'.dev' \;
}
# Restart pow process
# taken from http://www.matthewratzloff.com/blog/2011/12/23/restarting-pow-when-dns-stops-responding
repow(){
lsof | grep 20560 | awk '{print $2}' | xargs kill -9
launchctl unload ~/Library/LaunchAgents/cx.pow.powd.plist
launchctl load ~/Library/LaunchAgents/cx.pow.powd.plist
echo "restarted pow"
}
# View the standard out (puts) from any pow app # View the standard out (puts) from any pow app
alias kaput="tail -f ~/Library/Logs/Pow/apps/*" alias kaput="tail -f ~/Library/Logs/Pow/apps/*"