Improve the logs command.

Check for application's existence, and add an optional -t option, to
make it behave like "tail -f" or "heroku logs -t"
This commit is contained in:
Paul Lietar
2013-10-28 15:00:23 +00:00
parent 0da5065429
commit 28c78300db
2 changed files with 16 additions and 2 deletions

View File

@@ -10,6 +10,7 @@ Jose Diaz-Gonzalez <dokku@josediazgonzalez.com>
Leo Unbekandt <leo@unbekandt.eu>
Luigi Maselli <grigio.org@gmail.com>
Martin Weiss <kornnflake@gmail.com>
Paul Lietar <paul@lietar.net>
Rajiv Makhijani <rajiv@blue-tech.org>
rhy-jot <rhy-jot@myeml.net>
Richard North <rich.north@gmail.com>

View File

@@ -23,8 +23,21 @@ case "$1" in
;;
logs)
CONTAINER=$(<$DOKKU_ROOT/$2/CONTAINER)
if [[ -z $2 ]]; then
echo "Please specify an app to run the command on"
exit 1
fi
APP="$2";
if [[ ! -d "$DOKKU_ROOT/$APP" ]]; then
echo "App $APP does not exist"
exit 1
fi
CONTAINER=$(<$DOKKU_ROOT/$APP/CONTAINER)
docker logs $CONTAINER | tail -n 100
if [[ $3 == "-t" ]]; then
docker attach $CONTAINER
fi
;;
run)
@@ -56,7 +69,7 @@ case "$1" in
help)
cat && cat<<EOF
delete <app> Delete an application
logs <app> Show the last logs for an application
logs <app> [-t] Show the last logs for an application (-t follows)
run <app> <cmd> Run a command in the environment of an application
url <app> Show the URL for an application
EOF