Provide wrapper.php to simulate mod_rewrite and correct $_SERVER['SCRIPT_NAME'] to start with a /.
Provide app.yaml to define application information and request handlers.
Provide php.ini to set a few options to make Drupal work more fully.
Add file documentation and examples to wrapper.php.
Hack to trick Drupal into ignoring that file directory is not writable.
Convert drupal_http_request() to use a steam instead of socket to provide basic HTTP requests.
Convert php.ini comments depricated # to ;.
Replace the move_uploaded_file() call in drupal_move_uploaded_file() with copy() since PHP does not support moving between two different stream wrappers (ex. gs:// and public://).
Since uploads are proxied through GCS they are not limited by 'post_max_size'. As such, use the 'upload_max_filesize' ini setting which should provide the GCS limit instead of the normal core logic.
Make use the stream wrappers to create file system directories instead of use local paths.
Workaround for lack of tempnam() support in drupal_tempnam().
Update app.yaml and wrapper.php from google_appenegine module.
Add stub cron.yaml.
Add explicit /system/queue hanlder restricting path to admin only for push queue integration.
Issue #2144081: Remove call to drupal_realpath() in image.gd.inc since it voids stream wrapper support.
Remove skip_files directive from app.yaml since it is unnecessary and overrides default filter which is better.