blob: d962dda6bd3b68932996fbbe59f89174f22a112c [file] [log] [blame]
// Copyright 2016 Google Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
syntax = "proto3";
package google.appengine.v1;
import "google/api/annotations.proto";
import "google/protobuf/duration.proto";
option go_package = "google.golang.org/genproto/googleapis/appengine/v1;appengine";
option java_multiple_files = true;
option java_outer_classname = "ApplicationProto";
option java_package = "com.google.appengine.v1";
// An Application resource contains the top-level configuration of an App
// Engine application.
message Application {
// Full path to the Application resource in the API.
// Example: `apps/myapp`.
//
// @OutputOnly
string name = 1;
// Identifier of the Application resource. This identifier is equivalent
// to the project ID of the Google Cloud Platform project where you want to
// deploy your application.
// Example: `myapp`.
string id = 2;
// HTTP path dispatch rules for requests to the application that do not
// explicitly target a service or version. Rules are order-dependent.
//
// @OutputOnly
repeated UrlDispatchRule dispatch_rules = 3;
// Google Apps authentication domain that controls which users can access
// this application.
//
// Defaults to open access for any Google Account.
string auth_domain = 6;
// Location from which this application will be run. Application instances
// will run out of data centers in the chosen location, which is also where
// all of the application's end user content is stored.
//
// Defaults to `us-central`.
//
// Options are:
//
// `us-central` - Central US
//
// `europe-west` - Western Europe
//
// `us-east1` - Eastern US
string location_id = 7;
// Google Cloud Storage bucket that can be used for storing files
// associated with this application. This bucket is associated with the
// application and can be used by the gcloud deployment commands.
//
// @OutputOnly
string code_bucket = 8;
// Cookie expiration policy for this application.
//
// @OutputOnly
google.protobuf.Duration default_cookie_expiration = 9;
// Hostname used to reach this application, as resolved by App Engine.
//
// @OutputOnly
string default_hostname = 11;
// Google Cloud Storage bucket that can be used by this application to store
// content.
//
// @OutputOnly
string default_bucket = 12;
}
// Rules to match an HTTP request and dispatch that request to a service.
message UrlDispatchRule {
// Domain name to match against. The wildcard "`*`" is supported if
// specified before a period: "`*.`".
//
// Defaults to matching all domains: "`*`".
string domain = 1;
// Pathname within the host. Must start with a "`/`". A
// single "`*`" can be included at the end of the path. The sum
// of the lengths of the domain and path may not exceed 100
// characters.
string path = 2;
// Resource ID of a service in this application that should
// serve the matched request. The service must already
// exist. Example: `default`.
string service = 3;
}