So, you build a great shiny cloudy 2.0 website on top of AppEngine, with thousands upon thousands of images saved into the datastore and gigs of data at the blobstore. How do you backup them?
Ok, so this is how to do it:
1/ Add this to the app.yaml (and update the app, off course):
- url: /remote_api
script: $PYTHON_LIB/google/appengine/ext/remote_api/handler.py
login: admin
2/ Run this command to generate the special file needed:
appcfg.py create_bulkloader_config --filename=bulkloader.yaml --url=http://appName.appspot.com/remote_api
3/ Check the bulkloader.yaml file looking for lines including TODOs, there will be at least one with the format of the backup file (xml, csv, ...).
4/ And finally, do the backup of each datastore entity:
appcfg.py download_data --config_file=bulkloader.yaml --filename=entityBackup.csv --kind=nameOfEntity --url=http://appName.appspot.com/remote_api
Please note, download_data, NOT --dump as stated in the docs... and big thumbs down to the translation of the documentation, because the English version is much better!