blob: ce47474587a8cd0ee40930ce655275125d7c6a02 [file] [log] [blame]
// Copyright 2020 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 run provides access to the Cloud Run Admin API.
//
// For product documentation, see: https://cloud.google.com/run/
//
// Creating a client
//
// Usage example:
//
// import "google.golang.org/api/run/v1"
// ...
// ctx := context.Background()
// runService, err := run.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
//
// To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey:
//
// runService, err := run.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, ...)
// runService, err := run.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token)))
//
// See https://godoc.org/google.golang.org/api/option/ for details on options.
package run // import "google.golang.org/api/run/v1"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
googleapi "google.golang.org/api/googleapi"
gensupport "google.golang.org/api/internal/gensupport"
option "google.golang.org/api/option"
internaloption "google.golang.org/api/option/internaloption"
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
var _ = internaloption.WithDefaultEndpoint
const apiId = "run:v1"
const apiName = "run"
const apiVersion = "v1"
const basePath = "https://run.googleapis.com/"
const mtlsBasePath = "https://run.mtls.googleapis.com/"
// OAuth2 scopes used by this API.
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
)
// NewService creates a new APIService.
func NewService(ctx context.Context, opts ...option.ClientOption) (*APIService, error) {
scopesOption := option.WithScopes(
"https://www.googleapis.com/auth/cloud-platform",
)
// NOTE: prepend, so we don't override user-specified scopes.
opts = append([]option.ClientOption{scopesOption}, opts...)
opts = append(opts, internaloption.WithDefaultEndpoint(basePath))
opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath))
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.Namespaces = NewNamespacesService(s)
s.Projects = NewProjectsService(s)
return s, nil
}
type APIService struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
Namespaces *NamespacesService
Projects *ProjectsService
}
func (s *APIService) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewNamespacesService(s *APIService) *NamespacesService {
rs := &NamespacesService{s: s}
rs.Authorizeddomains = NewNamespacesAuthorizeddomainsService(s)
rs.Configurations = NewNamespacesConfigurationsService(s)
rs.Domainmappings = NewNamespacesDomainmappingsService(s)
rs.Revisions = NewNamespacesRevisionsService(s)
rs.Routes = NewNamespacesRoutesService(s)
rs.Services = NewNamespacesServicesService(s)
return rs
}
type NamespacesService struct {
s *APIService
Authorizeddomains *NamespacesAuthorizeddomainsService
Configurations *NamespacesConfigurationsService
Domainmappings *NamespacesDomainmappingsService
Revisions *NamespacesRevisionsService
Routes *NamespacesRoutesService
Services *NamespacesServicesService
}
func NewNamespacesAuthorizeddomainsService(s *APIService) *NamespacesAuthorizeddomainsService {
rs := &NamespacesAuthorizeddomainsService{s: s}
return rs
}
type NamespacesAuthorizeddomainsService struct {
s *APIService
}
func NewNamespacesConfigurationsService(s *APIService) *NamespacesConfigurationsService {
rs := &NamespacesConfigurationsService{s: s}
return rs
}
type NamespacesConfigurationsService struct {
s *APIService
}
func NewNamespacesDomainmappingsService(s *APIService) *NamespacesDomainmappingsService {
rs := &NamespacesDomainmappingsService{s: s}
return rs
}
type NamespacesDomainmappingsService struct {
s *APIService
}
func NewNamespacesRevisionsService(s *APIService) *NamespacesRevisionsService {
rs := &NamespacesRevisionsService{s: s}
return rs
}
type NamespacesRevisionsService struct {
s *APIService
}
func NewNamespacesRoutesService(s *APIService) *NamespacesRoutesService {
rs := &NamespacesRoutesService{s: s}
return rs
}
type NamespacesRoutesService struct {
s *APIService
}
func NewNamespacesServicesService(s *APIService) *NamespacesServicesService {
rs := &NamespacesServicesService{s: s}
return rs
}
type NamespacesServicesService struct {
s *APIService
}
func NewProjectsService(s *APIService) *ProjectsService {
rs := &ProjectsService{s: s}
rs.Authorizeddomains = NewProjectsAuthorizeddomainsService(s)
rs.Locations = NewProjectsLocationsService(s)
return rs
}
type ProjectsService struct {
s *APIService
Authorizeddomains *ProjectsAuthorizeddomainsService
Locations *ProjectsLocationsService
}
func NewProjectsAuthorizeddomainsService(s *APIService) *ProjectsAuthorizeddomainsService {
rs := &ProjectsAuthorizeddomainsService{s: s}
return rs
}
type ProjectsAuthorizeddomainsService struct {
s *APIService
}
func NewProjectsLocationsService(s *APIService) *ProjectsLocationsService {
rs := &ProjectsLocationsService{s: s}
rs.Authorizeddomains = NewProjectsLocationsAuthorizeddomainsService(s)
rs.Configurations = NewProjectsLocationsConfigurationsService(s)
rs.Domainmappings = NewProjectsLocationsDomainmappingsService(s)
rs.Revisions = NewProjectsLocationsRevisionsService(s)
rs.Routes = NewProjectsLocationsRoutesService(s)
rs.Services = NewProjectsLocationsServicesService(s)
return rs
}
type ProjectsLocationsService struct {
s *APIService
Authorizeddomains *ProjectsLocationsAuthorizeddomainsService
Configurations *ProjectsLocationsConfigurationsService
Domainmappings *ProjectsLocationsDomainmappingsService
Revisions *ProjectsLocationsRevisionsService
Routes *ProjectsLocationsRoutesService
Services *ProjectsLocationsServicesService
}
func NewProjectsLocationsAuthorizeddomainsService(s *APIService) *ProjectsLocationsAuthorizeddomainsService {
rs := &ProjectsLocationsAuthorizeddomainsService{s: s}
return rs
}
type ProjectsLocationsAuthorizeddomainsService struct {
s *APIService
}
func NewProjectsLocationsConfigurationsService(s *APIService) *ProjectsLocationsConfigurationsService {
rs := &ProjectsLocationsConfigurationsService{s: s}
return rs
}
type ProjectsLocationsConfigurationsService struct {
s *APIService
}
func NewProjectsLocationsDomainmappingsService(s *APIService) *ProjectsLocationsDomainmappingsService {
rs := &ProjectsLocationsDomainmappingsService{s: s}
return rs
}
type ProjectsLocationsDomainmappingsService struct {
s *APIService
}
func NewProjectsLocationsRevisionsService(s *APIService) *ProjectsLocationsRevisionsService {
rs := &ProjectsLocationsRevisionsService{s: s}
return rs
}
type ProjectsLocationsRevisionsService struct {
s *APIService
}
func NewProjectsLocationsRoutesService(s *APIService) *ProjectsLocationsRoutesService {
rs := &ProjectsLocationsRoutesService{s: s}
return rs
}
type ProjectsLocationsRoutesService struct {
s *APIService
}
func NewProjectsLocationsServicesService(s *APIService) *ProjectsLocationsServicesService {
rs := &ProjectsLocationsServicesService{s: s}
return rs
}
type ProjectsLocationsServicesService struct {
s *APIService
}
// Addressable: Information for connecting over HTTP(s).
type Addressable struct {
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "Url") 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. "Url") 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 *Addressable) MarshalJSON() ([]byte, error) {
type NoMethod Addressable
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuditConfig: Specifies the audit configuration for a service. The
// configuration determines which permission types are logged, and what
// identities, if any, are exempted from logging. An AuditConfig must
// have one or more AuditLogConfigs. If there are AuditConfigs for both
// `allServices` and a specific service, the union of the two
// AuditConfigs is used for that service: the log_types specified in
// each AuditConfig are enabled, and the exempted_members in each
// AuditLogConfig are exempted. Example Policy with multiple
// AuditConfigs: { "audit_configs": [ { "service": "allServices",
// "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members":
// [ "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, {
// "log_type": "ADMIN_READ" } ] }, { "service":
// "sampleservice.googleapis.com", "audit_log_configs": [ { "log_type":
// "DATA_READ" }, { "log_type": "DATA_WRITE", "exempted_members": [
// "user:aliya@example.com" ] } ] } ] } For sampleservice, this policy
// enables DATA_READ, DATA_WRITE and ADMIN_READ logging. It also exempts
// jose@example.com from DATA_READ logging, and aliya@example.com from
// DATA_WRITE logging.
type AuditConfig struct {
// AuditLogConfigs: The configuration for logging of each type of
// permission.
AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
// Service: Specifies a service that will be enabled for audit logging.
// For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
// `allServices` is a special value that covers all services.
Service string `json:"service,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") 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. "AuditLogConfigs") 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 *AuditConfig) MarshalJSON() ([]byte, error) {
type NoMethod AuditConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuditLogConfig: Provides the configuration for logging a type of
// permissions. Example: { "audit_log_configs": [ { "log_type":
// "DATA_READ", "exempted_members": [ "user:jose@example.com" ] }, {
// "log_type": "DATA_WRITE" } ] } This enables 'DATA_READ' and
// 'DATA_WRITE' logging, while exempting jose@example.com from DATA_READ
// logging.
type AuditLogConfig struct {
// ExemptedMembers: Specifies the identities that do not cause logging
// for this type of permission. Follows the same format of
// Binding.members.
ExemptedMembers []string `json:"exemptedMembers,omitempty"`
// LogType: The log type that this config enables.
//
// Possible values:
// "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this.
// "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy
// "DATA_WRITE" - Data writes. Example: CloudSQL Users create
// "DATA_READ" - Data reads. Example: CloudSQL Users list
LogType string `json:"logType,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExemptedMembers") 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. "ExemptedMembers") 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 *AuditLogConfig) MarshalJSON() ([]byte, error) {
type NoMethod AuditLogConfig
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: Relative name of the domain authorized for use. Example:
// `example.com`.
Id string `json:"id,omitempty"`
// Name: Deprecated Read only. Full path to the `AuthorizedDomain`
// resource in the API. Example:
// `projects/myproject/authorizedDomains/example.com`.
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)
}
// Binding: Associates `members` with a `role`.
type Binding struct {
// Condition: The condition that is associated with this binding. If the
// condition evaluates to `true`, then this binding applies to the
// current request. If the condition evaluates to `false`, then this
// binding does not apply to the current request. However, a different
// role binding might grant the same role to one or more of the members
// in this binding. To learn which resources support conditions in their
// IAM policies, see the [IAM
// documentation](https://cloud.google.com/iam/help/conditions/resource-p
// olicies).
Condition *Expr `json:"condition,omitempty"`
// Members: Specifies the identities requesting access for a Cloud
// Platform resource. `members` can have the following values: *
// `allUsers`: A special identifier that represents anyone who is on the
// internet; with or without a Google account. *
// `allAuthenticatedUsers`: A special identifier that represents anyone
// who is authenticated with a Google account or a service account. *
// `user:{emailid}`: An email address that represents a specific Google
// account. For example, `alice@example.com` . *
// `serviceAccount:{emailid}`: An email address that represents a
// service account. For example,
// `my-other-app@appspot.gserviceaccount.com`. * `group:{emailid}`: An
// email address that represents a Google group. For example,
// `admins@example.com`. * `deleted:user:{emailid}?uid={uniqueid}`: An
// email address (plus unique identifier) representing a user that has
// been recently deleted. For example,
// `alice@example.com?uid=123456789012345678901`. If the user is
// recovered, this value reverts to `user:{emailid}` and the recovered
// user retains the role in the binding. *
// `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address
// (plus unique identifier) representing a service account that has been
// recently deleted. For example,
// `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`.
// If the service account is undeleted, this value reverts to
// `serviceAccount:{emailid}` and the undeleted service account retains
// the role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`:
// An email address (plus unique identifier) representing a Google group
// that has been recently deleted. For example,
// `admins@example.com?uid=123456789012345678901`. If the group is
// recovered, this value reverts to `group:{emailid}` and the recovered
// group retains the role in the binding. * `domain:{domain}`: The G
// Suite domain (primary) that represents all the users of that domain.
// For example, `google.com` or `example.com`.
Members []string `json:"members,omitempty"`
// Role: Role that is assigned to `members`. For example,
// `roles/viewer`, `roles/editor`, or `roles/owner`.
Role string `json:"role,omitempty"`
// ForceSendFields is a list of field names (e.g. "Condition") 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. "Condition") 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 *Binding) MarshalJSON() ([]byte, error) {
type NoMethod Binding
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ConfigMapEnvSource: Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported ConfigMapEnvSource selects a ConfigMap to
// populate the environment variables with. The contents of the target
// ConfigMap's Data field will represent the key-value pairs as
// environment variables.
type ConfigMapEnvSource struct {
// LocalObjectReference: This field should not be used directly as it is
// meant to be inlined directly into the message. Use the "name" field
// instead.
LocalObjectReference *LocalObjectReference `json:"localObjectReference,omitempty"`
// Name: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The ConfigMap to select from.
Name string `json:"name,omitempty"`
// Optional: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Specify whether the ConfigMap must be defined
Optional bool `json:"optional,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "LocalObjectReference") 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. "LocalObjectReference") 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 *ConfigMapEnvSource) MarshalJSON() ([]byte, error) {
type NoMethod ConfigMapEnvSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ConfigMapKeySelector: Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Selects a key from a ConfigMap.
type ConfigMapKeySelector struct {
// Key: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The key to select.
Key string `json:"key,omitempty"`
// LocalObjectReference: This field should not be used directly as it is
// meant to be inlined directly into the message. Use the "name" field
// instead.
LocalObjectReference *LocalObjectReference `json:"localObjectReference,omitempty"`
// Name: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The ConfigMap to select from.
Name string `json:"name,omitempty"`
// Optional: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Specify whether the ConfigMap or its key must
// be defined
Optional bool `json:"optional,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") 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. "Key") 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 *ConfigMapKeySelector) MarshalJSON() ([]byte, error) {
type NoMethod ConfigMapKeySelector
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ConfigMapVolumeSource: Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Adapts a ConfigMap into a volume. The
// contents of the target ConfigMap's Data field will be presented in a
// volume as files using the keys in the Data field as the file names,
// unless the items element is populated with specific mappings of keys
// to paths.
type ConfigMapVolumeSource struct {
// DefaultMode: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Mode bits to use on created files by
// default. Must be a value between 0 and 0777. Defaults to 0644.
// Directories within the path are not affected by this setting. This
// might be in conflict with other options that affect the file mode,
// like fsGroup, and the result can be other mode bits set.
DefaultMode int64 `json:"defaultMode,omitempty"`
// Items: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported If unspecified, each key-value pair in the Data
// field of the referenced Secret will be projected into the volume as a
// file whose name is the key and content is the value. If specified,
// the listed keys will be projected into the specified paths, and
// unlisted keys will not be present. If a key is specified which is not
// present in the Secret, the volume setup will error unless it is
// marked optional.
Items []*KeyToPath `json:"items,omitempty"`
// Name: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported Name of the config.
Name string `json:"name,omitempty"`
// Optional: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Specify whether the Secret or its keys must be
// defined.
Optional bool `json:"optional,omitempty"`
// ForceSendFields is a list of field names (e.g. "DefaultMode") 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. "DefaultMode") 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 *ConfigMapVolumeSource) MarshalJSON() ([]byte, error) {
type NoMethod ConfigMapVolumeSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Configuration: Configuration represents the "floating HEAD" of a
// linear history of Revisions, and optionally how the containers those
// revisions reference are built. Users create new Revisions by updating
// the Configuration's spec. The "latest created" revision's name is
// available under status, as is the "latest ready" revision's name. See
// also:
// https://github.com/knative/serving/blob/master/docs/spec/overview.md#configuration
type Configuration struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Kind: The kind of resource, in this case always "Configuration".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Configuration, including
// name, namespace, labels, and annotations.
Metadata *ObjectMeta `json:"metadata,omitempty"`
// Spec: Spec holds the desired state of the Configuration (from the
// client).
Spec *ConfigurationSpec `json:"spec,omitempty"`
// Status: Status communicates the observed state of the Configuration
// (from the controller).
Status *ConfigurationStatus `json:"status,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *Configuration) MarshalJSON() ([]byte, error) {
type NoMethod Configuration
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ConfigurationSpec: ConfigurationSpec holds the desired state of the
// Configuration (from the client).
type ConfigurationSpec struct {
// Template: Optional metadata for this Revision, including labels and
// annotations. Name will be generated by the Configuration. To set
// minimum instances for this revision, use the
// "autoscaling.knative.dev/minScale" annotation key. To set maximum
// instances for this revision, use the
// "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL
// connections for the revision, use the
// "run.googleapis.com/cloudsql-instances" annotation key. To set a
// Serverless VPC Access connector for the revision, use the
// "run.googleapis.com/vpc-access-connector" annotation key. Values
// should be comma separated.
Template *RevisionTemplate `json:"template,omitempty"`
// ForceSendFields is a list of field names (e.g. "Template") 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. "Template") 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 *ConfigurationSpec) MarshalJSON() ([]byte, error) {
type NoMethod ConfigurationSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ConfigurationStatus: ConfigurationStatus communicates the observed
// state of the Configuration (from the controller).
type ConfigurationStatus struct {
// Conditions: Conditions communicates information about
// ongoing/complete reconciliation processes that bring the "spec"
// inline with the observed state of the world.
Conditions []*GoogleCloudRunV1Condition `json:"conditions,omitempty"`
// LatestCreatedRevisionName: LatestCreatedRevisionName is the last
// revision that was created from this Configuration. It might not be
// ready yet, for that use LatestReadyRevisionName.
LatestCreatedRevisionName string `json:"latestCreatedRevisionName,omitempty"`
// LatestReadyRevisionName: LatestReadyRevisionName holds the name of
// the latest Revision stamped out from this Configuration that has had
// its "Ready" condition become "True".
LatestReadyRevisionName string `json:"latestReadyRevisionName,omitempty"`
// ObservedGeneration: ObservedGeneration is the 'Generation' of the
// Configuration that was last processed by the controller. The observed
// generation is updated even if the controller failed to process the
// spec and create the Revision. Clients polling for completed
// reconciliation should poll until observedGeneration =
// metadata.generation, and the Ready condition's status is True or
// False.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// ForceSendFields is a list of field names (e.g. "Conditions") 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. "Conditions") 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 *ConfigurationStatus) MarshalJSON() ([]byte, error) {
type NoMethod ConfigurationStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Container: A single application container. This specifies both the
// container to run, the command to run in the container and the
// arguments to supply to it. Note that additional arguments may be
// supplied by the system to the container at runtime.
type Container struct {
// Args: (Optional) Cloud Run fully managed: supported Cloud Run for
// Anthos: supported Arguments to the entrypoint. The docker image's CMD
// is used if this is not provided. Variable references $(VAR_NAME) are
// expanded using the container's environment. If a variable cannot be
// resolved, the reference in the input string will be unchanged. The
// $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME).
// Escaped references will never be expanded, regardless of whether the
// variable exists or not. More info:
// https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell
Args []string `json:"args,omitempty"`
Command []string `json:"command,omitempty"`
// Env: (Optional) Cloud Run fully managed: supported Cloud Run for
// Anthos: supported List of environment variables to set in the
// container.
Env []*EnvVar `json:"env,omitempty"`
// EnvFrom: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported List of sources to populate environment
// variables in the container. The keys defined within a source must be
// a C_IDENTIFIER. All invalid keys will be reported as an event when
// the container is starting. When a key exists in multiple sources, the
// value associated with the last source will take precedence. Values
// defined by an Env with a duplicate key will take precedence. Cannot
// be updated.
EnvFrom []*EnvFromSource `json:"envFrom,omitempty"`
// Image: Cloud Run fully managed: only supports containers from Google
// Container Registry Cloud Run for Anthos: supported URL of the
// Container image. More info:
// https://kubernetes.io/docs/concepts/containers/images
Image string `json:"image,omitempty"`
// ImagePullPolicy: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Image pull policy. One of Always,
// Never, IfNotPresent. Defaults to Always if :latest tag is specified,
// or IfNotPresent otherwise. More info:
// https://kubernetes.io/docs/concepts/containers/images#updating-images
ImagePullPolicy string `json:"imagePullPolicy,omitempty"`
// LivenessProbe: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Periodic probe of container liveness.
// Container will be restarted if the probe fails. More info:
// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
LivenessProbe *Probe `json:"livenessProbe,omitempty"`
// Name: (Optional) Name of the container specified as a DNS_LABEL.
Name string `json:"name,omitempty"`
// Ports: (Optional) List of ports to expose from the container. Only a
// single port can be specified. The specified ports must be listening
// on all interfaces (0.0.0.0) within the container to be accessible. If
// omitted, a port number will be chosen and passed to the container
// through the PORT environment variable for the container to listen on.
Ports []*ContainerPort `json:"ports,omitempty"`
// ReadinessProbe: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Periodic probe of container service
// readiness. Container will be removed from service endpoints if the
// probe fails. More info:
// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
ReadinessProbe *Probe `json:"readinessProbe,omitempty"`
// Resources: (Optional) Cloud Run fully managed: supported Cloud Run
// for Anthos: supported Compute Resources required by this container.
// More info:
// https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources
Resources *ResourceRequirements `json:"resources,omitempty"`
// SecurityContext: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Security options the pod should run
// with. More info:
// https://kubernetes.io/docs/concepts/policy/security-context/ More
// info:
// https://kubernetes.io/docs/tasks/configure-pod-container/security-context/
SecurityContext *SecurityContext `json:"securityContext,omitempty"`
// TerminationMessagePath: (Optional) Cloud Run fully managed: not
// supported Cloud Run for Anthos: supported Path at which the file to
// which the container's termination message will be written is mounted
// into the container's filesystem. Message written is intended to be
// brief final status, such as an assertion failure message. Will be
// truncated by the node if greater than 4096 bytes. The total message
// length across all containers will be limited to 12kb. Defaults to
// /dev/termination-log.
TerminationMessagePath string `json:"terminationMessagePath,omitempty"`
// TerminationMessagePolicy: (Optional) Cloud Run fully managed: not
// supported Cloud Run for Anthos: supported Indicate how the
// termination message should be populated. File will use the contents
// of terminationMessagePath to populate the container status message on
// both success and failure. FallbackToLogsOnError will use the last
// chunk of container log output if the termination message file is
// empty and the container exited with an error. The log output is
// limited to 2048 bytes or 80 lines, whichever is smaller. Defaults to
// File. Cannot be updated.
TerminationMessagePolicy string `json:"terminationMessagePolicy,omitempty"`
// VolumeMounts: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Pod volumes to mount into the container's
// filesystem.
VolumeMounts []*VolumeMount `json:"volumeMounts,omitempty"`
// WorkingDir: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Container's working directory. If not
// specified, the container runtime's default will be used, which might
// be configured in the container image.
WorkingDir string `json:"workingDir,omitempty"`
// ForceSendFields is a list of field names (e.g. "Args") 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. "Args") 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 *Container) MarshalJSON() ([]byte, error) {
type NoMethod Container
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ContainerPort: ContainerPort represents a network port in a single
// container.
type ContainerPort struct {
// ContainerPort: (Optional) Port number the container listens on. This
// must be a valid port number, 0 < x < 65536.
ContainerPort int64 `json:"containerPort,omitempty"`
// Name: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported If specified, used to specify which protocol to
// use. Allowed values are "http1" and "h2c".
Name string `json:"name,omitempty"`
// Protocol: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Protocol for port. Must be "TCP". Defaults to
// "TCP".
Protocol string `json:"protocol,omitempty"`
// ForceSendFields is a list of field names (e.g. "ContainerPort") 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. "ContainerPort") 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 *ContainerPort) MarshalJSON() ([]byte, error) {
type NoMethod ContainerPort
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DomainMapping: Resource to hold the state and status of a user's
// domain mapping.
type DomainMapping struct {
// ApiVersion: The API version for this call such as
// "domains.cloudrun.com/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Kind: The kind of resource, in this case "DomainMapping".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this BuildTemplate.
Metadata *ObjectMeta `json:"metadata,omitempty"`
// Spec: The spec for this DomainMapping.
Spec *DomainMappingSpec `json:"spec,omitempty"`
// Status: The current status of the DomainMapping.
Status *DomainMappingStatus `json:"status,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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)
}
// DomainMappingSpec: The desired state of the Domain Mapping.
type DomainMappingSpec struct {
// CertificateMode: The mode of the certificate.
//
// Possible values:
// "CERTIFICATE_MODE_UNSPECIFIED"
// "NONE" - Do not provision an HTTPS certificate.
// "AUTOMATIC" - Automatically provisions an HTTPS certificate via
// GoogleCA or LetsEncrypt.
CertificateMode string `json:"certificateMode,omitempty"`
// ForceOverride: If set, the mapping will override any mapping set
// before this spec was set. It is recommended that the user leaves this
// empty to receive an error warning about a potential conflict and only
// set it once the respective UI has given such a warning.
ForceOverride bool `json:"forceOverride,omitempty"`
// RouteName: The name of the Knative Route that this DomainMapping
// applies to. The route must exist.
RouteName string `json:"routeName,omitempty"`
// ForceSendFields is a list of field names (e.g. "CertificateMode") 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. "CertificateMode") 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 *DomainMappingSpec) MarshalJSON() ([]byte, error) {
type NoMethod DomainMappingSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// DomainMappingStatus: The current state of the Domain Mapping.
type DomainMappingStatus struct {
// Conditions: Array of observed DomainMappingConditions, indicating the
// current state of the DomainMapping.
Conditions []*GoogleCloudRunV1Condition `json:"conditions,omitempty"`
// MappedRouteName: The name of the route that the mapping currently
// points to.
MappedRouteName string `json:"mappedRouteName,omitempty"`
// ObservedGeneration: ObservedGeneration is the 'Generation' of the
// DomainMapping that was last processed by the controller. Clients
// polling for completed reconciliation should poll until
// observedGeneration = metadata.generation and the Ready condition's
// status is True or False.
ObservedGeneration int64 `json:"observedGeneration,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.
ResourceRecords []*ResourceRecord `json:"resourceRecords,omitempty"`
// Url: Cloud Run fully managed: not supported Cloud Run on GKE:
// supported Holds the URL that will serve the traffic of the
// DomainMapping. +optional
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "Conditions") 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. "Conditions") 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 *DomainMappingStatus) MarshalJSON() ([]byte, error) {
type NoMethod DomainMappingStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// EnvFromSource: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported EnvFromSource represents the source of a set of
// ConfigMaps
type EnvFromSource struct {
// ConfigMapRef: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported The ConfigMap to select from
ConfigMapRef *ConfigMapEnvSource `json:"configMapRef,omitempty"`
// Prefix: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported An optional identifier to prepend to each key
// in the ConfigMap. Must be a C_IDENTIFIER.
Prefix string `json:"prefix,omitempty"`
// SecretRef: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported The Secret to select from
SecretRef *SecretEnvSource `json:"secretRef,omitempty"`
// ForceSendFields is a list of field names (e.g. "ConfigMapRef") 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. "ConfigMapRef") 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 *EnvFromSource) MarshalJSON() ([]byte, error) {
type NoMethod EnvFromSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// EnvVar: EnvVar represents an environment variable present in a
// Container.
type EnvVar struct {
// Name: Name of the environment variable. Must be a C_IDENTIFIER.
Name string `json:"name,omitempty"`
// Value: (Optional) Variable references $(VAR_NAME) are expanded using
// the previous defined environment variables in the container and any
// route environment variables. If a variable cannot be resolved, the
// reference in the input string will be unchanged. The $(VAR_NAME)
// syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped
// references will never be expanded, regardless of whether the variable
// exists or not. Defaults to "".
Value string `json:"value,omitempty"`
// ValueFrom: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Source for the environment variable's
// value. Cannot be used if value is not empty.
ValueFrom *EnvVarSource `json:"valueFrom,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 *EnvVar) MarshalJSON() ([]byte, error) {
type NoMethod EnvVar
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// EnvVarSource: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported EnvVarSource represents a source for the value of
// an EnvVar.
type EnvVarSource struct {
// ConfigMapKeyRef: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Selects a key of a ConfigMap.
ConfigMapKeyRef *ConfigMapKeySelector `json:"configMapKeyRef,omitempty"`
// SecretKeyRef: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Selects a key of a secret in the pod's
// namespace
SecretKeyRef *SecretKeySelector `json:"secretKeyRef,omitempty"`
// ForceSendFields is a list of field names (e.g. "ConfigMapKeyRef") 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. "ConfigMapKeyRef") 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 *EnvVarSource) MarshalJSON() ([]byte, error) {
type NoMethod EnvVarSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ExecAction: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported ExecAction describes a "run in container" action.
type ExecAction struct {
// Command: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Command is the command line to execute inside
// the container, the working directory for the command is root ('/') in
// the container's filesystem. The command is simply exec'd, it is not
// run inside a shell, so traditional shell instructions ('|', etc)
// won't work. To use a shell, you need to explicitly call out to that
// shell. Exit status of 0 is treated as live/healthy and non-zero is
// unhealthy.
Command []string `json:"command,omitempty"`
// ForceSendFields is a list of field names (e.g. "Command") 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. "Command") 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 *ExecAction) MarshalJSON() ([]byte, error) {
type NoMethod ExecAction
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Expr: Represents a textual expression in the Common Expression
// Language (CEL) syntax. CEL is a C-like expression language. The
// syntax and semantics of CEL are documented at
// https://github.com/google/cel-spec. Example (Comparison): title:
// "Summary size limit" description: "Determines if a summary is less
// than 100 chars" expression: "document.summary.size() < 100" Example
// (Equality): title: "Requestor is owner" description: "Determines if
// requestor is the document owner" expression: "document.owner ==
// request.auth.claims.email" Example (Logic): title: "Public documents"
// description: "Determine whether the document should be publicly
// visible" expression: "document.type != 'private' && document.type !=
// 'internal'" Example (Data Manipulation): title: "Notification string"
// description: "Create a notification string with a timestamp."
// expression: "'New message received at ' +
// string(document.create_time)" The exact variables and functions that
// may be referenced within an expression are determined by the service
// that evaluates it. See the service documentation for additional
// information.
type Expr struct {
// Description: Optional. Description of the expression. This is a
// longer text which describes the expression, e.g. when hovered over it
// in a UI.
Description string `json:"description,omitempty"`
// Expression: Textual representation of an expression in Common
// Expression Language syntax.
Expression string `json:"expression,omitempty"`
// Location: Optional. String indicating the location of the expression
// for error reporting, e.g. a file name and a position in the file.
Location string `json:"location,omitempty"`
// Title: Optional. Title for the expression, i.e. a short string
// describing its purpose. This can be used e.g. in UIs which allow to
// enter the expression.
Title string `json:"title,omitempty"`
// ForceSendFields is a list of field names (e.g. "Description") 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. "Description") 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 *Expr) MarshalJSON() ([]byte, error) {
type NoMethod Expr
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// GoogleCloudRunV1Condition: Condition defines a generic condition for
// a Resource
type GoogleCloudRunV1Condition struct {
// LastTransitionTime: Optional. Last time the condition transitioned
// from one status to another.
LastTransitionTime string `json:"lastTransitionTime,omitempty"`
// Message: Optional. Human readable message indicating details about
// the current status.
Message string `json:"message,omitempty"`
// Reason: Optional. One-word CamelCase reason for the condition's last
// transition.
Reason string `json:"reason,omitempty"`
// Severity: Optional. How to interpret failures of this condition, one
// of Error, Warning, Info
Severity string `json:"severity,omitempty"`
// Status: Status of the condition, one of True, False, Unknown.
Status string `json:"status,omitempty"`
// Type: type is used to communicate the status of the reconciliation
// process. See also:
// https://github.com/knative/serving/blob/master/docs/spec/errors.md#error-conditions-and-reporting Types common to all resources include: * "Ready": True when the Resource is
// ready.
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "LastTransitionTime")
// 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. "LastTransitionTime") 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 *GoogleCloudRunV1Condition) MarshalJSON() ([]byte, error) {
type NoMethod GoogleCloudRunV1Condition
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// HTTPGetAction: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported HTTPGetAction describes an action based on HTTP Get
// requests.
type HTTPGetAction struct {
// Host: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Host name to connect to, defaults to the pod IP.
// You probably want to set "Host" in httpHeaders instead.
Host string `json:"host,omitempty"`
// HttpHeaders: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Custom headers to set in the request. HTTP
// allows repeated headers.
HttpHeaders []*HTTPHeader `json:"httpHeaders,omitempty"`
// Path: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Path to access on the HTTP server.
Path string `json:"path,omitempty"`
// Scheme: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Scheme to use for connecting to the host.
// Defaults to HTTP.
Scheme string `json:"scheme,omitempty"`
// ForceSendFields is a list of field names (e.g. "Host") 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. "Host") 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 *HTTPGetAction) MarshalJSON() ([]byte, error) {
type NoMethod HTTPGetAction
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// HTTPHeader: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported HTTPHeader describes a custom header to be used in
// HTTP probes
type HTTPHeader struct {
// Name: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The header field name
Name string `json:"name,omitempty"`
// Value: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The header field value
Value string `json:"value,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 *HTTPHeader) MarshalJSON() ([]byte, error) {
type NoMethod HTTPHeader
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// KeyToPath: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Maps a string key to a path within a volume.
type KeyToPath struct {
// Key: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The key to project.
Key string `json:"key,omitempty"`
// Mode: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Mode bits to use on this file, must be a value
// between 0 and 0777. If not specified, the volume defaultMode will be
// used. This might be in conflict with other options that affect the
// file mode, like fsGroup, and the result can be other mode bits set.
Mode int64 `json:"mode,omitempty"`
// Path: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The relative path of the file to map the key to. May not be
// an absolute path. May not contain the path element '..'. May not
// start with the string '..'.
Path string `json:"path,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") 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. "Key") 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 *KeyToPath) MarshalJSON() ([]byte, error) {
type NoMethod KeyToPath
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListAuthorizedDomainsResponse: A list of Authorized Domains.
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)
}
// ListConfigurationsResponse: ListConfigurationsResponse is a list of
// Configuration resources.
type ListConfigurationsResponse struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Items: List of Configurations.
Items []*Configuration `json:"items,omitempty"`
// Kind: The kind of this resource, in this case "ConfigurationList".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Configuration list.
Metadata *ListMeta `json:"metadata,omitempty"`
// Unreachable: Locations that could not be reached.
Unreachable []string `json:"unreachable,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *ListConfigurationsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListConfigurationsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListDomainMappingsResponse: ListDomainMappingsResponse is a list of
// DomainMapping resources.
type ListDomainMappingsResponse struct {
// ApiVersion: The API version for this call such as
// "domains.cloudrun.com/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Items: List of DomainMappings.
Items []*DomainMapping `json:"items,omitempty"`
// Kind: The kind of this resource, in this case "DomainMappingList".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this DomainMapping list.
Metadata *ListMeta `json:"metadata,omitempty"`
// Unreachable: Locations that could not be reached.
Unreachable []string `json:"unreachable,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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)
}
// 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)
}
// ListMeta: ListMeta describes metadata that synthetic resources must
// have, including lists and various status objects. A resource may have
// only one of {ObjectMeta, ListMeta}.
type ListMeta struct {
// Continue: continue may be set if the user set a limit on the number
// of items returned, and indicates that the server has more data
// available. The value is opaque and may be used to issue another
// request to the endpoint that served this list to retrieve the next
// set of available objects. Continuing a list may not be possible if
// the server configuration has changed or more than a few minutes have
// passed. The resourceVersion field returned when using this continue
// value will be identical to the value in the first response.
Continue string `json:"continue,omitempty"`
// ResourceVersion: String that identifies the server's internal version
// of this object that can be used by clients to determine when objects
// have changed. Value must be treated as opaque by clients and passed
// unmodified back to the server. Populated by the system. Read-only.
// More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency
// +optional
ResourceVersion string `json:"resourceVersion,omitempty"`
// SelfLink: SelfLink is a URL representing this object. Populated by
// the system. Read-only. +optional
SelfLink string `json:"selfLink,omitempty"`
// ForceSendFields is a list of field names (e.g. "Continue") 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. "Continue") 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 *ListMeta) MarshalJSON() ([]byte, error) {
type NoMethod ListMeta
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListRevisionsResponse: ListRevisionsResponse is a list of Revision
// resources.
type ListRevisionsResponse struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Items: List of Revisions.
Items []*Revision `json:"items,omitempty"`
// Kind: The kind of this resource, in this case "RevisionList".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this revision list.
Metadata *ListMeta `json:"metadata,omitempty"`
// Unreachable: Locations that could not be reached.
Unreachable []string `json:"unreachable,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *ListRevisionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListRevisionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListRoutesResponse: ListRoutesResponse is a list of Route resources.
type ListRoutesResponse struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Items: List of Routes.
Items []*Route `json:"items,omitempty"`
// Kind: The kind of this resource, in this case always "RouteList".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Route list.
Metadata *ListMeta `json:"metadata,omitempty"`
// Unreachable: Locations that could not be reached.
Unreachable []string `json:"unreachable,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *ListRoutesResponse) MarshalJSON() ([]byte, error) {
type NoMethod ListRoutesResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ListServicesResponse: A list of Service resources.
type ListServicesResponse struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Items: List of Services.
Items []*Service `json:"items,omitempty"`
// Kind: The kind of this resource, in this case "ServiceList".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Service list.
Metadata *ListMeta `json:"metadata,omitempty"`
// Unreachable: Locations that could not be reached.
Unreachable []string `json:"unreachable,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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)
}
// LocalObjectReference: Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported LocalObjectReference contains enough
// information to let you locate the referenced object inside the same
// namespace.
type LocalObjectReference struct {
// Name: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Name of the referent. More info:
// https://kubernetes.io/docs/concepts/overview/working-with-objects/names/#names
Name string `json:"name,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 *LocalObjectReference) MarshalJSON() ([]byte, error) {
type NoMethod LocalObjectReference
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"`
// 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)
}
// ObjectMeta: k8s.io.apimachinery.pkg.apis.meta.v1.ObjectMeta is
// metadata that all persisted resources must have, which includes all
// objects users must create.
type ObjectMeta struct {
// Annotations: (Optional) Annotations is an unstructured key value map
// stored with a resource that may be set by external tools to store and
// retrieve arbitrary metadata. They are not queryable and should be
// preserved when modifying objects. More info:
// http://kubernetes.io/docs/user-guide/annotations
Annotations map[string]string `json:"annotations,omitempty"`
// ClusterName: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported The name of the cluster which the object
// belongs to. This is used to distinguish resources with same name and
// namespace in different clusters. This field is not set anywhere right
// now and apiserver is going to ignore it if set in create or update
// request.
ClusterName string `json:"clusterName,omitempty"`
// CreationTimestamp: (Optional) CreationTimestamp is a timestamp
// representing the server time when this object was created. It is not
// guaranteed to be set in happens-before order across separate
// operations. Clients may not set this value. It is represented in
// RFC3339 form and is in UTC. Populated by the system. Read-only. Null
// for lists. More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
CreationTimestamp string `json:"creationTimestamp,omitempty"`
// DeletionGracePeriodSeconds: (Optional) Cloud Run fully managed: not
// supported Cloud Run for Anthos: supported Number of seconds allowed
// for this object to gracefully terminate before it will be removed
// from the system. Only set when deletionTimestamp is also set. May
// only be shortened. Read-only.
DeletionGracePeriodSeconds int64 `json:"deletionGracePeriodSeconds,omitempty"`
// DeletionTimestamp: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported DeletionTimestamp is RFC 3339 date
// and time at which this resource will be deleted. This field is set by
// the server when a graceful deletion is requested by the user, and is
// not directly settable by a client. The resource is expected to be
// deleted (no longer visible from resource lists, and not reachable by
// name) after the time in this field, once the finalizers list is
// empty. As long as the finalizers list contains items, deletion is
// blocked. Once the deletionTimestamp is set, this value may not be
// unset or be set further into the future, although it may be shortened
// or the resource may be deleted prior to this time. For example, a
// user may request that a pod is deleted in 30 seconds. The Kubelet
// will react by sending a graceful termination signal to the containers
// in the pod. After that 30 seconds, the Kubelet will send a hard
// termination signal (SIGKILL) to the container and after cleanup,
// remove the pod from the API. In the presence of network partitions,
// this object may still exist after this timestamp, until an
// administrator or automated process can determine the resource is
// fully terminated. If not set, graceful deletion of the object has not
// been requested. Populated by the system when a graceful deletion is
// requested. Read-only. More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#metadata
DeletionTimestamp string `json:"deletionTimestamp,omitempty"`
// Finalizers: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Must be empty before the object is deleted
// from the registry. Each entry is an identifier for the responsible
// component that will remove the entry from the list. If the
// deletionTimestamp of the object is non-nil, entries in this list can
// only be removed. +patchStrategy=merge
Finalizers []string `json:"finalizers,omitempty"`
// GenerateName: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported GenerateName is an optional prefix, used by
// the server, to generate a unique name ONLY IF the Name field has not
// been provided. If this field is used, the name returned to the client
// will be different than the name passed. This value will also be
// combined with a unique suffix. The provided value has the same
// validation rules as the Name field, and may be truncated by the
// length of the suffix required to make the value unique on the server.
// If this field is specified and the generated name exists, the server
// will NOT return a 409 - instead, it will either return 201 Created or
// 500 with Reason ServerTimeout indicating a unique name could not be
// found in the time allotted, and the client should retry (optionally
// after the time indicated in the Retry-After header). Applied only if
// Name is not specified. More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#idempotency string generateName =
// 2;
GenerateName string `json:"generateName,omitempty"`
// Generation: (Optional) A sequence number representing a specific
// generation of the desired state. Populated by the system. Read-only.
Generation int64 `json:"generation,omitempty"`
// Labels: (Optional) Map of string keys and values that can be used to
// organize and categorize (scope and select) objects. May match
// selectors of replication controllers and routes. More info:
// http://kubernetes.io/docs/user-guide/labels
Labels map[string]string `json:"labels,omitempty"`
// Name: Name must be unique within a namespace, within a Cloud Run
// region. Is required when creating resources, although some resources
// may allow a client to request the generation of an appropriate name
// automatically. Name is primarily intended for creation idempotence
// and configuration definition. Cannot be updated. More info:
// http://kubernetes.io/docs/user-guide/identifiers#names +optional
Name string `json:"name,omitempty"`
// Namespace: Namespace defines the space within each name must be
// unique, within a Cloud Run region. In Cloud Run the namespace must be
// equal to either the project ID or project number.
Namespace string `json:"namespace,omitempty"`
// OwnerReferences: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported List of objects that own this object.
// If ALL objects in the list have been deleted, this object will be
// garbage collected.
OwnerReferences []*OwnerReference `json:"ownerReferences,omitempty"`
// ResourceVersion: (Optional) An opaque value that represents the
// internal version of this object that can be used by clients to
// determine when objects have changed. May be used for optimistic
// concurrency, change detection, and the watch operation on a resource
// or set of resources. Clients must treat these values as opaque and
// passed unmodified back to the server. They may only be valid for a
// particular resource or set of resources. Populated by the system.
// Read-only. Value must be treated as opaque by clients. More info:
// https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#concurrency-control-and-consistency
ResourceVersion string `json:"resourceVersion,omitempty"`
// SelfLink: (Optional) SelfLink is a URL representing this object.
// Populated by the system. Read-only. string selfLink = 4;
SelfLink string `json:"selfLink,omitempty"`
// Uid: (Optional) UID is the unique in time and space value for this
// object. It is typically generated by the server on successful
// creation of a resource and is not allowed to change on PUT
// operations. Populated by the system. Read-only. More info:
// http://kubernetes.io/docs/user-guide/identifiers#uids
Uid string `json:"uid,omitempty"`
// ForceSendFields is a list of field names (e.g. "Annotations") 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. "Annotations") 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 *ObjectMeta) MarshalJSON() ([]byte, error) {
type NoMethod ObjectMeta
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// OwnerReference: OwnerReference contains enough information to let you
// identify an owning object. Currently, an owning object must be in the
// same namespace, so there is no namespace field.
type OwnerReference struct {
// ApiVersion: API version of the referent.
ApiVersion string `json:"apiVersion,omitempty"`
// BlockOwnerDeletion: If true, AND if the owner has the
// "foregroundDeletion" finalizer, then the owner cannot be deleted from
// the key-value store until this reference is removed. Defaults to
// false. To set this field, a user needs "delete" permission of the
// owner, otherwise 422 (Unprocessable Entity) will be returned.
// +optional
BlockOwnerDeletion bool `json:"blockOwnerDeletion,omitempty"`
// Controller: If true, this reference points to the managing
// controller. +optional
Controller bool `json:"controller,omitempty"`
// Kind: Kind of the referent. More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
Kind string `json:"kind,omitempty"`
// Name: Name of the referent. More info:
// http://kubernetes.io/docs/user-guide/identifiers#names
Name string `json:"name,omitempty"`
// Uid: UID of the referent. More info:
// http://kubernetes.io/docs/user-guide/identifiers#uids
Uid string `json:"uid,omitempty"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *OwnerReference) MarshalJSON() ([]byte, error) {
type NoMethod OwnerReference
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Policy: An Identity and Access Management (IAM) policy, which
// specifies access controls for Google Cloud resources. A `Policy` is a
// collection of `bindings`. A `binding` binds one or more `members` to
// a single `role`. Members can be user accounts, service accounts,
// Google groups, and domains (such as G Suite). A `role` is a named
// list of permissions; each `role` can be an IAM predefined role or a
// user-created custom role. For some types of Google Cloud resources, a
// `binding` can also specify a `condition`, which is a logical
// expression that allows access to a resource only if the expression
// evaluates to `true`. A condition can add constraints based on
// attributes of the request, the resource, or both. To learn which
// resources support conditions in their IAM policies, see the [IAM
// documentation](https://cloud.google.com/iam/help/conditions/resource-p
// olicies). **JSON example:** { "bindings": [ { "role":
// "roles/resourcemanager.organizationAdmin", "members": [
// "user:mike@example.com", "group:admins@example.com",
// "domain:google.com",
// "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, {
// "role": "roles/resourcemanager.organizationViewer", "members": [
// "user:eve@example.com" ], "condition": { "title": "expirable access",
// "description": "Does not grant access after Sep 2020", "expression":
// "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ],
// "etag": "BwWWja0YfJA=", "version": 3 } **YAML example:** bindings: -
// members: - user:mike@example.com - group:admins@example.com -
// domain:google.com -
// serviceAccount:my-project-id@appspot.gserviceaccount.com role:
// roles/resourcemanager.organizationAdmin - members: -
// user:eve@example.com role: roles/resourcemanager.organizationViewer
// condition: title: expirable access description: Does not grant access
// after Sep 2020 expression: request.time <
// timestamp('2020-10-01T00:00:00.000Z') - etag: BwWWja0YfJA= - version:
// 3 For a description of IAM and its features, see the [IAM
// documentation](https://cloud.google.com/iam/docs/).
type Policy struct {
// AuditConfigs: Specifies cloud audit logging configuration for this
// policy.
AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"`
// Bindings: Associates a list of `members` to a `role`. Optionally, may
// specify a `condition` that determines how and when the `bindings` are
// applied. Each of the `bindings` must contain at least one member.
Bindings []*Binding `json:"bindings,omitempty"`
// Etag: `etag` is used for optimistic concurrency control as a way to
// help prevent simultaneous updates of a policy from overwriting each
// other. It is strongly suggested that systems make use of the `etag`
// in the read-modify-write cycle to perform policy updates in order to
// avoid race conditions: An `etag` is returned in the response to
// `getIamPolicy`, and systems are expected to put that etag in the
// request to `setIamPolicy` to ensure that their change will be applied
// to the same version of the policy. **Important:** If you use IAM
// Conditions, you must include the `etag` field whenever you call
// `setIamPolicy`. If you omit this field, then IAM allows you to
// overwrite a version `3` policy with a version `1` policy, and all of
// the conditions in the version `3` policy are lost.
Etag string `json:"etag,omitempty"`
// Version: Specifies the format of the policy. Valid values are `0`,
// `1`, and `3`. Requests that specify an invalid value are rejected.
// Any operation that affects conditional role bindings must specify
// version `3`. This requirement applies to the following operations: *
// Getting a policy that includes a conditional role binding * Adding a
// conditional role binding to a policy * Changing a conditional role
// binding in a policy * Removing any role binding, with or without a
// condition, from a policy that includes conditions **Important:** If
// you use IAM Conditions, you must include the `etag` field whenever
// you call `setIamPolicy`. If you omit this field, then IAM allows you
// to overwrite a version `3` policy with a version `1` policy, and all
// of the conditions in the version `3` policy are lost. If a policy
// does not include any conditions, operations on that policy may
// specify any valid version or leave the field unset. To learn which
// resources support conditions in their IAM policies, see the [IAM
// documentation](https://cloud.google.com/iam/help/conditions/resource-p
// olicies).
Version int64 `json:"version,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AuditConfigs") 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. "AuditConfigs") 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 *Policy) MarshalJSON() ([]byte, error) {
type NoMethod Policy
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Probe: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported Probe describes a health check to be performed against a
// container to determine whether it is alive or ready to receive
// traffic.
type Probe struct {
// Exec: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported One and only one of the following should be
// specified. Exec specifies the action to take. A field inlined from
// the Handler message.
Exec *ExecAction `json:"exec,omitempty"`
// FailureThreshold: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Minimum consecutive failures for the
// probe to be considered failed after having succeeded. Defaults to 3.
// Minimum value is 1.
FailureThreshold int64 `json:"failureThreshold,omitempty"`
// HttpGet: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported HTTPGet specifies the http request to perform.
// A field inlined from the Handler message.
HttpGet *HTTPGetAction `json:"httpGet,omitempty"`
// InitialDelaySeconds: (Optional) Cloud Run fully managed: not
// supported Cloud Run for Anthos: supported Number of seconds after the
// container has started before liveness probes are initiated. More
// info:
// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
InitialDelaySeconds int64 `json:"initialDelaySeconds,omitempty"`
// PeriodSeconds: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported How often (in seconds) to perform the
// probe. Default to 10 seconds. Minimum value is 1.
PeriodSeconds int64 `json:"periodSeconds,omitempty"`
// SuccessThreshold: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Minimum consecutive successes for the
// probe to be considered successful after having failed. Defaults to 1.
// Must be 1 for liveness. Minimum value is 1.
SuccessThreshold int64 `json:"successThreshold,omitempty"`
// TcpSocket: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported TCPSocket specifies an action involving a
// TCP port. TCP hooks not yet supported A field inlined from the
// Handler message.
TcpSocket *TCPSocketAction `json:"tcpSocket,omitempty"`
// TimeoutSeconds: (Optional) Cloud Run fully managed: not supported
// Cloud Run for Anthos: supported Number of seconds after which the
// probe times out. Defaults to 1 second. Minimum value is 1. More info:
// https://kubernetes.io/docs/concepts/workloads/pods/pod-lifecycle#container-probes
TimeoutSeconds int64 `json:"timeoutSeconds,omitempty"`
// ForceSendFields is a list of field names (e.g. "Exec") 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. "Exec") 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 *Probe) MarshalJSON() ([]byte, error) {
type NoMethod Probe
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)
}
// ResourceRequirements: ResourceRequirements describes the compute
// resource requirements.
type ResourceRequirements struct {
// Limits: (Optional) Cloud Run fully managed: Only memory and CPU are
// supported. Note: The only supported values for CPU are '1' and '2'.
// Cloud Run for Anthos: supported Limits describes the maximum amount
// of compute resources allowed. The values of the map is string form of
// the 'quantity' k8s type:
// https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
Limits map[string]string `json:"limits,omitempty"`
// Requests: (Optional) Cloud Run fully managed: Only memory and CPU are
// supported. Note: The only supported values for CPU are '1' and '2'.
// Cloud Run for Anthos: supported Requests describes the minimum amount
// of compute resources required. If Requests is omitted for a
// container, it defaults to Limits if that is explicitly specified,
// otherwise to an implementation-defined value. The values of the map
// is string form of the 'quantity' k8s type:
// https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go
Requests map[string]string `json:"requests,omitempty"`
// ForceSendFields is a list of field names (e.g. "Limits") 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. "Limits") 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 *ResourceRequirements) MarshalJSON() ([]byte, error) {
type NoMethod ResourceRequirements
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Revision: Revision is an immutable snapshot of code and
// configuration. A revision references a container image. Revisions are
// created by updates to a Configuration. See also:
// https://github.com/knative/serving/blob/master/docs/spec/overview.md#revision
type Revision struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Kind: The kind of this resource, in this case "Revision".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Revision, including name,
// namespace, labels, and annotations.
Metadata *ObjectMeta `json:"metadata,omitempty"`
// Spec: Spec holds the desired state of the Revision (from the client).
Spec *RevisionSpec `json:"spec,omitempty"`
// Status: Status communicates the observed state of the Revision (from
// the controller).
Status *RevisionStatus `json:"status,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *Revision) MarshalJSON() ([]byte, error) {
type NoMethod Revision
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RevisionSpec: RevisionSpec holds the desired state of the Revision
// (from the client).
type RevisionSpec struct {
// ContainerConcurrency: (Optional) ContainerConcurrency specifies the
// maximum allowed in-flight (concurrent) requests per container
// instance of the Revision. Cloud Run fully managed: supported,
// defaults to 80 Cloud Run for Anthos: supported, defaults to 0, which
// means concurrency to the application is not limited, and the system
// decides the target concurrency for the autoscaler.
ContainerConcurrency int64 `json:"containerConcurrency,omitempty"`
// Containers: Containers holds the single container that defines the
// unit of execution for this Revision. In the context of a Revision, we
// disallow a number of fields on this Container, including: name and
// lifecycle. In Cloud Run, only a single container may be provided. The
// runtime contract is documented here:
// https://github.com/knative/serving/blob/master/docs/runtime-contract.md
Containers []*Container `json:"containers,omitempty"`
// ServiceAccountName: Email address of the IAM service account
// associated with the revision of the service. The service account
// represents the identity of the running revision, and determines what
// permissions the revision has. If not provided, the revision will use
// the project's default service account.
ServiceAccountName string `json:"serviceAccountName,omitempty"`
// TimeoutSeconds: TimeoutSeconds holds the max duration the instance is
// allowed for responding to a request. Cloud Run fully managed:
// defaults to 300 seconds (5 minutes). Maximum allowed value is 900
// seconds (15 minutes). Cloud Run for Anthos: defaults to 300 seconds
// (5 minutes). Maximum allowed value is configurable by the cluster
// operator.
TimeoutSeconds int64 `json:"timeoutSeconds,omitempty"`
Volumes []*Volume `json:"volumes,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "ContainerConcurrency") 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. "ContainerConcurrency") 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 *RevisionSpec) MarshalJSON() ([]byte, error) {
type NoMethod RevisionSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RevisionStatus: RevisionStatus communicates the observed state of the
// Revision (from the controller).
type RevisionStatus struct {
// Conditions: Conditions communicates information about
// ongoing/complete reconciliation processes that bring the "spec"
// inline with the observed state of the world. As a Revision is being
// prepared, it will incrementally update conditions. Revision-specific
// conditions include: * "ResourcesAvailable": True when underlying
// resources have been provisioned. * "ContainerHealthy": True when the
// Revision readiness check completes. * "Active": True when the
// Revision may receive traffic.
Conditions []*GoogleCloudRunV1Condition `json:"conditions,omitempty"`
// ImageDigest: ImageDigest holds the resolved digest for the image
// specified within .Spec.Container.Image. The digest is resolved during
// the creation of Revision. This field holds the digest value
// regardless of whether a tag or digest was originally specified in the
// Container object.
ImageDigest string `json:"imageDigest,omitempty"`
// LogUrl: Specifies the generated logging url for this particular
// revision based on the revision url template specified in the
// controller's config. +optional
LogUrl string `json:"logUrl,omitempty"`
// ObservedGeneration: ObservedGeneration is the 'Generation' of the
// Revision that was last processed by the controller. Clients polling
// for completed reconciliation should poll until observedGeneration =
// metadata.generation, and the Ready condition's status is True or
// False.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// ServiceName: Not currently used by Cloud Run.
ServiceName string `json:"serviceName,omitempty"`
// ForceSendFields is a list of field names (e.g. "Conditions") 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. "Conditions") 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 *RevisionStatus) MarshalJSON() ([]byte, error) {
type NoMethod RevisionStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RevisionTemplate: RevisionTemplateSpec describes the data a revision
// should have when created from a template. Based on:
// https://github.com/kubernetes/api/blob/e771f807/core/v1/types.go#L3179-L3190
type RevisionTemplate struct {
// Metadata: Optional metadata for this Revision, including labels and
// annotations. Name will be generated by the Configuration. To set
// minimum instances for this revision, use the
// "autoscaling.knative.dev/minScale" annotation key. To set maximum
// instances for this revision, use the
// "autoscaling.knative.dev/maxScale" annotation key. To set Cloud SQL
// connections for the revision, use the
// "run.googleapis.com/cloudsql-instances" annotation key.
Metadata *ObjectMeta `json:"metadata,omitempty"`
// Spec: RevisionSpec holds the desired state of the Revision (from the
// client).
Spec *RevisionSpec `json:"spec,omitempty"`
// ForceSendFields is a list of field names (e.g. "Metadata") 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. "Metadata") 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 *RevisionTemplate) MarshalJSON() ([]byte, error) {
type NoMethod RevisionTemplate
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Route: Route is responsible for configuring ingress over a collection
// of Revisions. Some of the Revisions a Route distributes traffic over
// may be specified by referencing the Configuration responsible for
// creating them; in these cases the Route is additionally responsible
// for monitoring the Configuration for "latest ready" revision changes,
// and smoothly rolling out latest revisions. See also:
// https://github.com/knative/serving/blob/master/docs/spec/overview.md#route Cloud Run currently supports referencing a single Configuration to automatically deploy the "latest ready" Revision from that
// Configuration.
type Route struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Kind: The kind of this resource, in this case always "Route".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Route, including name,
// namespace, labels, and annotations.
Metadata *ObjectMeta `json:"metadata,omitempty"`
// Spec: Spec holds the desired state of the Route (from the client).
Spec *RouteSpec `json:"spec,omitempty"`
// Status: Status communicates the observed state of the Route (from the
// controller).
Status *RouteStatus `json:"status,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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 *Route) MarshalJSON() ([]byte, error) {
type NoMethod Route
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RouteSpec: RouteSpec holds the desired state of the Route (from the
// client).
type RouteSpec struct {
// Traffic: Traffic specifies how to distribute traffic over a
// collection of Knative Revisions and Configurations. Cloud Run
// currently supports a single configurationName.
Traffic []*TrafficTarget `json:"traffic,omitempty"`
// ForceSendFields is a list of field names (e.g. "Traffic") 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. "Traffic") 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 *RouteSpec) MarshalJSON() ([]byte, error) {
type NoMethod RouteSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// RouteStatus: RouteStatus communicates the observed state of the Route
// (from the controller).
type RouteStatus struct {
// Address: Similar to url, information on where the service is
// available on HTTP.
Address *Addressable `json:"address,omitempty"`
// Conditions: Conditions communicates information about
// ongoing/complete reconciliation processes that bring the "spec"
// inline with the observed state of the world.
Conditions []*GoogleCloudRunV1Condition `json:"conditions,omitempty"`
// ObservedGeneration: ObservedGeneration is the 'Generation' of the
// Route that was last processed by the controller. Clients polling for
// completed reconciliation should poll until observedGeneration =
// metadata.generation and the Ready condition's status is True or
// False. Note that providing a trafficTarget that only has a
// configurationName will result in a Route that does not increment
// either its metadata.generation or its observedGeneration, as new
// "latest ready" revisions from the Configuration are processed without
// an update to the Route's spec.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// Traffic: Traffic holds the configured traffic distribution. These
// entries will always contain RevisionName references. When
// ConfigurationName appears in the spec, this will hold the
// LatestReadyRevisionName that we last observed.
Traffic []*TrafficTarget `json:"traffic,omitempty"`
// Url: URL holds the url that will distribute traffic over the provided
// traffic targets. It generally has the form:
// https://{route-hash}-{project-hash}-{cluster-level-suffix}.a.run.app
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "Address") 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. "Address") 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 *RouteStatus) MarshalJSON() ([]byte, error) {
type NoMethod RouteStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SecretEnvSource: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported SecretEnvSource selects a Secret to populate the
// environment variables with. The contents of the target Secret's Data
// field will represent the key-value pairs as environment variables.
type SecretEnvSource struct {
// LocalObjectReference: This field should not be used directly as it is
// meant to be inlined directly into the message. Use the "name" field
// instead.
LocalObjectReference *LocalObjectReference `json:"localObjectReference,omitempty"`
// Name: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The Secret to select from.
Name string `json:"name,omitempty"`
// Optional: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Specify whether the Secret must be defined
Optional bool `json:"optional,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "LocalObjectReference") 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. "LocalObjectReference") 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 *SecretEnvSource) MarshalJSON() ([]byte, error) {
type NoMethod SecretEnvSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SecretKeySelector: Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported SecretKeySelector selects a key of a Secret.
type SecretKeySelector struct {
// Key: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The key of the secret to select from. Must be a valid
// secret key.
Key string `json:"key,omitempty"`
// LocalObjectReference: This field should not be used directly as it is
// meant to be inlined directly into the message. Use the "name" field
// instead.
LocalObjectReference *LocalObjectReference `json:"localObjectReference,omitempty"`
// Name: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported The name of the secret in the pod's namespace to select
// from.
Name string `json:"name,omitempty"`
// Optional: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Specify whether the Secret or its key must be
// defined
Optional bool `json:"optional,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") 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. "Key") 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 *SecretKeySelector) MarshalJSON() ([]byte, error) {
type NoMethod SecretKeySelector
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SecretVolumeSource: Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported The contents of the target Secret's Data field
// will be presented in a volume as files using the keys in the Data
// field as the file names.
type SecretVolumeSource struct {
// DefaultMode: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported Mode bits to use on created files by
// default. Must be a value between 0 and 0777. Defaults to 0644.
// Directories within the path are not affected by this setting. This
// might be in conflict with other options that affect the file mode,
// like fsGroup, and the result can be other mode bits set.
DefaultMode int64 `json:"defaultMode,omitempty"`
// Items: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported If unspecified, each key-value pair in the Data
// field of the referenced Secret will be projected into the volume as a
// file whose name is the key and content is the value. If specified,
// the listed keys will be projected into the specified paths, and
// unlisted keys will not be present. If a key is specified which is not
// present in the Secret, the volume setup will error unless it is
// marked optional.
Items []*KeyToPath `json:"items,omitempty"`
// Optional: (Optional) Cloud Run fully managed: not supported Cloud Run
// for Anthos: supported Specify whether the Secret or its keys must be
// defined.
Optional bool `json:"optional,omitempty"`
// SecretName: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Name of the secret in the container's namespace to
// use.
SecretName string `json:"secretName,omitempty"`
// ForceSendFields is a list of field names (e.g. "DefaultMode") 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. "DefaultMode") 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 *SecretVolumeSource) MarshalJSON() ([]byte, error) {
type NoMethod SecretVolumeSource
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SecurityContext: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported SecurityContext holds security configuration that
// will be applied to a container. Some fields are present in both
// SecurityContext and PodSecurityContext. When both are set, the values
// in SecurityContext take precedence.
type SecurityContext struct {
// RunAsUser: (Optional) Cloud Run fully managed: not supported Cloud
// Run for Anthos: supported The UID to run the entrypoint of the
// container process. Defaults to user specified in image metadata if
// unspecified. May also be set in PodSecurityContext. If set in both
// SecurityContext and PodSecurityContext, the value specified in
// SecurityContext takes precedence.
RunAsUser int64 `json:"runAsUser,omitempty"`
// ForceSendFields is a list of field names (e.g. "RunAsUser") 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. "RunAsUser") 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 *SecurityContext) MarshalJSON() ([]byte, error) {
type NoMethod SecurityContext
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Service: Service acts as a top-level container that manages a set of
// Routes and Configurations which implement a network service. Service
// exists to provide a singular abstraction which can be access
// controlled, reasoned about, and which encapsulates software lifecycle
// decisions such as rollout policy and team resource ownership. Service
// acts only as an orchestrator of the underlying Routes and
// Configurations (much as a kubernetes Deployment orchestrates
// ReplicaSets). The Service's controller will track the statuses of its
// owned Configuration and Route, reflecting their statuses and
// conditions as its own. See also:
// https://github.com/knative/serving/blob/master/docs/spec/overview.md#service
type Service struct {
// ApiVersion: The API version for this call such as
// "serving.knative.dev/v1".
ApiVersion string `json:"apiVersion,omitempty"`
// Kind: The kind of resource, in this case "Service".
Kind string `json:"kind,omitempty"`
// Metadata: Metadata associated with this Service, including name,
// namespace, labels, and annotations.
Metadata *ObjectMeta `json:"metadata,omitempty"`
// Spec: Spec holds the desired state of the Service (from the client).
Spec *ServiceSpec `json:"spec,omitempty"`
// Status: Status communicates the observed state of the Service (from
// the controller).
Status *ServiceStatus `json:"status,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "ApiVersion") 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. "ApiVersion") 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)
}
// ServiceSpec: ServiceSpec holds the desired state of the Route (from
// the client), which is used to manipulate the underlying Route and
// Configuration(s).
type ServiceSpec struct {
// Template: Template holds the latest specification for the Revision to
// be stamped out.
Template *RevisionTemplate `json:"template,omitempty"`
// Traffic: Traffic specifies how to distribute traffic over a
// collection of Knative Revisions and Configurations.
Traffic []*TrafficTarget `json:"traffic,omitempty"`
// ForceSendFields is a list of field names (e.g. "Template") 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. "Template") 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 *ServiceSpec) MarshalJSON() ([]byte, error) {
type NoMethod ServiceSpec
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// ServiceStatus: The current state of the Service. Output only.
type ServiceStatus struct {
// Address: From RouteStatus. Similar to url, information on where the
// service is available on HTTP.
Address *Addressable `json:"address,omitempty"`
// Conditions: Conditions communicates information about
// ongoing/complete reconciliation processes that bring the "spec"
// inline with the observed state of the world. Service-specific
// conditions include: * "ConfigurationsReady": true when the underlying
// Configuration is ready. * "RoutesReady": true when the underlying
// Route is ready. * "Ready": true when both the underlying Route and
// Configuration are ready.
Conditions []*GoogleCloudRunV1Condition `json:"conditions,omitempty"`
// LatestCreatedRevisionName: From ConfigurationStatus.
// LatestCreatedRevisionName is the last revision that was created from
// this Service's Configuration. It might not be ready yet, for that use
// LatestReadyRevisionName.
LatestCreatedRevisionName string `json:"latestCreatedRevisionName,omitempty"`
// LatestReadyRevisionName: From ConfigurationStatus.
// LatestReadyRevisionName holds the name of the latest Revision stamped
// out from this Service's Configuration that has had its "Ready"
// condition become "True".
LatestReadyRevisionName string `json:"latestReadyRevisionName,omitempty"`
// ObservedGeneration: ObservedGeneration is the 'Generation' of the
// Route that was last processed by the controller. Clients polling for
// completed reconciliation should poll until observedGeneration =
// metadata.generation and the Ready condition's status is True or
// False.
ObservedGeneration int64 `json:"observedGeneration,omitempty"`
// Traffic: From RouteStatus. Traffic holds the configured traffic
// distribution. These entries will always contain RevisionName
// references. When ConfigurationName appears in the spec, this will
// hold the LatestReadyRevisionName that we last observed.
Traffic []*TrafficTarget `json:"traffic,omitempty"`
// Url: From RouteStatus. URL holds the url that will distribute traffic
// over the provided traffic targets. It generally has the form
// https://{route-hash}-{project-hash}-{cluster-level-suffix}.a.run.app
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "Address") 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. "Address") 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 *ServiceStatus) MarshalJSON() ([]byte, error) {
type NoMethod ServiceStatus
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// SetIamPolicyRequest: Request message for `SetIamPolicy` method.
type SetIamPolicyRequest struct {
// Policy: REQUIRED: The complete policy to be applied to the
// `resource`. The size of the policy is limited to a few 10s of KB. An
// empty policy is a valid policy but certain Cloud Platform services
// (such as Projects) might reject them.
Policy *Policy `json:"policy,omitempty"`
// UpdateMask: OPTIONAL: A FieldMask specifying which fields of the
// policy to modify. Only the fields in the mask will be modified. If no
// mask is provided, the following default mask is used: `paths:
// "bindings, etag"
UpdateMask string `json:"updateMask,omitempty"`
// ForceSendFields is a list of field names (e.g. "Policy") 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. "Policy") 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 *SetIamPolicyRequest) MarshalJSON() ([]byte, error) {
type NoMethod SetIamPolicyRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Status: Status is a return value for calls that don't return other
// objects
type Status struct {
// Code: Suggested HTTP return code for this status, 0 if not set.
// +optional
Code int64 `json:"code,omitempty"`
// Details: Extended data associated with the reason. Each reason may
// define its own extended details. This field is optional and the data
// returned is not guaranteed to conform to any schema except that
// defined by the reason type. +optional
Details *StatusDetails `json:"details,omitempty"`
// Message: A human-readable description of the status of this
// operation. +optional
Message string `json:"message,omitempty"`
// Metadata: Standard list metadata. More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
// +optional
Metadata *ListMeta `json:"metadata,omitempty"`
// Reason: A machine-readable description of why this operation is in
// the "Failure" status. If this value is empty there is no information
// available. A Reason clarifies an HTTP status code but does not
// override it. +optional
Reason string `json:"reason,omitempty"`
// Status: Status of the operation. One of: "Success" or "Failure". More
// info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#spec-and-status
// +optional
Status string `json:"status,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// 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)
}
// StatusCause: StatusCause provides more information about an
// api.Status failure, including cases when multiple errors are
// encountered.
type StatusCause struct {
// Field: The field of the resource that has caused this error, as named
// by its JSON serialization. May include dot and postfix notation for
// nested attributes. Arrays are zero-indexed. Fields may appear more
// than once in an array of causes due to fields having multiple errors.
// Optional. Examples: "name" - the field "name" on the current resource
// "items[0].name" - the field "name" on the first array entry in
// "items" +optional
Field string `json:"field,omitempty"`
// Message: A human-readable description of the cause of the error. This
// field may be presented as-is to a reader. +optional
Message string `json:"message,omitempty"`
// Reason: A machine-readable description of the cause of the error. If
// this value is empty there is no information available. +optional
Reason string `json:"reason,omitempty"`
// ForceSendFields is a list of field names (e.g. "Field") 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. "Field") 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 *StatusCause) MarshalJSON() ([]byte, error) {
type NoMethod StatusCause
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// StatusDetails: StatusDetails is a set of additional properties that
// MAY be set by the server to provide additional information about a
// response. The Reason field of a Status object defines what attributes
// will be set. Clients must ignore fields that do not match the defined
// type of each attribute, and should assume that any attribute may be
// empty, invalid, or under defined.
type StatusDetails struct {
// Causes: The Causes array includes more details associated with the
// StatusReason failure. Not all StatusReasons may provide detailed
// causes. +optional
Causes []*StatusCause `json:"causes,omitempty"`
// Group: The group attribute of the resource associated with the status
// StatusReason. +optional
Group string `json:"group,omitempty"`
// Kind: The kind attribute of the resource associated with the status
// StatusReason. On some operations may differ from the requested
// resource Kind. More info:
// https://git.k8s.io/community/contributors/devel/api-conventions.md#types-kinds
// +optional
Kind string `json:"kind,omitempty"`
// Name: The name attribute of the resource associated with the status
// StatusReason (when there is a single name which can be described).
// +optional
Name string `json:"name,omitempty"`
// RetryAfterSeconds: If specified, the time in seconds before the
// operation should be retried. Some errors may indicate the client must
// take an alternate action - for those errors this field may indicate
// how long to wait before taking the alternate action. +optional
RetryAfterSeconds int64 `json:"retryAfterSeconds,omitempty"`
// Uid: UID of the resource. (when there is a single resource which can
// be described). More info:
// http://kubernetes.io/docs/user-guide/identifiers#uids +optional
Uid string `json:"uid,omitempty"`
// ForceSendFields is a list of field names (e.g. "Causes") 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. "Causes") 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 *StatusDetails) MarshalJSON() ([]byte, error) {
type NoMethod StatusDetails
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// TCPSocketAction: Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported TCPSocketAction describes an action based on
// opening a socket
type TCPSocketAction struct {
// Host: (Optional) Cloud Run fully managed: not supported Cloud Run for
// Anthos: supported Optional: Host name to connect to, defaults to the
// pod IP.
Host string `json:"host,omitempty"`
// Port: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported Number or name of the port to access on the container.
// Number must be in the range 1 to 65535. Name must be an
// IANA_SVC_NAME. This field is currently limited to integer types only
// because of proto's inability to properly support the IntOrString
// golang type.
Port int64 `json:"port,omitempty"`
// ForceSendFields is a list of field names (e.g. "Host") 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. "Host") 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 *TCPSocketAction) MarshalJSON() ([]byte, error) {
type NoMethod TCPSocketAction
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// TestIamPermissionsRequest: Request message for `TestIamPermissions`
// method.
type TestIamPermissionsRequest struct {
// Permissions: The set of permissions to check for the `resource`.
// Permissions with wildcards (such as '*' or 'storage.*') are not
// allowed. For more information see [IAM
// Overview](https://cloud.google.com/iam/docs/overview#permissions).
Permissions []string `json:"permissions,omitempty"`
// ForceSendFields is a list of field names (e.g. "Permissions") 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. "Permissions") 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 *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) {
type NoMethod TestIamPermissionsRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// TestIamPermissionsResponse: Response message for `TestIamPermissions`
// method.
type TestIamPermissionsResponse struct {
// Permissions: A subset of `TestPermissionsRequest.permissions` that
// the caller is allowed.
Permissions []string `json:"permissions,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Permissions") 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. "Permissions") 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 *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) {
type NoMethod TestIamPermissionsResponse
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// TrafficTarget: TrafficTarget holds a single entry of the routing
// table for a Route.
type TrafficTarget struct {
// ConfigurationName: ConfigurationName of a configuration to whose
// latest revision we will send this portion of traffic. When the
// "status.latestReadyRevisionName" of the referenced configuration
// changes, we will automatically migrate traffic from the prior "latest
// ready" revision to the new one. This field is never set in Route's
// status, only its spec. This is mutually exclusive with RevisionName.
// Cloud Run currently supports a single ConfigurationName.
ConfigurationName string `json:"configurationName,omitempty"`
// LatestRevision: LatestRevision may be optionally provided to indicate
// that the latest ready Revision of the Configuration should be used
// for this traffic target. When provided LatestRevision must be true if
// RevisionName is empty; it must be false when RevisionName is
// non-empty. +optional
LatestRevision bool `json:"latestRevision,omitempty"`
// Percent: Percent specifies percent of the traffic to this Revision or
// Configuration. This defaults to zero if unspecified. Cloud Run
// currently requires 100 percent for a single ConfigurationName
// TrafficTarget entry.
Percent int64 `json:"percent,omitempty"`
// RevisionName: RevisionName of a specific revision to which to send
// this portion of traffic. This is mutually exclusive with
// ConfigurationName. Providing RevisionName in spec is not currently
// supported by Cloud Run.
RevisionName string `json:"revisionName,omitempty"`
// Tag: Tag is optionally used to expose a dedicated url for referencing
// this target exclusively. Not currently supported in Cloud Run.
// +optional
Tag string `json:"tag,omitempty"`
// Url: Output only. URL displays the URL for accessing tagged traffic
// targets. URL is displayed in status, and is disallowed on spec. URL
// must contain a scheme (e.g. http://) and a hostname, but may not
// contain anything else (e.g. basic auth, url path, etc. Not currently
// supported in Cloud Run.
Url string `json:"url,omitempty"`
// ForceSendFields is a list of field names (e.g. "ConfigurationName")
// 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. "ConfigurationName") 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 *TrafficTarget) MarshalJSON() ([]byte, error) {
type NoMethod TrafficTarget
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Volume: Cloud Run fully managed: not supported Cloud Run for Anthos:
// supported Volume represents a named volume in a container.
type Volume struct {
// ConfigMap: Cloud Run fully managed: not supported Cloud Run for