I am playing with Google App Engine and Python and I cannot list the files of a static directory. Below is the code I currently use.
app.yaml
- url: /data static_dir: data
Python code to list the files
myFiles = [] for root, dirs, files in os.walk(os.path.join(os.path.dirname(__file__), 'data/') ): for name in files: full_name = os.path.join(root, name) myFiles.append('%s;%s\n' % (name, datetime.fromtimestamp(os.stat(full_name).st_mtime)))
When I run this code locally on my machine, everything is alright. I have my Python script at the root of the directory and it walks the files under the data directory. However, when I upload and run the exact same code in GAE, it doesn`t work. It seems to me that the directory structure of my application is not exactly replicated in Google App Engine. Where are the static files?
Thanks!
https://developers.google.com/appengine/docs/python/config/appconfig#Python_app_yaml_Static_file_handlers
They’re not where you think they are, GAE puts static content into GoogleFS which is equivalent of a CDN. The idea is that static content is meant to be served directly to your users and not act as a file store you can manipulate. Furthermore GAE has 1K file limit and it would be difficult to police this rule if you could manipulate your static file store.