Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
10 contributors

Users who have contributed to this file

@googleapis-publisher @jadekler @broady @jba @okdave @vchudnov-g @saicheems @zombiezen @gmlewis @mcgreevy
10038 lines (9080 sloc) 366 KB
// Copyright 2019 Google LLC.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.
// Code generated file. DO NOT EDIT.
// Package appengine provides access to the App Engine Admin API.
//
// For product documentation, see: https://cloud.google.com/appengine/docs/admin-api/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/appengine/v1"
// ...
// ctx := context.Background()
// appengineService, err := appengine.NewService(ctx)
//
// In this example, Google Application Default Credentials are used for authentication.
//
// For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials.
//
// Other authentication options
//
// By default, all available scopes (see "Constants") are used to authenticate. To restrict scopes, use option.WithScopes:
//
// appengineService, err := appengine.NewService(ctx, option.WithScopes(appengine.CloudPlatformReadOnlyScope))
//
// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
//
// appengineService, err := appengine.NewService(ctx, option.WithAPIKey("AIza..."))
//
// To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource:
//
// config := &oauth2.Config{...}
// // ...
// token, err := config.Exchange(ctx, ...)
// appengineService, err := appengine.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package appengine // import "google.golang.org/api/appengine/v1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
gensupport "google.golang.org/api/gensupport"
googleapi "google.golang.org/api/googleapi"
option "google.golang.org/api/option"
htransport "google.golang.org/api/transport/http"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
const apiId = "appengine:v1"
const apiName = "appengine"
const apiVersion = "v1"
const basePath = "https://appengine.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your applications deployed on Google App Engine
AppengineAdminScope = "https://www.googleapis.com/auth/appengine.admin"
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
// View your data across Google Cloud Platform services
CloudPlatformReadOnlyScope = "https://www.googleapis.com/auth/cloud-platform.read-only"
)
// NewService creates a new APIService.
func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/appengine.admin",
"https://www.googleapis.com/auth/cloud-platform",
"https://www.googleapis.com/auth/cloud-platform.read-only",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
client, endpoint, err := htransport.NewClient(ctx, opts...)
if err != nil {
return nil, err
}
s, err := New(client)
if err != nil {
return nil, err
}
if endpoint != "" {
s.BasePath = endpoint
}
return s, nil
}
// New creates a new APIService. It uses the provided http.Client for requests.
//
// Deprecated: please use NewService instead.
// To provide a custom HTTP client, use option.WithHTTPClient.
// If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead.
func New(client *http.Client) (*APIService, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &APIService{client: client, BasePath: basePath}
s.Apps = NewAppsService(s)
return s, nil
}
type APIService struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Apps *AppsService
}
func (s *APIService) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewAppsService(s *APIService) *AppsService {
rs := &AppsService{s: s}
rs.AuthorizedCertificates = NewAppsAuthorizedCertificatesService(s)
rs.AuthorizedDomains = NewAppsAuthorizedDomainsService(s)
rs.DomainMappings = NewAppsDomainMappingsService(s)
rs.Firewall = NewAppsFirewallService(s)
rs.Locations = NewAppsLocationsService(s)
rs.Operations = NewAppsOperationsService(s)
rs.Services = NewAppsServicesService(s)
return rs
}
type AppsService struct {
s *APIService
AuthorizedCertificates *AppsAuthorizedCertificatesService
AuthorizedDomains *AppsAuthorizedDomainsService
DomainMappings *AppsDomainMappingsService
Firewall *AppsFirewallService
Locations *AppsLocationsService
Operations *AppsOperationsService
Services *AppsServicesService
}
func NewAppsAuthorizedCertificatesService(s *APIService) *AppsAuthorizedCertificatesService {
rs := &AppsAuthorizedCertificatesService{s: s}
return rs
}
type AppsAuthorizedCertificatesService struct {
s *APIService
}
func NewAppsAuthorizedDomainsService(s *APIService) *AppsAuthorizedDomainsService {
rs := &AppsAuthorizedDomainsService{s: s}
return rs
}
type AppsAuthorizedDomainsService struct {
s *APIService
}
func NewAppsDomainMappingsService(s *APIService) *AppsDomainMappingsService {
rs := &AppsDomainMappingsService{s: s}
return rs
}
type AppsDomainMappingsService struct {
s *APIService
}
func NewAppsFirewallService(s *APIService) *AppsFirewallService {
rs := &AppsFirewallService{s: s}
rs.IngressRules = NewAppsFirewallIngressRulesService(s)
return rs
}
type AppsFirewallService struct {
s *APIService
IngressRules *AppsFirewallIngressRulesService
}
func NewAppsFirewallIngressRulesService(s *APIService) *AppsFirewallIngressRulesService {
rs := &AppsFirewallIngressRulesService{s: s}
return rs
}
type AppsFirewallIngressRulesService struct {
s *APIService
}
func NewAppsLocationsService(s *APIService) *AppsLocationsService {
rs := &AppsLocationsService{s: s}
return rs
}
type AppsLocationsService struct {
s *APIService
}
func NewAppsOperationsService(s *APIService) *AppsOperationsService {
rs := &AppsOperationsService{s: s}
return rs
}
type AppsOperationsService struct {
s *APIService
}
func NewAppsServicesService(s *APIService) *AppsServicesService {
rs := &AppsServicesService{s: s}
rs.Versions = NewAppsServicesVersionsService(s)
return rs
}
type AppsServicesService struct {
s *APIService
Versions *AppsServicesVersionsService
}
func NewAppsServicesVersionsService(s *APIService) *AppsServicesVersionsService {
rs := &AppsServicesVersionsService{s: s}
rs.Instances = NewAppsServicesVersionsInstancesService(s)
return rs
}
type AppsServicesVersionsService struct {
s *APIService
Instances *AppsServicesVersionsInstancesService
}
func NewAppsServicesVersionsInstancesService(s *APIService) *AppsServicesVersionsInstancesService {
rs := &AppsServicesVersionsInstancesService{s: s}
return rs
}
type AppsServicesVersionsInstancesService struct {
s *APIService
}
// ApiConfigHandler: Google Cloud Endpoints
// (https://cloud.google.com/appengine/docs/python/endpoints/)
// configuration for API handlers.
type ApiConfigHandler struct {
// AuthFailAction: Action to take when users access resources that
// require authentication. Defaults to redirect.
//
// Possible values:
// "AUTH_FAIL_ACTION_UNSPECIFIED" - Not specified.
// AUTH_FAIL_ACTION_REDIRECT is assumed.
// "AUTH_FAIL_ACTION_REDIRECT" - Redirects user to
// "accounts.google.com". The user is redirected back to the application
// URL after signing in or creating an account.
// "AUTH_FAIL_ACTION_UNAUTHORIZED" - Rejects request with a 401 HTTP
// status code and an error message.
AuthFailAction string `json:"authFailAction,omitempty"`
// Login: Level of login required to access this resource. Defaults to
// optional.
//
// Possible values:
// "LOGIN_UNSPECIFIED" - Not specified. LOGIN_OPTIONAL is assumed.
// "LOGIN_OPTIONAL" - Does not require that the user is signed in.
// "LOGIN_ADMIN" - If the user is not signed in, the auth_fail_action
// is taken. In addition, if the user is not an administrator for the
// application, they are given an error message regardless of
// auth_fail_action. If the user is an administrator, the handler
// proceeds.
// "LOGIN_REQUIRED" - If the user has signed in, the handler proceeds
// normally. Otherwise, the auth_fail_action is taken.
Login string `json:"login,omitempty"`
// Script: Path to the script from the application root directory.
Script string `json:"script,omitempty"`
// SecurityLevel: Security (HTTPS) enforcement for this URL.
//
// Possible values:
// "SECURE_UNSPECIFIED" - Not specified.
// "SECURE_DEFAULT" - Both HTTP and HTTPS requests with URLs that
// match the handler succeed without redirects. The application can
// examine the request to determine which protocol was used, and respond
// accordingly.
// "SECURE_NEVER" - Requests for a URL that match this handler that
// use HTTPS are automatically redirected to the HTTP equivalent URL.
// "SECURE_OPTIONAL" - Both HTTP and HTTPS requests with URLs that
// match the handler succeed without redirects. The application can
// examine the request to determine which protocol was used and respond
// accordingly.
// "SECURE_ALWAYS" - Requests for a URL that match this handler that
// do not use HTTPS are automatically redirected to the HTTPS URL with
// the same path. Query parameters are reserved for the redirect.
SecurityLevel string `json:"securityLevel,omitempty"`
// Url: URL to serve the endpoint at.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuthFailAction") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuthFailAction") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ApiConfigHandler) MarshalJSON() ([]byte, error) {
type NoMethod ApiConfigHandler
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ApiEndpointHandler: Uses Google Cloud Endpoints to handle requests.
type ApiEndpointHandler struct {
// ScriptPath: Path to the script from the application root directory.
ScriptPath string `json:"scriptPath,omitempty"`
// ForceSendFields is a list of field names (e.g. "ScriptPath") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ScriptPath") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ApiEndpointHandler) MarshalJSON() ([]byte, error) {
type NoMethod ApiEndpointHandler
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Application: An Application resource contains the top-level
// configuration of an App Engine application.
type Application struct {
// AuthDomain: Google Apps authentication domain that controls which
// users can access this application.Defaults to open access for any
// Google Account.
AuthDomain string `json:"authDomain,omitempty"`
// CodeBucket: 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
CodeBucket string `json:"codeBucket,omitempty"`
// DefaultBucket: Google Cloud Storage bucket that can be used by this
// application to store content.@OutputOnly
DefaultBucket string `json:"defaultBucket,omitempty"`
// DefaultCookieExpiration: Cookie expiration policy for this
// application.
DefaultCookieExpiration string `json:"defaultCookieExpiration,omitempty"`
// DefaultHostname: Hostname used to reach this application, as resolved
// by App Engine.@OutputOnly
DefaultHostname string `json:"defaultHostname,omitempty"`
// DispatchRules: HTTP path dispatch rules for requests to the
// application that do not explicitly target a service or version. Rules
// are order-dependent. Up to 20 dispatch rules can be supported.
DispatchRules []*UrlDispatchRule `json:"dispatchRules,omitempty"`
// FeatureSettings: The feature specific settings to be used in the
// application.
FeatureSettings *FeatureSettings `json:"featureSettings,omitempty"`
// GcrDomain: The Google Container Registry domain used for storing
// managed build docker images for this application.
GcrDomain string `json:"gcrDomain,omitempty"`
Iap *IdentityAwareProxy `json:"iap,omitempty"`
// Id: 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.
Id string `json:"id,omitempty"`
// LocationId: Location from which this application runs. Application
// instances run out of the data centers in the specified location,
// which is also where all of the application's end user content is
// stored.Defaults to us-central.View the list of supported locations
// (https://cloud.google.com/appengine/docs/locations).
LocationId string `json:"locationId,omitempty"`
// Name: Full path to the Application resource in the API. Example:
// apps/myapp.@OutputOnly
Name string `json:"name,omitempty"`
// ServingStatus: Serving status of this application.
//
// Possible values:
// "UNSPECIFIED" - Serving status is unspecified.
// "SERVING" - Application is serving.
// "USER_DISABLED" - Application has been disabled by the user.
// "SYSTEM_DISABLED" - Application has been disabled by the system.
ServingStatus string `json:"servingStatus,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AuthDomain") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuthDomain") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Application) MarshalJSON() ([]byte, error) {
type NoMethod Application
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuthorizedCertificate: An SSL certificate that a user has been
// authorized to administer. A user is authorized to administer any
// certificate that applies to one of their authorized domains.
type AuthorizedCertificate struct {
// CertificateRawData: The SSL certificate serving the
// AuthorizedCertificate resource. This must be obtained independently
// from a certificate authority.
CertificateRawData *CertificateRawData `json:"certificateRawData,omitempty"`
// DisplayName: The user-specified display name of the certificate. This
// is not guaranteed to be unique. Example: My Certificate.
DisplayName string `json:"displayName,omitempty"`
// DomainMappingsCount: Aggregate count of the domain mappings with this
// certificate mapped. This count includes domain mappings on
// applications for which the user does not have VIEWER permissions.Only
// returned by GET or LIST requests when specifically requested by the
// view=FULL_CERTIFICATE option.@OutputOnly
DomainMappingsCount int64 `json:"domainMappingsCount,omitempty"`
// DomainNames: Topmost applicable domains of this certificate. This
// certificate applies to these domains and their subdomains. Example:
// example.com.@OutputOnly
DomainNames []string `json:"domainNames,omitempty"`
// ExpireTime: The time when this certificate expires. To update the
// renewal time on this certificate, upload an SSL certificate with a
// different expiration time using
// AuthorizedCertificates.UpdateAuthorizedCertificate.@OutputOnly
ExpireTime string `json:"expireTime,omitempty"`
// Id: Relative name of the certificate. This is a unique value
// autogenerated on AuthorizedCertificate resource creation. Example:
// 12345.@OutputOnly
Id string `json:"id,omitempty"`
// ManagedCertificate: Only applicable if this certificate is managed by
// App Engine. Managed certificates are tied to the lifecycle of a
// DomainMapping and cannot be updated or deleted via the
// AuthorizedCertificates API. If this certificate is manually
// administered by the user, this field will be empty.@OutputOnly
ManagedCertificate *ManagedCertificate `json:"managedCertificate,omitempty"`
// Name: Full path to the AuthorizedCertificate resource in the API.
// Example: apps/myapp/authorizedCertificates/12345.@OutputOnly
Name string `json:"name,omitempty"`
// VisibleDomainMappings: The full paths to user visible Domain Mapping
// resources that have this certificate mapped. Example:
// apps/myapp/domainMappings/example.com.This may not represent the full
// list of mapped domain mappings if the user does not have VIEWER
// permissions on all of the applications that have this certificate
// mapped. See domain_mappings_count for a complete count.Only returned
// by GET or LIST requests when specifically requested by the
// view=FULL_CERTIFICATE option.@OutputOnly
VisibleDomainMappings []string `json:"visibleDomainMappings,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CertificateRawData")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CertificateRawData") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AuthorizedCertificate) MarshalJSON() ([]byte, error) {
type NoMethod AuthorizedCertificate
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuthorizedDomain: A domain that a user has been authorized to
// administer. To authorize use of a domain, verify ownership via
// Webmaster Central
// (https://www.google.com/webmasters/verification/home).
type AuthorizedDomain struct {
// Id: Fully qualified domain name of the domain authorized for use.
// Example: example.com.
Id string `json:"id,omitempty"`
// Name: Full path to the AuthorizedDomain resource in the API. Example:
// apps/myapp/authorizedDomains/example.com.@OutputOnly
Name string `json:"name,omitempty"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AuthorizedDomain) MarshalJSON() ([]byte, error) {
type NoMethod AuthorizedDomain
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AutomaticScaling: Automatic scaling is based on request rate,
// response latencies, and other application metrics.
type AutomaticScaling struct {
// CoolDownPeriod: The time period that the Autoscaler
// (https://cloud.google.com/compute/docs/autoscaler/) should wait
// before it starts collecting information from a new instance. This
// prevents the autoscaler from collecting information when the instance
// is initializing, during which the collected usage would not be
// reliable. Only applicable in the App Engine flexible environment.
CoolDownPeriod string `json:"coolDownPeriod,omitempty"`
// CpuUtilization: Target scaling by CPU usage.
CpuUtilization *CpuUtilization `json:"cpuUtilization,omitempty"`
// DiskUtilization: Target scaling by disk usage.
DiskUtilization *DiskUtilization `json:"diskUtilization,omitempty"`
// MaxConcurrentRequests: Number of concurrent requests an automatic
// scaling instance can accept before the scheduler spawns a new
// instance.Defaults to a runtime-specific value.
MaxConcurrentRequests int64 `json:"maxConcurrentRequests,omitempty"`
// MaxIdleInstances: Maximum number of idle instances that should be
// maintained for this version.
MaxIdleInstances int64 `json:"maxIdleInstances,omitempty"`
// MaxPendingLatency: Maximum amount of time that a request should wait
// in the pending queue before starting a new instance to handle it.
MaxPendingLatency string `json:"maxPendingLatency,omitempty"`
// MaxTotalInstances: Maximum number of instances that should be started
// to handle requests for this version.
MaxTotalInstances int64 `json:"maxTotalInstances,omitempty"`
// MinIdleInstances: Minimum number of idle instances that should be
// maintained for this version. Only applicable for the default version
// of a service.
MinIdleInstances int64 `json:"minIdleInstances,omitempty"`
// MinPendingLatency: Minimum amount of time a request should wait in
// the pending queue before starting a new instance to handle it.
MinPendingLatency string `json:"minPendingLatency,omitempty"`
// MinTotalInstances: Minimum number of running instances that should be
// maintained for this version.
MinTotalInstances int64 `json:"minTotalInstances,omitempty"`
// NetworkUtilization: Target scaling by network usage.
NetworkUtilization *NetworkUtilization `json:"networkUtilization,omitempty"`
// RequestUtilization: Target scaling by request utilization.
RequestUtilization *RequestUtilization `json:"requestUtilization,omitempty"`
// StandardSchedulerSettings: Scheduler settings for standard
// environment.
StandardSchedulerSettings *StandardSchedulerSettings `json:"standardSchedulerSettings,omitempty"`
// ForceSendFields is a list of field names (e.g. "CoolDownPeriod") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CoolDownPeriod") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AutomaticScaling) MarshalJSON() ([]byte, error) {
type NoMethod AutomaticScaling
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BasicScaling: A service with basic scaling will create an instance
// when the application receives a request. The instance will be turned
// down when the app becomes idle. Basic scaling is ideal for work that
// is intermittent or driven by user activity.
type BasicScaling struct {
// IdleTimeout: Duration of time after the last request that an instance
// must wait before the instance is shut down.
IdleTimeout string `json:"idleTimeout,omitempty"`
// MaxInstances: Maximum number of instances to create for this version.
MaxInstances int64 `json:"maxInstances,omitempty"`
// ForceSendFields is a list of field names (e.g. "IdleTimeout") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IdleTimeout") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BasicScaling) MarshalJSON() ([]byte, error) {
type NoMethod BasicScaling
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BatchUpdateIngressRulesRequest: Request message for
// Firewall.BatchUpdateIngressRules.
type BatchUpdateIngressRulesRequest struct {
// IngressRules: A list of FirewallRules to replace the existing set.
IngressRules []*FirewallRule `json:"ingressRules,omitempty"`
// ForceSendFields is a list of field names (e.g. "IngressRules") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IngressRules") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BatchUpdateIngressRulesRequest) MarshalJSON() ([]byte, error) {
type NoMethod BatchUpdateIngressRulesRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// BatchUpdateIngressRulesResponse: Response message for
// Firewall.UpdateAllIngressRules.
type BatchUpdateIngressRulesResponse struct {
// IngressRules: The full list of ingress FirewallRules for this
// application.
IngressRules []*FirewallRule `json:"ingressRules,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "IngressRules") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IngressRules") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *BatchUpdateIngressRulesResponse) MarshalJSON() ([]byte, error) {
type NoMethod BatchUpdateIngressRulesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CertificateRawData: An SSL certificate obtained from a certificate
// authority.
type CertificateRawData struct {
// PrivateKey: Unencrypted PEM encoded RSA private key. This field is
// set once on certificate creation and then encrypted. The key size
// must be 2048 bits or fewer. Must include the header and footer.
// Example: <pre> -----BEGIN RSA PRIVATE KEY-----
// <unencrypted_key_value> -----END RSA PRIVATE KEY----- </pre>
// @InputOnly
PrivateKey string `json:"privateKey,omitempty"`
// PublicCertificate: PEM encoded x.509 public key certificate. This
// field is set once on certificate creation. Must include the header
// and footer. Example: <pre> -----BEGIN CERTIFICATE-----
// <certificate_value> -----END CERTIFICATE----- </pre>
PublicCertificate string `json:"publicCertificate,omitempty"`
// ForceSendFields is a list of field names (e.g. "PrivateKey") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "PrivateKey") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CertificateRawData) MarshalJSON() ([]byte, error) {
type NoMethod CertificateRawData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CloudBuildOptions: Options for the build operations performed as a
// part of the version deployment. Only applicable for App Engine
// flexible environment when creating a version using source code
// directly.
type CloudBuildOptions struct {
// AppYamlPath: Path to the yaml file used in deployment, used to
// determine runtime configuration details.Required for flexible
// environment builds.See
// https://cloud.google.com/appengine/docs/standard/python/config/appref
// for more details.
AppYamlPath string `json:"appYamlPath,omitempty"`
// CloudBuildTimeout: The Cloud Build timeout used as part of any
// dependent builds performed by version creation. Defaults to 10
// minutes.
CloudBuildTimeout string `json:"cloudBuildTimeout,omitempty"`
// ForceSendFields is a list of field names (e.g. "AppYamlPath") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AppYamlPath") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CloudBuildOptions) MarshalJSON() ([]byte, error) {
type NoMethod CloudBuildOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ContainerInfo: Docker image that is used to create a container and
// start a VM instance for the version that you deploy. Only applicable
// for instances running in the App Engine flexible environment.
type ContainerInfo struct {
// Image: URI to the hosted container image in Google Container
// Registry. The URI must be fully qualified and include a tag or
// digest. Examples: "gcr.io/my-project/image:tag" or
// "gcr.io/my-project/image@digest"
Image string `json:"image,omitempty"`
// ForceSendFields is a list of field names (e.g. "Image") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Image") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ContainerInfo) MarshalJSON() ([]byte, error) {
type NoMethod ContainerInfo
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CpuUtilization: Target scaling by CPU usage.
type CpuUtilization struct {
// AggregationWindowLength: Period of time over which CPU utilization is
// calculated.
AggregationWindowLength string `json:"aggregationWindowLength,omitempty"`
// TargetUtilization: Target CPU utilization ratio to maintain when
// scaling. Must be between 0 and 1.
TargetUtilization float64 `json:"targetUtilization,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "AggregationWindowLength") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AggregationWindowLength")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *CpuUtilization) MarshalJSON() ([]byte, error) {
type NoMethod CpuUtilization
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *CpuUtilization) UnmarshalJSON(data []byte) error {
type NoMethod CpuUtilization
var s1 struct {
TargetUtilization gensupport.JSONFloat64 `json:"targetUtilization"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.TargetUtilization = float64(s1.TargetUtilization)
return nil
}
// CreateVersionMetadataV1: Metadata for the given
// google.longrunning.Operation during a
// google.appengine.v1.CreateVersionRequest.
type CreateVersionMetadataV1 struct {
// CloudBuildId: The Cloud Build ID if one was created as part of the
// version create. @OutputOnly
CloudBuildId string `json:"cloudBuildId,omitempty"`
// ForceSendFields is a list of field names (e.g. "CloudBuildId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CloudBuildId") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CreateVersionMetadataV1) MarshalJSON() ([]byte, error) {
type NoMethod CreateVersionMetadataV1
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreateVersionMetadataV1Alpha: Metadata for the given
// google.longrunning.Operation during a
// google.appengine.v1alpha.CreateVersionRequest.
type CreateVersionMetadataV1Alpha struct {
// CloudBuildId: The Cloud Build ID if one was created as part of the
// version create. @OutputOnly
CloudBuildId string `json:"cloudBuildId,omitempty"`
// ForceSendFields is a list of field names (e.g. "CloudBuildId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CloudBuildId") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CreateVersionMetadataV1Alpha) MarshalJSON() ([]byte, error) {
type NoMethod CreateVersionMetadataV1Alpha
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// CreateVersionMetadataV1Beta: Metadata for the given
// google.longrunning.Operation during a
// google.appengine.v1beta.CreateVersionRequest.
type CreateVersionMetadataV1Beta struct {
// CloudBuildId: The Cloud Build ID if one was created as part of the
// version create. @OutputOnly
CloudBuildId string `json:"cloudBuildId,omitempty"`
// ForceSendFields is a list of field names (e.g. "CloudBuildId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CloudBuildId") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *CreateVersionMetadataV1Beta) MarshalJSON() ([]byte, error) {
type NoMethod CreateVersionMetadataV1Beta
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DebugInstanceRequest: Request message for Instances.DebugInstance.
type DebugInstanceRequest struct {
// SshKey: Public SSH key to add to the instance.
// Examples:
// [USERNAME]:ssh-rsa [KEY_VALUE] [USERNAME]
// [USERNAME]:ssh-rsa [KEY_VALUE] google-ssh
// {"userName":"[USERNAME]","expireOn":"[EXPIRE_TIME]"}For more
// information, see Adding and Removing SSH Keys
// (https://cloud.google.com/compute/docs/instances/adding-removing-ssh-k
// eys).
SshKey string `json:"sshKey,omitempty"`
// ForceSendFields is a list of field names (e.g. "SshKey") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "SshKey") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DebugInstanceRequest) MarshalJSON() ([]byte, error) {
type NoMethod DebugInstanceRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Deployment: Code and application artifacts used to deploy a version
// to App Engine.
type Deployment struct {
// CloudBuildOptions: Options for any Google Cloud Build builds created
// as a part of this deployment.These options will only be used if a new
// build is created, such as when deploying to the App Engine flexible
// environment using files or zip.
CloudBuildOptions *CloudBuildOptions `json:"cloudBuildOptions,omitempty"`
// Container: The Docker image for the container that runs the version.
// Only applicable for instances running in the App Engine flexible
// environment.
Container *ContainerInfo `json:"container,omitempty"`
// Files: Manifest of the files stored in Google Cloud Storage that are
// included as part of this version. All files must be readable using
// the credentials supplied with this call.
Files map[string]FileInfo `json:"files,omitempty"`
// Zip: The zip file for this deployment, if this is a zip deployment.
Zip *ZipInfo `json:"zip,omitempty"`
// ForceSendFields is a list of field names (e.g. "CloudBuildOptions")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CloudBuildOptions") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Deployment) MarshalJSON() ([]byte, error) {
type NoMethod Deployment
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DiskUtilization: Target scaling by disk usage. Only applicable in the
// App Engine flexible environment.
type DiskUtilization struct {
// TargetReadBytesPerSecond: Target bytes read per second.
TargetReadBytesPerSecond int64 `json:"targetReadBytesPerSecond,omitempty"`
// TargetReadOpsPerSecond: Target ops read per seconds.
TargetReadOpsPerSecond int64 `json:"targetReadOpsPerSecond,omitempty"`
// TargetWriteBytesPerSecond: Target bytes written per second.
TargetWriteBytesPerSecond int64 `json:"targetWriteBytesPerSecond,omitempty"`
// TargetWriteOpsPerSecond: Target ops written per second.
TargetWriteOpsPerSecond int64 `json:"targetWriteOpsPerSecond,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "TargetReadBytesPerSecond") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetReadBytesPerSecond")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *DiskUtilization) MarshalJSON() ([]byte, error) {
type NoMethod DiskUtilization
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DomainMapping: A domain serving an App Engine application.
type DomainMapping struct {
// Id: Relative name of the domain serving the application. Example:
// example.com.
Id string `json:"id,omitempty"`
// Name: Full path to the DomainMapping resource in the API. Example:
// apps/myapp/domainMapping/example.com.@OutputOnly
Name string `json:"name,omitempty"`
// ResourceRecords: The resource records required to configure this
// domain mapping. These records must be added to the domain's DNS
// configuration in order to serve the application via this domain
// mapping.@OutputOnly
ResourceRecords []*ResourceRecord `json:"resourceRecords,omitempty"`
// SslSettings: SSL configuration for this domain. If unconfigured, this
// domain will not serve with SSL.
SslSettings *SslSettings `json:"sslSettings,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *DomainMapping) MarshalJSON() ([]byte, error) {
type NoMethod DomainMapping
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Empty: A generic empty message that you can re-use to avoid defining
// duplicated empty messages in your APIs. A typical example is to use
// it as the request or the response type of an API method. For
// instance:
// service Foo {
// rpc Bar(google.protobuf.Empty) returns
// (google.protobuf.Empty);
// }
// The JSON representation for Empty is empty JSON object {}.
type Empty struct {
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
}
// EndpointsApiService: Cloud Endpoints
// (https://cloud.google.com/endpoints) configuration. The Endpoints API
// Service provides tooling for serving Open API and gRPC endpoints via
// an NGINX proxy. Only valid for App Engine Flexible environment
// deployments.The fields here refer to the name and configuration ID of
// a "service" resource in the Service Management API
// (https://cloud.google.com/service-management/overview).
type EndpointsApiService struct {
// ConfigId: Endpoints service configuration ID as specified by the
// Service Management API. For example "2016-09-19r1".By default, the
// rollout strategy for Endpoints is RolloutStrategy.FIXED. This means
// that Endpoints starts up with a particular configuration ID. When a
// new configuration is rolled out, Endpoints must be given the new
// configuration ID. The config_id field is used to give the
// configuration ID and is required in this case.Endpoints also has a
// rollout strategy called RolloutStrategy.MANAGED. When using this,
// Endpoints fetches the latest configuration and does not need the
// configuration ID. In this case, config_id must be omitted.
ConfigId string `json:"configId,omitempty"`
// DisableTraceSampling: Enable or disable trace sampling. By default,
// this is set to false for enabled.
DisableTraceSampling bool `json:"disableTraceSampling,omitempty"`
// Name: Endpoints service name which is the name of the "service"
// resource in the Service Management API. For example
// "myapi.endpoints.myproject.cloud.goog"
Name string `json:"name,omitempty"`
// RolloutStrategy: Endpoints rollout strategy. If FIXED, config_id must
// be specified. If MANAGED, config_id must be omitted.
//
// Possible values:
// "UNSPECIFIED_ROLLOUT_STRATEGY" - Not specified. Defaults to FIXED.
// "FIXED" - Endpoints service configuration ID will be fixed to the
// configuration ID specified by config_id.
// "MANAGED" - Endpoints service configuration ID will be updated with
// each rollout.
RolloutStrategy string `json:"rolloutStrategy,omitempty"`
// ForceSendFields is a list of field names (e.g. "ConfigId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ConfigId") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *EndpointsApiService) MarshalJSON() ([]byte, error) {
type NoMethod EndpointsApiService
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Entrypoint: The entrypoint for the application.
type Entrypoint struct {
// Shell: The format should be a shell command that can be fed to bash
// -c.
Shell string `json:"shell,omitempty"`
// ForceSendFields is a list of field names (e.g. "Shell") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Shell") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Entrypoint) MarshalJSON() ([]byte, error) {
type NoMethod Entrypoint
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ErrorHandler: Custom static error page to be served when an error
// occurs.
type ErrorHandler struct {
// ErrorCode: Error condition this handler applies to.
//
// Possible values:
// "ERROR_CODE_UNSPECIFIED" - Not specified. ERROR_CODE_DEFAULT is
// assumed.
// "ERROR_CODE_DEFAULT" - All other error types.
// "ERROR_CODE_OVER_QUOTA" - Application has exceeded a resource
// quota.
// "ERROR_CODE_DOS_API_DENIAL" - Client blocked by the application's
// Denial of Service protection configuration.
// "ERROR_CODE_TIMEOUT" - Deadline reached before the application
// responds.
ErrorCode string `json:"errorCode,omitempty"`
// MimeType: MIME type of file. Defaults to text/html.
MimeType string `json:"mimeType,omitempty"`
// StaticFile: Static file content to be served for this error.
StaticFile string `json:"staticFile,omitempty"`
// ForceSendFields is a list of field names (e.g. "ErrorCode") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ErrorCode") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ErrorHandler) MarshalJSON() ([]byte, error) {
type NoMethod ErrorHandler
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FeatureSettings: The feature specific settings to be used in the
// application. These define behaviors that are user configurable.
type FeatureSettings struct {
// SplitHealthChecks: Boolean value indicating if split health checks
// should be used instead of the legacy health checks. At an app.yaml
// level, this means defaulting to 'readiness_check' and
// 'liveness_check' values instead of 'health_check' ones. Once the
// legacy 'health_check' behavior is deprecated, and this value is
// always true, this setting can be removed.
SplitHealthChecks bool `json:"splitHealthChecks,omitempty"`
// UseContainerOptimizedOs: If true, use Container-Optimized OS
// (https://cloud.google.com/container-optimized-os/) base image for
// VMs, rather than a base Debian image.
UseContainerOptimizedOs bool `json:"useContainerOptimizedOs,omitempty"`
// ForceSendFields is a list of field names (e.g. "SplitHealthChecks")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "SplitHealthChecks") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *FeatureSettings) MarshalJSON() ([]byte, error) {
type NoMethod FeatureSettings
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FileInfo: Single source file that is part of the version to be
// deployed. Each source file that is deployed must be specified
// separately.
type FileInfo struct {
// MimeType: The MIME type of the file.Defaults to the value from Google
// Cloud Storage.
MimeType string `json:"mimeType,omitempty"`
// Sha1Sum: The SHA1 hash of the file, in hex.
Sha1Sum string `json:"sha1Sum,omitempty"`
// SourceUrl: URL source to use to fetch this file. Must be a URL to a
// resource in Google Cloud Storage in the form
// 'http(s)://storage.googleapis.com/<bucket>/<object>'.
SourceUrl string `json:"sourceUrl,omitempty"`
// ForceSendFields is a list of field names (e.g. "MimeType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "MimeType") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FileInfo) MarshalJSON() ([]byte, error) {
type NoMethod FileInfo
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// FirewallRule: A single firewall rule that is evaluated against
// incoming traffic and provides an action to take on matched requests.
type FirewallRule struct {
// Action: The action to take on matched requests.
//
// Possible values:
// "UNSPECIFIED_ACTION"
// "ALLOW" - Matching requests are allowed.
// "DENY" - Matching requests are denied.
Action string `json:"action,omitempty"`
// Description: An optional string description of this rule. This field
// has a maximum length of 100 characters.
Description string `json:"description,omitempty"`
// Priority: A positive integer between 1, Int32.MaxValue-1 that defines
// the order of rule evaluation. Rules with the lowest priority are
// evaluated first.A default rule at priority Int32.MaxValue matches all
// IPv4 and IPv6 traffic when no previous rule matches. Only the action
// of this rule can be modified by the user.
Priority int64 `json:"priority,omitempty"`
// SourceRange: IP address or range, defined using CIDR notation, of
// requests that this rule applies to. You can use the wildcard
// character "*" to match all IPs equivalent to "0/0" and "::/0"
// together. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001:db8::/32
// or 2001:0db8:0000:0042:0000:8a2e:0370:7334.<p>Truncation will be
// silently performed on addresses which are not properly truncated. For
// example, 1.2.3.4/24 is accepted as the same address as 1.2.3.0/24.
// Similarly, for IPv6, 2001:db8::1/32 is accepted as the same address
// as 2001:db8::/32.
SourceRange string `json:"sourceRange,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Action") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Action") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *FirewallRule) MarshalJSON() ([]byte, error) {
type NoMethod FirewallRule
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// HealthCheck: Health checking configuration for VM instances.
// Unhealthy instances are killed and replaced with new instances. Only
// applicable for instances in App Engine flexible environment.
type HealthCheck struct {
// CheckInterval: Interval between health checks.
CheckInterval string `json:"checkInterval,omitempty"`
// DisableHealthCheck: Whether to explicitly disable health checks for
// this instance.
DisableHealthCheck bool `json:"disableHealthCheck,omitempty"`
// HealthyThreshold: Number of consecutive successful health checks
// required before receiving traffic.
HealthyThreshold int64 `json:"healthyThreshold,omitempty"`
// Host: Host header to send when performing an HTTP health check.
// Example: "myapp.appspot.com"
Host string `json:"host,omitempty"`
// RestartThreshold: Number of consecutive failed health checks required
// before an instance is restarted.
RestartThreshold int64 `json:"restartThreshold,omitempty"`
// Timeout: Time before the health check is considered failed.
Timeout string `json:"timeout,omitempty"`
// UnhealthyThreshold: Number of consecutive failed health checks
// required before removing traffic.
UnhealthyThreshold int64 `json:"unhealthyThreshold,omitempty"`
// ForceSendFields is a list of field names (e.g. "CheckInterval") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CheckInterval") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *HealthCheck) MarshalJSON() ([]byte, error) {
type NoMethod HealthCheck
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// IdentityAwareProxy: Identity-Aware Proxy
type IdentityAwareProxy struct {
// Enabled: Whether the serving infrastructure will authenticate and
// authorize all incoming requests.If true, the oauth2_client_id and
// oauth2_client_secret fields must be non-empty.
Enabled bool `json:"enabled,omitempty"`
// Oauth2ClientId: OAuth2 client ID to use for the authentication flow.
Oauth2ClientId string `json:"oauth2ClientId,omitempty"`
// Oauth2ClientSecret: OAuth2 client secret to use for the
// authentication flow.For security reasons, this value cannot be
// retrieved via the API. Instead, the SHA-256 hash of the value is
// returned in the oauth2_client_secret_sha256 field.@InputOnly
Oauth2ClientSecret string `json:"oauth2ClientSecret,omitempty"`
// Oauth2ClientSecretSha256: Hex-encoded SHA-256 hash of the client
// secret.@OutputOnly
Oauth2ClientSecretSha256 string `json:"oauth2ClientSecretSha256,omitempty"`
// ForceSendFields is a list of field names (e.g. "Enabled") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Enabled") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *IdentityAwareProxy) MarshalJSON() ([]byte, error) {
type NoMethod IdentityAwareProxy
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Instance: An Instance resource is the computing unit that App Engine
// uses to automatically scale an application.
type Instance struct {
// AppEngineRelease: App Engine release this instance is running
// on.@OutputOnly
AppEngineRelease string `json:"appEngineRelease,omitempty"`
// Availability: Availability of the instance.@OutputOnly
//
// Possible values:
// "UNSPECIFIED"
// "RESIDENT"
// "DYNAMIC"
Availability string `json:"availability,omitempty"`
// AverageLatency: Average latency (ms) over the last minute.@OutputOnly
AverageLatency int64 `json:"averageLatency,omitempty"`
// Errors: Number of errors since this instance was started.@OutputOnly
Errors int64 `json:"errors,omitempty"`
// Id: Relative name of the instance within the version. Example:
// instance-1.@OutputOnly
Id string `json:"id,omitempty"`
// MemoryUsage: Total memory in use (bytes).@OutputOnly
MemoryUsage int64 `json:"memoryUsage,omitempty,string"`
// Name: Full path to the Instance resource in the API. Example:
// apps/myapp/services/default/versions/v1/instances/instance-1.@OutputOn
// ly
Name string `json:"name,omitempty"`
// Qps: Average queries per second (QPS) over the last
// minute.@OutputOnly
Qps float64 `json:"qps,omitempty"`
// Requests: Number of requests since this instance was
// started.@OutputOnly
Requests int64 `json:"requests,omitempty"`
// StartTime: Time that this instance was started.@OutputOnly
StartTime string `json:"startTime,omitempty"`
// VmDebugEnabled: Whether this instance is in debug mode. Only
// applicable for instances in App Engine flexible
// environment.@OutputOnly
VmDebugEnabled bool `json:"vmDebugEnabled,omitempty"`
// VmId: Virtual machine ID of this instance. Only applicable for
// instances in App Engine flexible environment.@OutputOnly
VmId string `json:"vmId,omitempty"`
// VmIp: The IP address of this instance. Only applicable for instances
// in App Engine flexible environment.@OutputOnly
VmIp string `json:"vmIp,omitempty"`
// VmName: Name of the virtual machine where this instance lives. Only
// applicable for instances in App Engine flexible
// environment.@OutputOnly
VmName string `json:"vmName,omitempty"`
// VmStatus: Status of the virtual machine where this instance lives.
// Only applicable for instances in App Engine flexible
// environment.@OutputOnly
VmStatus string `json:"vmStatus,omitempty"`
// VmZoneName: Zone where the virtual machine is located. Only
// applicable for instances in App Engine flexible
// environment.@OutputOnly
VmZoneName string `json:"vmZoneName,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AppEngineRelease") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AppEngineRelease") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Instance) MarshalJSON() ([]byte, error) {
type NoMethod Instance
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *Instance) UnmarshalJSON(data []byte) error {
type NoMethod Instance
var s1 struct {
Qps gensupport.JSONFloat64 `json:"qps"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.Qps = float64(s1.Qps)
return nil
}
// Library: Third-party Python runtime library that is required by the
// application.
type Library struct {
// Name: Name of the library. Example: "django".
Name string `json:"name,omitempty"`
// Version: Version of the library to select, or "latest".
Version string `json:"version,omitempty"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Library) MarshalJSON() ([]byte, error) {
type NoMethod Library
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListAuthorizedCertificatesResponse: Response message for
// AuthorizedCertificates.ListAuthorizedCertificates.
type ListAuthorizedCertificatesResponse struct {
// Certificates: The SSL certificates the user is authorized to
// administer.
Certificates []*AuthorizedCertificate `json:"certificates,omitempty"`
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Certificates") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Certificates") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListAuthorizedCertificatesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListAuthorizedCertificatesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListAuthorizedDomainsResponse: Response message for
// AuthorizedDomains.ListAuthorizedDomains.
type ListAuthorizedDomainsResponse struct {
// Domains: The authorized domains belonging to the user.
Domains []*AuthorizedDomain `json:"domains,omitempty"`
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Domains") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Domains") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListAuthorizedDomainsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListAuthorizedDomainsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListDomainMappingsResponse: Response message for
// DomainMappings.ListDomainMappings.
type ListDomainMappingsResponse struct {
// DomainMappings: The domain mappings for the application.
DomainMappings []*DomainMapping `json:"domainMappings,omitempty"`
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DomainMappings") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DomainMappings") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ListDomainMappingsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListDomainMappingsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListIngressRulesResponse: Response message for
// Firewall.ListIngressRules.
type ListIngressRulesResponse struct {
// IngressRules: The ingress FirewallRules for this application.
IngressRules []*FirewallRule `json:"ingressRules,omitempty"`
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "IngressRules") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IngressRules") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListIngressRulesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListIngressRulesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListInstancesResponse: Response message for Instances.ListInstances.
type ListInstancesResponse struct {
// Instances: The instances belonging to the requested version.
Instances []*Instance `json:"instances,omitempty"`
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Instances") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Instances") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListInstancesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListInstancesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListLocationsResponse: The response message for
// Locations.ListLocations.
type ListLocationsResponse struct {
// Locations: A list of locations that matches the specified filter in
// the request.
Locations []*Location `json:"locations,omitempty"`
// NextPageToken: The standard List next-page token.
NextPageToken string `json:"nextPageToken,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Locations") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Locations") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListLocationsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListOperationsResponse: The response message for
// Operations.ListOperations.
type ListOperationsResponse struct {
// NextPageToken: The standard List next-page token.
NextPageToken string `json:"nextPageToken,omitempty"`
// Operations: A list of operations that matches the specified filter in
// the request.
Operations []*Operation `json:"operations,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListOperationsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListServicesResponse: Response message for Services.ListServices.
type ListServicesResponse struct {
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// Services: The services belonging to the requested application.
Services []*Service `json:"services,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListServicesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListServicesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListVersionsResponse: Response message for Versions.ListVersions.
type ListVersionsResponse struct {
// NextPageToken: Continuation token for fetching the next page of
// results.
NextPageToken string `json:"nextPageToken,omitempty"`
// Versions: The versions belonging to the requested service.
Versions []*Version `json:"versions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "NextPageToken") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "NextPageToken") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ListVersionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListVersionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// LivenessCheck: Health checking configuration for VM instances.
// Unhealthy instances are killed and replaced with new instances.
type LivenessCheck struct {
// CheckInterval: Interval between health checks.
CheckInterval string `json:"checkInterval,omitempty"`
// FailureThreshold: Number of consecutive failed checks required before
// considering the VM unhealthy.
FailureThreshold int64 `json:"failureThreshold,omitempty"`
// Host: Host header to send when performing a HTTP Liveness check.
// Example: "myapp.appspot.com"
Host string `json:"host,omitempty"`
// InitialDelay: The initial delay before starting to execute the
// checks.
InitialDelay string `json:"initialDelay,omitempty"`
// Path: The request path.
Path string `json:"path,omitempty"`
// SuccessThreshold: Number of consecutive successful checks required
// before considering the VM healthy.
SuccessThreshold int64 `json:"successThreshold,omitempty"`
// Timeout: Time before the check is considered failed.
Timeout string `json:"timeout,omitempty"`
// ForceSendFields is a list of field names (e.g. "CheckInterval") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CheckInterval") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *LivenessCheck) MarshalJSON() ([]byte, error) {
type NoMethod LivenessCheck
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Location: A resource that represents Google Cloud Platform location.
type Location struct {
// DisplayName: The friendly name for this location, typically a nearby
// city name. For example, "Tokyo".
DisplayName string `json:"displayName,omitempty"`
// Labels: Cross-service attributes for the location. For
// example
// {"cloud.googleapis.com/region": "us-east1"}
//
Labels map[string]string `json:"labels,omitempty"`
// LocationId: The canonical id for this location. For example:
// "us-east1".
LocationId string `json:"locationId,omitempty"`
// Metadata: Service-specific metadata. For example the available
// capacity at the given location.
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
// Name: Resource name for the location, which may vary between
// implementations. For example:
// "projects/example-project/locations/us-east1"
Name string `json:"name,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "DisplayName") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DisplayName") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Location) MarshalJSON() ([]byte, error) {
type NoMethod Location
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// LocationMetadata: Metadata for the given
// google.cloud.location.Location.
type LocationMetadata struct {
// FlexibleEnvironmentAvailable: App Engine flexible environment is
// available in the given location.@OutputOnly
FlexibleEnvironmentAvailable bool `json:"flexibleEnvironmentAvailable,omitempty"`
// StandardEnvironmentAvailable: App Engine standard environment is
// available in the given location.@OutputOnly
StandardEnvironmentAvailable bool `json:"standardEnvironmentAvailable,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "FlexibleEnvironmentAvailable") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "FlexibleEnvironmentAvailable") to include in API requests with the
// JSON null value. By default, fields with empty values are omitted
// from API requests. However, any field with an empty value appearing
// in NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *LocationMetadata) MarshalJSON() ([]byte, error) {
type NoMethod LocationMetadata
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ManagedCertificate: A certificate managed by App Engine.
type ManagedCertificate struct {
// LastRenewalTime: Time at which the certificate was last renewed. The
// renewal process is fully managed. Certificate renewal will
// automatically occur before the certificate expires. Renewal errors
// can be tracked via ManagementStatus.@OutputOnly
LastRenewalTime string `json:"lastRenewalTime,omitempty"`
// Status: Status of certificate management. Refers to the most recent
// certificate acquisition or renewal attempt.@OutputOnly
//
// Possible values:
// "MANAGEMENT_STATUS_UNSPECIFIED"
// "OK" - Certificate was successfully obtained and inserted into the
// serving system.
// "PENDING" - Certificate is under active attempts to acquire or
// renew.
// "FAILED_RETRYING_NOT_VISIBLE" - Most recent renewal failed due to
// an invalid DNS setup and will be retried. Renewal attempts will
// continue to fail until the certificate domain's DNS configuration is
// fixed. The last successfully provisioned certificate may still be
// serving.
// "FAILED_PERMANENT" - All renewal attempts have been exhausted,
// likely due to an invalid DNS setup.
// "FAILED_RETRYING_CAA_FORBIDDEN" - Most recent renewal failed due to
// an explicit CAA record that does not include the in-use CA, Let's
// Encrypt. Renewals will continue to fail until the CAA is
// reconfigured. The last successfully provisioned certificate may still
// be serving.
// "FAILED_RETRYING_CAA_CHECKING" - Most recent renewal failed due to
// a CAA retrieval failure. This means that the domain's DNS provider
// does not properly handle CAA records, failing requests for CAA
// records when no CAA records are defined. Renewals will continue to
// fail until the DNS provider is changed or a CAA record is added for
// the given domain. The last successfully provisioned certificate may
// still be serving.
Status string `json:"status,omitempty"`
// ForceSendFields is a list of field names (e.g. "LastRenewalTime") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "LastRenewalTime") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ManagedCertificate) MarshalJSON() ([]byte, error) {
type NoMethod ManagedCertificate
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ManualScaling: A service with manual scaling runs continuously,
// allowing you to perform complex initialization and rely on the state
// of its memory over time.
type ManualScaling struct {
// Instances: Number of instances to assign to the service at the start.
// This number can later be altered by using the Modules API
// (https://cloud.google.com/appengine/docs/python/modules/functions)
// set_num_instances() function.
Instances int64 `json:"instances,omitempty"`
// ForceSendFields is a list of field names (e.g. "Instances") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Instances") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ManualScaling) MarshalJSON() ([]byte, error) {
type NoMethod ManualScaling
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Network: Extra network settings. Only applicable in the App Engine
// flexible environment.
type Network struct {
// ForwardedPorts: List of ports, or port pairs, to forward from the
// virtual machine to the application container. Only applicable in the
// App Engine flexible environment.
ForwardedPorts []string `json:"forwardedPorts,omitempty"`
// InstanceTag: Tag to apply to the instance during creation. Only
// applicable in the App Engine flexible environment.
InstanceTag string `json:"instanceTag,omitempty"`
// Name: Google Compute Engine network where the virtual machines are
// created. Specify the short name, not the resource path.Defaults to
// default.
Name string `json:"name,omitempty"`
// SessionAffinity: Enable session affinity. Only applicable in the App
// Engine flexible environment.
SessionAffinity bool `json:"sessionAffinity,omitempty"`
// SubnetworkName: Google Cloud Platform sub-network where the virtual
// machines are created. Specify the short name, not the resource
// path.If a subnetwork name is specified, a network name will also be
// required unless it is for the default network.
// If the network that the instance is being created in is a Legacy
// network, then the IP address is allocated from the IPv4Range.
// If the network that the instance is being created in is an auto
// Subnet Mode Network, then only network name should be specified (not
// the subnetwork_name) and the IP address is created from the
// IPCidrRange of the subnetwork that exists in that zone for that
// network.
// If the network that the instance is being created in is a custom
// Subnet Mode Network, then the subnetwork_name must be specified and
// the IP address is created from the IPCidrRange of the subnetwork.If
// specified, the subnetwork must exist in the same region as the App
// Engine flexible environment application.
SubnetworkName string `json:"subnetworkName,omitempty"`
// ForceSendFields is a list of field names (e.g. "ForwardedPorts") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ForwardedPorts") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Network) MarshalJSON() ([]byte, error) {
type NoMethod Network
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// NetworkUtilization: Target scaling by network usage. Only applicable
// in the App Engine flexible environment.
type NetworkUtilization struct {
// TargetReceivedBytesPerSecond: Target bytes received per second.
TargetReceivedBytesPerSecond int64 `json:"targetReceivedBytesPerSecond,omitempty"`
// TargetReceivedPacketsPerSecond: Target packets received per second.
TargetReceivedPacketsPerSecond int64 `json:"targetReceivedPacketsPerSecond,omitempty"`
// TargetSentBytesPerSecond: Target bytes sent per second.
TargetSentBytesPerSecond int64 `json:"targetSentBytesPerSecond,omitempty"`
// TargetSentPacketsPerSecond: Target packets sent per second.
TargetSentPacketsPerSecond int64 `json:"targetSentPacketsPerSecond,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "TargetReceivedBytesPerSecond") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g.
// "TargetReceivedBytesPerSecond") to include in API requests with the
// JSON null value. By default, fields with empty values are omitted
// from API requests. However, any field with an empty value appearing
// in NullFields will be sent to the server as null. It is an error if a
// field in this list has a non-empty value. This may be used to include
// null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *NetworkUtilization) MarshalJSON() ([]byte, error) {
type NoMethod NetworkUtilization
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Operation: This resource represents a long-running operation that is
// the result of a network API call.
type Operation struct {
// Done: If the value is false, it means the operation is still in
// progress. If true, the operation is completed, and either error or
// response is available.
Done bool `json:"done,omitempty"`
// Error: The error result of the operation in case of failure or
// cancellation.
Error *Status `json:"error,omitempty"`
// Metadata: Service-specific metadata associated with the operation. It
// typically contains progress information and common metadata such as
// create time. Some services might not provide such metadata. Any
// method that returns a long-running operation should document the
// metadata type, if any.
Metadata googleapi.RawMessage `json:"metadata,omitempty"`
// Name: The server-assigned name, which is only unique within the same
// service that originally returns it. If you use the default HTTP
// mapping, the name should be a resource name ending with
// operations/{unique_id}.
Name string `json:"name,omitempty"`
// Response: The normal response of the operation in case of success. If
// the original method returns no data on success, such as Delete, the
// response is google.protobuf.Empty. If the original method is standard
// Get/Create/Update, the response should be the resource. For other
// methods, the response should have the type XxxResponse, where Xxx is
// the original method name. For example, if the original method name is
// TakeSnapshot(), the inferred response type is TakeSnapshotResponse.
Response googleapi.RawMessage `json:"response,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Done") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Done") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Operation) MarshalJSON() ([]byte, error) {
type NoMethod Operation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OperationMetadataV1: Metadata for the given
// google.longrunning.Operation.
type OperationMetadataV1 struct {
CreateVersionMetadata *CreateVersionMetadataV1 `json:"createVersionMetadata,omitempty"`
// EndTime: Time that this operation completed.@OutputOnly
EndTime string `json:"endTime,omitempty"`
// EphemeralMessage: Ephemeral message that may change every time the
// operation is polled. @OutputOnly
EphemeralMessage string `json:"ephemeralMessage,omitempty"`
// InsertTime: Time that this operation was created.@OutputOnly
InsertTime string `json:"insertTime,omitempty"`
// Method: API method that initiated this operation. Example:
// google.appengine.v1.Versions.CreateVersion.@OutputOnly
Method string `json:"method,omitempty"`
// Target: Name of the resource that this operation is acting on.
// Example: apps/myapp/services/default.@OutputOnly
Target string `json:"target,omitempty"`
// User: User who requested this operation.@OutputOnly
User string `json:"user,omitempty"`
// Warning: Durable messages that persist on every operation poll.
// @OutputOnly
Warning []string `json:"warning,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CreateVersionMetadata") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateVersionMetadata") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *OperationMetadataV1) MarshalJSON() ([]byte, error) {
type NoMethod OperationMetadataV1
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OperationMetadataV1Alpha: Metadata for the given
// google.longrunning.Operation.
type OperationMetadataV1Alpha struct {
CreateVersionMetadata *CreateVersionMetadataV1Alpha `json:"createVersionMetadata,omitempty"`
// EndTime: Time that this operation completed.@OutputOnly
EndTime string `json:"endTime,omitempty"`
// EphemeralMessage: Ephemeral message that may change every time the
// operation is polled. @OutputOnly
EphemeralMessage string `json:"ephemeralMessage,omitempty"`
// InsertTime: Time that this operation was created.@OutputOnly
InsertTime string `json:"insertTime,omitempty"`
// Method: API method that initiated this operation. Example:
// google.appengine.v1alpha.Versions.CreateVersion.@OutputOnly
Method string `json:"method,omitempty"`
// Target: Name of the resource that this operation is acting on.
// Example: apps/myapp/services/default.@OutputOnly
Target string `json:"target,omitempty"`
// User: User who requested this operation.@OutputOnly
User string `json:"user,omitempty"`
// Warning: Durable messages that persist on every operation poll.
// @OutputOnly
Warning []string `json:"warning,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CreateVersionMetadata") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateVersionMetadata") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *OperationMetadataV1Alpha) MarshalJSON() ([]byte, error) {
type NoMethod OperationMetadataV1Alpha
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OperationMetadataV1Beta: Metadata for the given
// google.longrunning.Operation.
type OperationMetadataV1Beta struct {
CreateVersionMetadata *CreateVersionMetadataV1Beta `json:"createVersionMetadata,omitempty"`
// EndTime: Time that this operation completed.@OutputOnly
EndTime string `json:"endTime,omitempty"`
// EphemeralMessage: Ephemeral message that may change every time the
// operation is polled. @OutputOnly
EphemeralMessage string `json:"ephemeralMessage,omitempty"`
// InsertTime: Time that this operation was created.@OutputOnly
InsertTime string `json:"insertTime,omitempty"`
// Method: API method that initiated this operation. Example:
// google.appengine.v1beta.Versions.CreateVersion.@OutputOnly
Method string `json:"method,omitempty"`
// Target: Name of the resource that this operation is acting on.
// Example: apps/myapp/services/default.@OutputOnly
Target string `json:"target,omitempty"`
// User: User who requested this operation.@OutputOnly
User string `json:"user,omitempty"`
// Warning: Durable messages that persist on every operation poll.
// @OutputOnly
Warning []string `json:"warning,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "CreateVersionMetadata") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreateVersionMetadata") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *OperationMetadataV1Beta) MarshalJSON() ([]byte, error) {
type NoMethod OperationMetadataV1Beta
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ReadinessCheck: Readiness checking configuration for VM instances.
// Unhealthy instances are removed from traffic rotation.
type ReadinessCheck struct {
// AppStartTimeout: A maximum time limit on application initialization,
// measured from moment the application successfully replies to a
// healthcheck until it is ready to serve traffic.
AppStartTimeout string `json:"appStartTimeout,omitempty"`
// CheckInterval: Interval between health checks.
CheckInterval string `json:"checkInterval,omitempty"`
// FailureThreshold: Number of consecutive failed checks required before
// removing traffic.
FailureThreshold int64 `json:"failureThreshold,omitempty"`
// Host: Host header to send when performing a HTTP Readiness check.
// Example: "myapp.appspot.com"
Host string `json:"host,omitempty"`
// Path: The request path.
Path string `json:"path,omitempty"`
// SuccessThreshold: Number of consecutive successful checks required
// before receiving traffic.
SuccessThreshold int64 `json:"successThreshold,omitempty"`
// Timeout: Time before the check is considered failed.
Timeout string `json:"timeout,omitempty"`
// ForceSendFields is a list of field names (e.g. "AppStartTimeout") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AppStartTimeout") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *ReadinessCheck) MarshalJSON() ([]byte, error) {
type NoMethod ReadinessCheck
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RepairApplicationRequest: Request message for
// 'Applications.RepairApplication'.
type RepairApplicationRequest struct {
}
// RequestUtilization: Target scaling by request utilization. Only
// applicable in the App Engine flexible environment.
type RequestUtilization struct {
// TargetConcurrentRequests: Target number of concurrent requests.
TargetConcurrentRequests int64 `json:"targetConcurrentRequests,omitempty"`
// TargetRequestCountPerSecond: Target requests per second.
TargetRequestCountPerSecond int64 `json:"targetRequestCountPerSecond,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "TargetConcurrentRequests") to unconditionally include in API
// requests. By default, fields with empty values are omitted from API
// requests. However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "TargetConcurrentRequests")
// to include in API requests with the JSON null value. By default,
// fields with empty values are omitted from API requests. However, any
// field with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *RequestUtilization) MarshalJSON() ([]byte, error) {
type NoMethod RequestUtilization
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ResourceRecord: A DNS resource record.
type ResourceRecord struct {
// Name: Relative name of the object affected by this record. Only
// applicable for CNAME records. Example: 'www'.
Name string `json:"name,omitempty"`
// Rrdata: Data for this record. Values vary by record type, as defined
// in RFC 1035 (section 5) and RFC 1034 (section 3.6.1).
Rrdata string `json:"rrdata,omitempty"`
// Type: Resource record type. Example: AAAA.
//
// Possible values:
// "RECORD_TYPE_UNSPECIFIED" - An unknown resource record.
// "A" - An A resource record. Data is an IPv4 address.
// "AAAA" - An AAAA resource record. Data is an IPv6 address.
// "CNAME" - A CNAME resource record. Data is a domain name to be
// aliased.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Name") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Name") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ResourceRecord) MarshalJSON() ([]byte, error) {
type NoMethod ResourceRecord
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Resources: Machine resources for a version.
type Resources struct {
// Cpu: Number of CPU cores needed.
Cpu float64 `json:"cpu,omitempty"`
// DiskGb: Disk size (GB) needed.
DiskGb float64 `json:"diskGb,omitempty"`
// MemoryGb: Memory (GB) needed.
MemoryGb float64 `json:"memoryGb,omitempty"`
// Volumes: User specified volumes.
Volumes []*Volume `json:"volumes,omitempty"`
// ForceSendFields is a list of field names (e.g. "Cpu") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Cpu") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Resources) MarshalJSON() ([]byte, error) {
type NoMethod Resources
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *Resources) UnmarshalJSON(data []byte) error {
type NoMethod Resources
var s1 struct {
Cpu gensupport.JSONFloat64 `json:"cpu"`
DiskGb gensupport.JSONFloat64 `json:"diskGb"`
MemoryGb gensupport.JSONFloat64 `json:"memoryGb"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.Cpu = float64(s1.Cpu)
s.DiskGb = float64(s1.DiskGb)
s.MemoryGb = float64(s1.MemoryGb)
return nil
}
// ScriptHandler: Executes a script to handle the request that matches
// the URL pattern.
type ScriptHandler struct {
// ScriptPath: Path to the script from the application root directory.
ScriptPath string `json:"scriptPath,omitempty"`
// ForceSendFields is a list of field names (e.g. "ScriptPath") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ScriptPath") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *ScriptHandler) MarshalJSON() ([]byte, error) {
type NoMethod ScriptHandler
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Service: A Service resource is a logical component of an application
// that can share state and communicate in a secure fashion with other
// services. For example, an application that handles customer requests
// might include separate services to handle tasks such as backend data
// analysis or API requests from mobile devices. Each service has a
// collection of versions that define a specific set of code used to
// implement the functionality of that service.
type Service struct {
// Id: Relative name of the service within the application. Example:
// default.@OutputOnly
Id string `json:"id,omitempty"`
// Name: Full path to the Service resource in the API. Example:
// apps/myapp/services/default.@OutputOnly
Name string `json:"name,omitempty"`
// Split: Mapping that defines fractional HTTP traffic diversion to
// different versions within the service.
Split *TrafficSplit `json:"split,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Service) MarshalJSON() ([]byte, error) {
type NoMethod Service
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SslSettings: SSL configuration for a DomainMapping resource.
type SslSettings struct {
// CertificateId: ID of the AuthorizedCertificate resource configuring
// SSL for the application. Clearing this field will remove SSL
// support.By default, a managed certificate is automatically created
// for every domain mapping. To omit SSL support or to configure SSL
// manually, specify SslManagementType.MANUAL on a CREATE or UPDATE
// request. You must be authorized to administer the
// AuthorizedCertificate resource to manually map it to a DomainMapping
// resource. Example: 12345.
CertificateId string `json:"certificateId,omitempty"`
// PendingManagedCertificateId: ID of the managed AuthorizedCertificate
// resource currently being provisioned, if applicable. Until the new
// managed certificate has been successfully provisioned, the previous
// SSL state will be preserved. Once the provisioning process completes,
// the certificate_id field will reflect the new managed certificate and
// this field will be left empty. To remove SSL support while there is
// still a pending managed certificate, clear the certificate_id field
// with an UpdateDomainMappingRequest.@OutputOnly
PendingManagedCertificateId string `json:"pendingManagedCertificateId,omitempty"`
// SslManagementType: SSL management type for this domain. If AUTOMATIC,
// a managed certificate is automatically provisioned. If MANUAL,
// certificate_id must be manually specified in order to configure SSL
// for this domain.
//
// Possible values:
// "SSL_MANAGEMENT_TYPE_UNSPECIFIED" - Defaults to AUTOMATIC.
// "AUTOMATIC" - SSL support for this domain is configured
// automatically. The mapped SSL certificate will be automatically
// renewed.
// "MANUAL" - SSL support for this domain is configured manually by
// the user. Either the domain has no SSL support or a user-obtained SSL
// certificate has been explictly mapped to this domain.
SslManagementType string `json:"sslManagementType,omitempty"`
// ForceSendFields is a list of field names (e.g. "CertificateId") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CertificateId") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *SslSettings) MarshalJSON() ([]byte, error) {
type NoMethod SslSettings
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// StandardSchedulerSettings: Scheduler settings for standard
// environment.
type StandardSchedulerSettings struct {
// MaxInstances: Maximum number of instances to run for this version.
// Set to zero to disable max_instances configuration.
MaxInstances int64 `json:"maxInstances,omitempty"`
// MinInstances: Minimum number of instances to run for this version.
// Set to zero to disable min_instances configuration.
MinInstances int64 `json:"minInstances,omitempty"`
// TargetCpuUtilization: Target CPU utilization ratio to maintain when
// scaling.
TargetCpuUtilization float64 `json:"targetCpuUtilization,omitempty"`
// TargetThroughputUtilization: Target throughput utilization ratio to
// maintain when scaling
TargetThroughputUtilization float64 `json:"targetThroughputUtilization,omitempty"`
// ForceSendFields is a list of field names (e.g. "MaxInstances") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "MaxInstances") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *StandardSchedulerSettings) MarshalJSON() ([]byte, error) {
type NoMethod StandardSchedulerSettings
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
func (s *StandardSchedulerSettings) UnmarshalJSON(data []byte) error {
type NoMethod StandardSchedulerSettings
var s1 struct {
TargetCpuUtilization gensupport.JSONFloat64 `json:"targetCpuUtilization"`
TargetThroughputUtilization gensupport.JSONFloat64 `json:"targetThroughputUtilization"`
*NoMethod
}
s1.NoMethod = (*NoMethod)(s)
if err := json.Unmarshal(data, &s1); err != nil {
return err
}
s.TargetCpuUtilization = float64(s1.TargetCpuUtilization)
s.TargetThroughputUtilization = float64(s1.TargetThroughputUtilization)
return nil
}
// StaticFilesHandler: Files served directly to the user for a given
// URL, such as images, CSS stylesheets, or JavaScript source files.
// Static file handlers describe which files in the application
// directory are static files, and which URLs serve them.
type StaticFilesHandler struct {
// ApplicationReadable: Whether files should also be uploaded as code
// data. By default, files declared in static file handlers are uploaded
// as static data and are only served to end users; they cannot be read
// by the application. If enabled, uploads are charged against both your
// code and static data storage resource quotas.
ApplicationReadable bool `json:"applicationReadable,omitempty"`
// Expiration: Time a static file served by this handler should be
// cached by web proxies and browsers.
Expiration string `json:"expiration,omitempty"`
// HttpHeaders: HTTP headers to use for all responses from these URLs.
HttpHeaders map[string]string `json:"httpHeaders,omitempty"`
// MimeType: MIME type used to serve all files served by this
// handler.Defaults to file-specific MIME types, which are derived from
// each file's filename extension.
MimeType string `json:"mimeType,omitempty"`
// Path: Path to the static files matched by the URL pattern, from the
// application root directory. The path can refer to text matched in
// groupings in the URL pattern.
Path string `json:"path,omitempty"`
// RequireMatchingFile: Whether this handler should match the request if
// the file referenced by the handler does not exist.
RequireMatchingFile bool `json:"requireMatchingFile,omitempty"`
// UploadPathRegex: Regular expression that matches the file paths for
// all files that should be referenced by this handler.
UploadPathRegex string `json:"uploadPathRegex,omitempty"`
// ForceSendFields is a list of field names (e.g. "ApplicationReadable")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ApplicationReadable") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *StaticFilesHandler) MarshalJSON() ([]byte, error) {
type NoMethod StaticFilesHandler
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Status: The Status type defines a logical error model that is
// suitable for different programming environments, including REST APIs
// and RPC APIs. It is used by gRPC (https://github.com/grpc). Each
// Status message contains three pieces of data: error code, error
// message, and error details.You can find out more about this error
// model and how to work with it in the API Design Guide
// (https://cloud.google.com/apis/design/errors).
type Status struct {
// Code: The status code, which should be an enum value of
// google.rpc.Code.
Code int64 `json:"code,omitempty"`
// Details: A list of messages that carry the error details. There is a
// common set of message types for APIs to use.
Details []googleapi.RawMessage `json:"details,omitempty"`
// Message: A developer-facing error message, which should be in
// English. Any user-facing error message should be localized and sent
// in the google.rpc.Status.details field, or localized by the client.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Status) MarshalJSON() ([]byte, error) {
type NoMethod Status
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// TrafficSplit: Traffic routing configuration for versions within a
// single service. Traffic splits define how traffic directed to the
// service is assigned to versions.
type TrafficSplit struct {
// Allocations: Mapping from version IDs within the service to
// fractional (0.000, 1] allocations of traffic for that version. Each
// version can be specified only once, but some versions in the service
// may not have any traffic allocation. Services that have traffic
// allocated cannot be deleted until either the service is deleted or
// their traffic allocation is removed. Allocations must sum to 1. Up to
// two decimal place precision is supported for IP-based splits and up
// to three decimal places is supported for cookie-based splits.
Allocations map[string]float64 `json:"allocations,omitempty"`
// ShardBy: Mechanism used to determine which version a request is sent
// to. The traffic selection algorithm will be stable for either type
// until allocations are changed.
//
// Possible values:
// "UNSPECIFIED" - Diversion method unspecified.
// "COOKIE" - Diversion based on a specially named cookie,
// "GOOGAPPUID." The cookie must be set by the application itself or no
// diversion will occur.
// "IP" - Diversion based on applying the modulus operation to a
// fingerprint of the IP address.
// "RANDOM" - Diversion based on weighted random assignment. An
// incoming request is randomly routed to a version in the traffic
// split, with probability proportional to the version's traffic share.
ShardBy string `json:"shardBy,omitempty"`
// ForceSendFields is a list of field names (e.g. "Allocations") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Allocations") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *TrafficSplit) MarshalJSON() ([]byte, error) {
type NoMethod TrafficSplit
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UrlDispatchRule: Rules to match an HTTP request and dispatch that
// request to a service.
type UrlDispatchRule struct {
// Domain: Domain name to match against. The wildcard "*" is supported
// if specified before a period: "*.".Defaults to matching all domains:
// "*".
Domain string `json:"domain,omitempty"`
// Path: 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.
Path string `json:"path,omitempty"`
// Service: Resource ID of a service in this application that should
// serve the matched request. The service must already exist. Example:
// default.
Service string `json:"service,omitempty"`
// ForceSendFields is a list of field names (e.g. "Domain") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Domain") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UrlDispatchRule) MarshalJSON() ([]byte, error) {
type NoMethod UrlDispatchRule
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// UrlMap: URL pattern and description of how the URL should be handled.
// App Engine can handle URLs by executing application code or by
// serving static files uploaded with the version, such as images, CSS,
// or JavaScript.
type UrlMap struct {
// ApiEndpoint: Uses API Endpoints to handle requests.
ApiEndpoint *ApiEndpointHandler `json:"apiEndpoint,omitempty"`
// AuthFailAction: Action to take when users access resources that
// require authentication. Defaults to redirect.
//
// Possible values:
// "AUTH_FAIL_ACTION_UNSPECIFIED" - Not specified.
// AUTH_FAIL_ACTION_REDIRECT is assumed.
// "AUTH_FAIL_ACTION_REDIRECT" - Redirects user to
// "accounts.google.com". The user is redirected back to the application
// URL after signing in or creating an account.
// "AUTH_FAIL_ACTION_UNAUTHORIZED" - Rejects request with a 401 HTTP
// status code and an error message.
AuthFailAction string `json:"authFailAction,omitempty"`
// Login: Level of login required to access this resource. Not supported
// for Node.js in the App Engine standard environment.
//
// Possible values:
// "LOGIN_UNSPECIFIED" - Not specified. LOGIN_OPTIONAL is assumed.
// "LOGIN_OPTIONAL" - Does not require that the user is signed in.
// "LOGIN_ADMIN" - If the user is not signed in, the auth_fail_action
// is taken. In addition, if the user is not an administrator for the
// application, they are given an error message regardless of
// auth_fail_action. If the user is an administrator, the handler
// proceeds.
// "LOGIN_REQUIRED" - If the user has signed in, the handler proceeds
// normally. Otherwise, the auth_fail_action is taken.
Login string `json:"login,omitempty"`
// RedirectHttpResponseCode: 30x code to use when performing redirects
// for the secure field. Defaults to 302.
//
// Possible values:
// "REDIRECT_HTTP_RESPONSE_CODE_UNSPECIFIED" - Not specified. 302 is
// assumed.
// "REDIRECT_HTTP_RESPONSE_CODE_301" - 301 Moved Permanently code.
// "REDIRECT_HTTP_RESPONSE_CODE_302" - 302 Moved Temporarily code.
// "REDIRECT_HTTP_RESPONSE_CODE_303" - 303 See Other code.
// "REDIRECT_HTTP_RESPONSE_CODE_307" - 307 Temporary Redirect code.
RedirectHttpResponseCode string `json:"redirectHttpResponseCode,omitempty"`
// Script: Executes a script to handle the requests that match this URL
// pattern. Only the auto value is supported for Node.js in the App
// Engine standard environment, for example "script": "auto".
Script *ScriptHandler `json:"script,omitempty"`
// SecurityLevel: Security (HTTPS) enforcement for this URL.
//
// Possible values:
// "SECURE_UNSPECIFIED" - Not specified.
// "SECURE_DEFAULT" - Both HTTP and HTTPS requests with URLs that
// match the handler succeed without redirects. The application can
// examine the request to determine which protocol was used, and respond
// accordingly.
// "SECURE_NEVER" - Requests for a URL that match this handler that
// use HTTPS are automatically redirected to the HTTP equivalent URL.
// "SECURE_OPTIONAL" - Both HTTP and HTTPS requests with URLs that
// match the handler succeed without redirects. The application can
// examine the request to determine which protocol was used and respond
// accordingly.
// "SECURE_ALWAYS" - Requests for a URL that match this handler that
// do not use HTTPS are automatically redirected to the HTTPS URL with
// the same path. Query parameters are reserved for the redirect.
SecurityLevel string `json:"securityLevel,omitempty"`
// StaticFiles: Returns the contents of a file, such as an image, as the
// response.
StaticFiles *StaticFilesHandler `json:"staticFiles,omitempty"`
// UrlRegex: URL prefix. Uses regular expression syntax, which means
// regexp special characters must be escaped, but should not contain
// groupings. All URLs that begin with this prefix are handled by this
// handler, using the portion of the URL after the prefix as part of the
// file path.
UrlRegex string `json:"urlRegex,omitempty"`
// ForceSendFields is a list of field names (e.g. "ApiEndpoint") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ApiEndpoint") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *UrlMap) MarshalJSON() ([]byte, error) {
type NoMethod UrlMap
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Version: A Version resource is a specific set of source code and
// configuration files that are deployed into a service.
type Version struct {
// ApiConfig: Serving configuration for Google Cloud Endpoints
// (https://cloud.google.com/appengine/docs/python/endpoints/).Only
// returned in GET requests if view=FULL is set.
ApiConfig *ApiConfigHandler `json:"apiConfig,omitempty"`
// AutomaticScaling: Automatic scaling is based on request rate,
// response latencies, and other application metrics.
AutomaticScaling *AutomaticScaling `json:"automaticScaling,omitempty"`
// BasicScaling: A service with basic scaling will create an instance
// when the application receives a request. The instance will be turned
// down when the app becomes idle. Basic scaling is ideal for work that
// is intermittent or driven by user activity.
BasicScaling *BasicScaling `json:"basicScaling,omitempty"`
// BetaSettings: Metadata settings that are supplied to this version to
// enable beta runtime features.
BetaSettings map[string]string `json:"betaSettings,omitempty"`
// CreateTime: Time that this version was created.@OutputOnly
CreateTime string `json:"createTime,omitempty"`
// CreatedBy: Email address of the user who created this
// version.@OutputOnly
CreatedBy string `json:"createdBy,omitempty"`
// DefaultExpiration: Duration that static files should be cached by web
// proxies and browsers. Only applicable if the corresponding
// StaticFilesHandler
// (https://cloud.google.com/appengine/docs/admin-api/reference/rest/v1/a
// pps.services.versions#StaticFilesHandler) does not specify its own
// expiration time.Only returned in GET requests if view=FULL is set.
DefaultExpiration string `json:"defaultExpiration,omitempty"`
// Deployment: Code and application artifacts that make up this
// version.Only returned in GET requests if view=FULL is set.
Deployment *Deployment `json:"deployment,omitempty"`
// DiskUsageBytes: Total size in bytes of all the files that are
// included in this version and currently hosted on the App Engine
// disk.@OutputOnly
DiskUsageBytes int64 `json:"diskUsageBytes,omitempty,string"`
// EndpointsApiService: Cloud Endpoints configuration.If
// endpoints_api_service is set, the Cloud Endpoints Extensible Service
// Proxy will be provided to serve the API implemented by the app.
EndpointsApiService *EndpointsApiService `json:"endpointsApiService,omitempty"`
// Entrypoint: The entrypoint for the application.
Entrypoint *Entrypoint `json:"entrypoint,omitempty"`
// Env: App Engine execution environment for this version.Defaults to
// standard.
Env string `json:"env,omitempty"`
// EnvVariables: Environment variables available to the application.Only
// returned in GET requests if view=FULL is set.
EnvVariables map[string]string `json:"envVariables,omitempty"`
// ErrorHandlers: Custom static error pages. Limited to 10KB per
// page.Only returned in GET requests if view=FULL is set.
ErrorHandlers []*ErrorHandler `json:"errorHandlers,omitempty"`
// Handlers: An ordered list of URL-matching patterns that should be
// applied to incoming requests. The first matching URL handles the
// request and other request handlers are not attempted.Only returned in
// GET requests if view=FULL is set.
Handlers []*UrlMap `json:"handlers,omitempty"`
// HealthCheck: Configures health checking for instances. Unhealthy
// instances are stopped and replaced with new instances. Only
// applicable in the App Engine flexible environment.Only returned in
// GET requests if view=FULL is set.
HealthCheck *HealthCheck `json:"healthCheck,omitempty"`
// Id: Relative name of the version within the service. Example: v1.
// Version names can contain only lowercase letters, numbers, or
// hyphens. Reserved names: "default", "latest", and any name with the
// prefix "ah-".
Id string `json:"id,omitempty"`
// InboundServices: Before an application can receive email or XMPP
// messages, the application must be configured to enable the service.
//
// Possible values:
// "INBOUND_SERVICE_UNSPECIFIED" - Not specified.
// "INBOUND_SERVICE_MAIL" - Allows an application to receive mail.
// "INBOUND_SERVICE_MAIL_BOUNCE" - Allows an application to receive
// email-bound notifications.
// "INBOUND_SERVICE_XMPP_ERROR" - Allows an application to receive
// error stanzas.
// "INBOUND_SERVICE_XMPP_MESSAGE" - Allows an application to receive
// instant messages.
// "INBOUND_SERVICE_XMPP_SUBSCRIBE" - Allows an application to receive
// user subscription POSTs.
// "INBOUND_SERVICE_XMPP_PRESENCE" - Allows an application to receive
// a user's chat presence.
// "INBOUND_SERVICE_CHANNEL_PRESENCE" - Registers an application for
// notifications when a client connects or disconnects from a channel.
// "INBOUND_SERVICE_WARMUP" - Enables warmup requests.
InboundServices []string `json:"inboundServices,omitempty"`
// InstanceClass: Instance class that is used to run this version. Valid
// values are:
// AutomaticScaling: F1, F2, F4, F4_1G
// ManualScaling or BasicScaling: B1, B2, B4, B8, B4_1GDefaults to F1
// for AutomaticScaling and B1 for ManualScaling or BasicScaling.
InstanceClass string `json:"instanceClass,omitempty"`
// Libraries: Configuration for third-party Python runtime libraries
// that are required by the application.Only returned in GET requests if
// view=FULL is set.
Libraries []*Library `json:"libraries,omitempty"`
// LivenessCheck: Configures liveness health checking for instances.
// Unhealthy instances are stopped and replaced with new instancesOnly
// returned in GET requests if view=FULL is set.
LivenessCheck *LivenessCheck `json:"livenessCheck,omitempty"`
// ManualScaling: A service with manual scaling runs continuously,
// allowing you to perform complex initialization and rely on the state
// of its memory over time.
ManualScaling *ManualScaling `json:"manualScaling,omitempty"`
// Name: Full path to the Version resource in the API. Example:
// apps/myapp/services/default/versions/v1.@OutputOnly
Name string `json:"name,omitempty"`
// Network: Extra network settings. Only applicable in the App Engine
// flexible environment.
Network *Network `json:"network,omitempty"`
// NobuildFilesRegex: Files that match this pattern will not be built
// into this version. Only applicable for Go runtimes.Only returned in
// GET requests if view=FULL is set.
NobuildFilesRegex string `json:"nobuildFilesRegex,omitempty"`
// ReadinessCheck: Configures readiness health checking for instances.
// Unhealthy instances are not put into the backend traffic
// rotation.Only returned in GET requests if view=FULL is set.
ReadinessCheck *ReadinessCheck `json:"readinessCheck,omitempty"`
// Resources: Machine resources for this version. Only applicable in the