Я пытаюсь развернуть приложение Django на openshift (python3.3
, django1.7
, Openshift 2.1).
Мне нужно настроить OPENSHIFT_PYTHON_WSGI_APPLICATION
так, чтобы он указывал на альтернативное местоположение wsgi.py
.
Я попытался использовать скрипт pre_build
для установки переменной, используя следующие команды:
export OPENSHIFT_PYTHON_WSGI_APPLICATION="$OPENSHIFT_REPO_DIR"geartest4/wsgi.py
echo "-------> $OPENSHIFT_PYTHON_WSGI_APPLICATION"
Я вижу во время git push
, что скрипт pre_build
правильно устанавливает переменную. echo
показывает правильный путь, как и ожидалось. Однако wsgi.py
не запускается, и я получаю:
CLIENT_ERROR: приложение WSGI не найдено
Когда я сразу ssh
включаю передачу и проверяю переменную окружения, я вижу, что OPENSHIFT_PYTHON_WSGI_APPLICATION=""
не установлено.
Если я установлю переменную вручную с моей рабочей станции с помощью rhc set-env OPENSHIFT_PYTHON_WSGI_APPLICATION=/var/lib/openshift/gear_name/bla/bla
, тогда переменная закрепится, сервер wsgi запустится, и приложение будет работать нормально.
Проблема в том, что я не хочу использовать rhc set-env
, потому что это означает, что я должен жестко указать имя шестерни в пути. Это становится проблемой, когда я хочу выполнить масштабирование с несколькими передачами.
У кого-нибудь есть идеи о том, как установить переменную и сделать палку?