blob: e8044ff5dcee14ac601f352e5e188120978bf7ba [file] [log] [blame]
# Copyright (c) 2014, the Dart project authors. Please see the AUTHORS file
# for details. All rights reserved. Use of this source code is governed by a
# BSD-style license that can be found in the LICENSE file.
# App Engine configuration, see:
# https://developers.google.com/appengine/docs/python/config/appconfig
# The version number should be something like rSVN_REVISION.
version: remember to edit app.yaml before deploying
# This version name is used to create a new host, for example,
# http://r31824.try-dart-lang.appspot.com/, which can be tested before going
# live at http://try.dartlang.org/. This is controlled from
# https://appengine.google.com/deployment?&app_id=s~try-dart-lang
application: try-dart-lang
runtime: python27
api_version: 1
threadsafe: yes
# Set "Cache-Control" and "Expires" HTTP headers to only cache for one second.
# We do this because we frequently push new changes and rely on AppCache for
# caching. Once files are installed in AppCache, the site launches
# immediately.
#
# Problem: PageSpeed Insights doesn't realize that we use AppCache and keeps
# nagging about caching.
# Solution: Ignore its advice about "Leverage browser caching".
default_expiration: 1s
handlers:
- url: /packages/analyzer
static_dir: packages/analyzer
secure: always
- url: /packages/args
static_dir: packages/args
secure: always
- url: /packages/collection
static_dir: packages/collection
secure: always
- url: /packages/crypto
static_dir: packages/crypto
secure: always
- url: /packages/http
static_dir: packages/http
secure: always
- url: /packages/http_parser
static_dir: packages/http_parser
secure: always
- url: /packages/intl
static_dir: packages/intl
secure: always
- url: /packages/logging
static_dir: packages/logging
secure: always
- url: /packages/matcher
static_dir: packages/matcher
secure: always
- url: /packages/math
static_dir: packages/math
secure: always
- url: /packages/path
static_dir: packages/path
secure: always
- url: /packages/serialization
static_dir: packages/serialization
secure: always
- url: /packages/stack_trace
static_dir: packages/stack_trace
secure: always
- url: /packages/string_scanner
static_dir: packages/string_scanner
secure: always
- url: /packages/unittest
static_dir: packages/unittest
secure: always
- url: /packages/yaml
static_dir: packages/yaml
secure: always
- url: /favicon\.ico
static_files: favicon.ico
upload: favicon\.ico
secure: always
- url: /
static_files: index.html
upload: index.html
secure: always
# The nossl file below help work around bugs/features in interaction between
# AppEngine and AppCache. When a return user goes to http://try.dartlang.org/
# (no SSL), AppCache will serve index.html from cache, try to fetch the old
# manifest (nossl.appcache) and the files listed in the manifest. In additation
# the files listed in the manifest, it will also fetch index.html, as it is the
# master. However, we want index.html to be redirected to the SSL version, and
# AppCache sees this redirection as a network error. When an error occurs,
# AppCache will keep serving the old page. So we configure nossl.appcache to
# provide fallbacks for index.html and leap.dart.js. The fallback for
# leap.dart.js is nossl.js which will take care of redirecting to
# https://try.dartlang.org/ (with SSL) using JavaScript. Unfortunately, Chrome
# seems to keep the old version of index.html cached indefinitely. The only way
# to avoid that appears to serve up a different index.html depending on if it
# is a secure connection or not. This would require a Python script, and
# something we may consider implementing in the future.
- url: /nossl.appcache
static_files: nossl.appcache
upload: nossl.appcache
secure: optional
- url: /nossl.js
static_files: nossl.js
upload: nossl.js
secure: optional
- url: /nossl.html
static_files: nossl.html
upload: nossl.html
secure: optional
- url: /ssl.appcache
static_files: ssl.appcache
upload: ssl.appcache
secure: always
- url: /(.*\.(html|js|png|css|dart|json))
static_files: \1
upload: (.*\.(html|js|png|css|dart|json))
secure: always
- url: /css/fonts/fontawesome-webfont.woff
static_files: fontawesome-webfont.woff
upload: fontawesome-webfont.woff
secure: always
libraries:
- name: webapp2
version: "2.5.2"