blob: ba3b2e4fa88a3df084870cefe016689183c2df35 [file] [log] [blame]
# Copyright 2019 The Chromium Authors
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
runtime: python39
app_engine_apis: true
entrypoint: gunicorn -b :$PORT --timeout 60 --workers 2 --threads 1 main:app
default_expiration: "10d"
instance_class: F1
automatic_scaling:
min_pending_latency: 15000ms
max_pending_latency: 15000ms
min_instances: 0
max_instances: 1
max_concurrent_requests: 80
env_variables:
# https://cloud.google.com/appengine/docs/standard/python3/services/access#compatibility
MEMCACHE_USE_CROSS_COMPATIBLE_PROTOCOL: "True"
NDB_USE_CROSS_COMPATIBLE_PICKLE_PROTOCOL: "True"
handlers:
- url: /_ah/api/.*
script: main.app
- url: /robots.txt
static_files: static/robots.txt
upload: static/robots.txt
expiration: "10m"
- url: /database-maintenance
static_files: static/database-maintenance.html
upload: static/database-maintenance.html
- url: /static/dist
static_dir: static/dist
mime_type: application/javascript
secure: always
http_headers:
Access-Control-Allow-Origin: '*'
- url: /static/js
static_dir: static/js
mime_type: application/javascript
secure: always
http_headers:
Access-Control-Allow-Origin: '*'
- url: /static
static_dir: static
- url: /_ah/mail/.+
script: main.app
login: admin
- url: /_ah/warmup
script: main.app
login: admin
- url: /.*
script: main.app
secure: always
# From api service:
- url: /prpc/.*
script: monorailapp.app
secure: always
# From besearch service
- url: /_backend/.*
script: monorailapp.app
# From latency-insensitive service
- url: /_task/.*
script: monorailapp.app
login: admin
- url: /_cron/.*
script: monorailapp.app
login: admin
inbound_services:
- mail
- mail_bounce
- warmup
includes:
- gae_ts_mon