Для нового приложения, использующего Django 1.6, я пытаюсь создать run.sh
, который будет запускать исходные команды на Bluemix.Использование южных миграций с IBM Bluemix
Я нашел ответ here, что дает файл run.sh для встроеных миграций, которая поддерживается в Django 1.7+
#!/bin/bash
if [ -z "$VCAP_APP_PORT" ];
then SERVER_PORT=80;
else SERVER_PORT="$VCAP_APP_PORT";
fi
echo [$0] port is------------------- $SERVER_PORT
python manage.py makemigrations
python manage.py migrate
echo "from django.contrib.auth.models import User; User.objects.create_superuser(username='username',password='password',email='[email protected]')" | python manage.py shell
echo [$0] Starting Django Server...
python manage.py runserver --noreload 0.0.0.0:$SERVER_PORT
Есть идемпотентный способ запуска эквивалентных команд (schemamigration --auto
, migrate
) в Юге?
Что вы подразумеваете под управлением команд на Юге? –
Проверьте пример приложения https://github.com/fe01134/djangobluemix. –
Я имею в виду южные эквиваленты makemigrations, migrate и т. Д. Пример приложения, к которому вы привязаны, только делает syncdb, и я создал проблему там https://github.com/fe01134/djangobluemix/issues/1, предлагая добавить вышеуказанный код для Django 1.7+, но я использую Django 1.6. – Pranab