blob: 895f33e5880fdb6461283eedafc61e2e3b5b9ca2 [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.
service: api
runtime: python39
app_engine_apis: true
entrypoint: gunicorn -b :$PORT --timeout 60 --workers ${WORKERS} --threads 1 main:app
instance_class: F4_1G
automatic_scaling:
min_idle_instances: ${MIN_IDLE_INSTANCES}
max_pending_latency: ${MAX_PENDING_LATENCY}
# Note: this is interpreted by gae.py, it maps the app ID being deployed to
# values of ${...} vars.
# Reference: https://chromium.googlesource.com/infra/luci/luci-go/+/HEAD/examples/appengine/helloworld_v2/app.yaml
luci_gae_vars:
monorail-dev:
WORKERS: "1"
MIN_IDLE_INSTANCES: "1"
MAX_PENDING_LATENCY: "automatic"
monorail-staging:
WORKERS: "1"
MIN_IDLE_INSTANCES: "1"
MAX_PENDING_LATENCY: "0.2s"
monorail-prod:
WORKERS: "8"
MIN_IDLE_INSTANCES: "2"
MAX_PENDING_LATENCY: "0.2s"
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: /prpc/.*
script: main.app
secure: always
- url: /_ah/warmup
script: main.app
login: admin
inbound_services:
- warmup
includes:
- gae_ts_mon