Is it possible to access or download my code that is running on Google App Engine? For instance, say my hard drive crashes and I have not saved my code on any kind of external repository. Is there any way to recover?
-
possible duplicate of [how to download google appengine (uploaded)application files](http://stackoverflow.com/questions/1192128/how-to-download-google-appengine-uploadedapplication-files) – Nick Johnson Jun 23 '10 at 09:03
3 Answers
No, it is not possible. You compile your code on your machine and ship up the compiled code. If you have a source repository, always make sure that you have a backup.
GAE does not have a mechanism for you to download your binaries, so reverse engineering them is not possible except from your own copies.
Of course you could always host your project on GitHub or SourceForge

- 24,113
- 5
- 60
- 79
-
There is a library that makes it possible to download an app's source as a zipfile, if the library was included with the app. You're right that it's a bad idea, though, and that backing up one's code is a much better idea. – Nick Johnson Jun 22 '10 at 16:11
-
If you're using Python and running AppStats you can also see any file that's traced by AppStats during an RPC call. Just look for the file in the stack under 'RPC Call Traces' in the details of a request. – hwiechers Jun 22 '10 at 17:33
-
-
http://www.manatlan.com/blog/zipme___download_sources_of_your_gae_website__as_a_zip_file – Nick Johnson Jun 23 '10 at 09:06
I can't find it now, but I remember reading a post where they were pretty specific about NOT being able to do that. The gist of it was that they were not a backup service and that you were responsible for backing up your own code.
There is a "datastore backup and restore" feature on the project roadmap though: http://code.google.com/appengine/docs/roadmap.html I've skimmed over a few posts where people talk about ways to backup the database now without that the official sanctioned feature implemented... of course your datastore isn't your code.

- 48,402
- 65
- 188
- 258