Ondřej Plátek Archive
PhD student@UFAL, Prague. LLM & TTS evaluation. Engineer. Researcher. Father.

Setting django-nonrel and its sample app for App Engine SDK 1.8

I have written the this post, because setting up things is boring. In fact, I hate figuring small details over and over again and again. So I decided to write this step by step guide. For explanation and how it works there are excellent tutorials at Google developersand at All Button Pressed.

It worked for me on 7.6.2013 on Ubuntu 12.10. (It should be fully reproducible if you use the same versions of Git and Mercurial repositories)

Steps:
  1. Download Python App Engine SDK (I used 1.8) and unpack it and move it to /opt directory
    wget http://googleappengine.googlecode.com/files/google_appengine_1.8.0.zip
    unzip google_appengine*.zip
    sudo mv google_appengine /opt
  2. Pull the test app from Github and change to that directory
    git clone git://github.com/django-nonrel/django-testapp.git
    cd django-testapp
  3. Pull the other dependencies for Django-nonrel
    cd /opt
    sudo hg clone ssh://hg@bitbucket.org/twanschik/django-autoload
    sudo git clone git://github.com/django-nonrel/django-dbindexer.git
    sudo git clone https://github.com/django-nonrel/django
    sudo git clone git://github.com/django-nonrel/djangoappengine.git
    sudo git clone https://github.com/django-nonrel/djangotoolbox
  4. Link the to the SUBDIRECTORIES and not their wrappers
    cd django-testapp
    ln -s /opt/django-autoload/autoload
    ln -s /opt/django-dbindexer/dbindexer
    ln -s /opt/django
    ln -s /opt/djangoappengine
    ln -s /opt/djangotoolbox/
  5. Run the application
    cd django-testapp
    python manage.py runserver
  6. Open browser at http://127.0.0.1:8000/
    chromium-browser http://127.0.0.1:8000/ 
  7. Change your APPNAME in app.yaml at the first row. You will find or generate APPNAME at https://appengine.google.com/.
    # First row NOW should look like of app.yaml
    application: APPNAME
  8. Upload the source code to Google Cloud
    cd django-testapp
    ./manage.py deploy
  9. Open your app at chromium.
    chromium-browser APPNAME.appspot.com