# YAML file necessary to deploy to App Engine Flex.
#
# To deploy, run "gcloud app deploy". You will need to sign up for an account
# and configure your local gcloud settings.
#
# As of March 2017 deployments take 4-8 minutes (to upload all files, build
# a Docker container, and provision that container onto multiple servers). Note
# that libraries will be deployed as they exist on your local filesystem, so
# ensure third party dependencies are up to date.
#
# More info: https://cloud.google.com/appengine/docs/flexible/go/quickstart
runtime: go
env: flex
