diff options
l--------- | lazycelery.sh | 1 | ||||
l---------[-rwxr-xr-x] | lazyserver.sh | 65 | ||||
-rwxr-xr-x | lazystarter.sh | 82 |
3 files changed, 84 insertions, 64 deletions
diff --git a/lazycelery.sh b/lazycelery.sh new file mode 120000 index 00000000..4ff15b1d --- /dev/null +++ b/lazycelery.sh @@ -0,0 +1 @@ +lazystarter.sh
\ No newline at end of file diff --git a/lazyserver.sh b/lazyserver.sh index 843993e6..4ff15b1d 100755..120000 --- a/lazyserver.sh +++ b/lazyserver.sh @@ -1,64 +1 @@ -#!/bin/sh - -# GNU MediaGoblin -- federated, autonomous media hosting -# Copyright (C) 2011 Free Software Foundation, Inc -# -# This program is free software: you can redistribute it and/or modify -# it under the terms of the GNU Affero General Public License as published by -# the Free Software Foundation, either version 3 of the License, or -# (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU Affero General Public License for more details. -# -# You should have received a copy of the GNU Affero General Public License -# along with this program. If not, see <http://www.gnu.org/licenses/>. - -# -# This runs Mediagoblin using Paste with Celery set to always eager mode. -# - -if [ "$1" = "-h" ] -then - echo "$0 [-h] [-c paste.ini] [ARGS_to_paster ...]" - echo "" - echo " For example:" - echo " $0 -c fcgi.ini port_number=23371" - echo " or: $0 --server-name=fcgi --log-file=paste.log" - echo "" - echo " The configfile defaults to paste_local.ini," - echo " if that is readable, otherwise paste.ini." - exit 1 -fi - -PASTE_INI=paste.ini - -if [ -r paste_local.ini ] -then - PASTE_INI=paste_local.ini -fi - -if [ "$1" = "-c" ] -then - PASTE_INI="$2" - shift - shift -fi - -echo "Using paste config: $PASTE_INI" - -if [ -f ./bin/paster ]; then - echo "Using ./bin/paster"; - export PASTER="./bin/paster"; -elif which paster > /dev/null; then - echo "Using paster from \$PATH"; - export PASTER="paster"; -else - echo "No paster found, exiting! X_X"; - exit 1 -fi - -set -x -CELERY_ALWAYS_EAGER=true $PASTER serve $PASTE_INI "$@" --reload +lazystarter.sh
\ No newline at end of file diff --git a/lazystarter.sh b/lazystarter.sh new file mode 100755 index 00000000..d3770194 --- /dev/null +++ b/lazystarter.sh @@ -0,0 +1,82 @@ +#!/bin/sh + +# GNU MediaGoblin -- federated, autonomous media hosting +# Copyright (C) 2011 Free Software Foundation, Inc +# +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. +# +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +selfname=$(basename "$0") +local_bin="./bin" +case "$selfname" in + lazyserver.sh) + starter_cmd=paster + ini_prefix=paste + ;; + lazycelery.sh) + starter_cmd=celeryd + ini_prefix=mediagoblin + ;; + *) + echo "Start this script with the name lazyserver.sh or lazycelery.sh">&2 + exit 1 + ;; +esac + +if [ "$1" = "-h" ]; then + echo "$0 [-h] [-c filename.ini] [ARGS_to_${starter_cmd} ...]" + echo "" + echo " For example:" + echo " $0 -c fcgi.ini port_number=23371" + echo " or: $0 --server-name=fcgi --log-file=paste.log" + echo "" + echo " The configfile defaults to ${ini_prefix}_local.ini," + echo " if that is readable, otherwise ${ini_prefix}.ini." + exit 1 +fi + +if [ "$1" = "-c" ]; then + ini_file=$2 + shift; shift +elif [ -r "${ini_prefix}_local.ini" ]; then + ini_file="${ini_prefix}_local.ini" +else + ini_file="${ini_prefix}.ini" +fi + +echo "Using ${starter_cmd} config: ${ini_file}" + +if [ -f "${local_bin}/${starter_cmd}" ]; then + echo "Using ${local_bin}/${starter_cmd}" + starter="${local_bin}/${starter_cmd}" +elif which "${starter_cmd}" > /dev/null; then + echo "Using ${starter_cmd} from \$PATH" + starter=$starter_cmd +else + echo "No ${starter_cmd} found, exiting! X_X" + exit 1 +fi + +set -x +export CELERY_ALWAYS_EAGER=true +case "$selfname" in + lazyserver.sh) + $starter serve "$ini_file" "$@" --reload + ;; + lazycelery.sh) + MEDIAGOBLIN_CONFIG="${ini_file}" \ + CELERY_CONFIG_MODULE=mediagoblin.init.celery.from_celery \ + $starter "$@" + ;; + *) exit 1 ;; +esac |