// Copyright 2024 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 cloudfunctions provides access to the Cloud Functions API. // // For product documentation, see: https://cloud.google.com/functions // // # Library status // // These client libraries are officially supported by Google. However, this // library is considered complete and is in maintenance mode. This means // that we will address critical bugs and security issues but will not add // any new features. // // When possible, we recommend using our newer // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) // that are still actively being worked and iterated on. // // # Creating a client // // Usage example: // // import "google.golang.org/api/cloudfunctions/v2alpha" // ... // ctx := context.Background() // cloudfunctionsService, err := cloudfunctions.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 [google.golang.org/api/option.WithAPIKey]: // // cloudfunctionsService, err := cloudfunctions.NewService(ctx, option.WithAPIKey("AIza...")) // // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth // flow, use [google.golang.org/api/option.WithTokenSource]: // // config := &oauth2.Config{...} // // ... // token, err := config.Exchange(ctx, ...) // cloudfunctionsService, err := cloudfunctions.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) // // See [google.golang.org/api/option.ClientOption] for details on options. package cloudfunctions // import "google.golang.org/api/cloudfunctions/v2alpha" import ( "bytes" "context" "encoding/json" "errors" "fmt" "io" "net/http" "net/url" "strconv" "strings" googleapi "google.golang.org/api/googleapi" internal "google.golang.org/api/internal" 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 var _ = internal.Version const apiId = "cloudfunctions:v2alpha" const apiName = "cloudfunctions" const apiVersion = "v2alpha" const basePath = "https://cloudfunctions.googleapis.com/" const basePathTemplate = "https://cloudfunctions.UNIVERSE_DOMAIN/" const mtlsBasePath = "https://cloudfunctions.mtls.googleapis.com/" // OAuth2 scopes used by this API. const ( // See, edit, configure, and delete your Google Cloud data and see the email // address for your Google Account. CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" ) // NewService creates a new Service. func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { scopesOption := internaloption.WithDefaultScopes( "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.WithDefaultEndpointTemplate(basePathTemplate)) opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) opts = append(opts, internaloption.EnableNewAuthLibrary()) 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 Service. 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) (*Service, error) { if client == nil { return nil, errors.New("client is nil") } s := &Service{client: client, BasePath: basePath} s.Projects = NewProjectsService(s) return s, nil } type Service struct { client *http.Client BasePath string // API endpoint base URL UserAgent string // optional additional User-Agent fragment Projects *ProjectsService } func (s *Service) userAgent() string { if s.UserAgent == "" { return googleapi.UserAgent } return googleapi.UserAgent + " " + s.UserAgent } func NewProjectsService(s *Service) *ProjectsService { rs := &ProjectsService{s: s} rs.Locations = NewProjectsLocationsService(s) return rs } type ProjectsService struct { s *Service Locations *ProjectsLocationsService } func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { rs := &ProjectsLocationsService{s: s} rs.Functions = NewProjectsLocationsFunctionsService(s) rs.Operations = NewProjectsLocationsOperationsService(s) rs.Runtimes = NewProjectsLocationsRuntimesService(s) return rs } type ProjectsLocationsService struct { s *Service Functions *ProjectsLocationsFunctionsService Operations *ProjectsLocationsOperationsService Runtimes *ProjectsLocationsRuntimesService } func NewProjectsLocationsFunctionsService(s *Service) *ProjectsLocationsFunctionsService { rs := &ProjectsLocationsFunctionsService{s: s} return rs } type ProjectsLocationsFunctionsService struct { s *Service } func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { rs := &ProjectsLocationsOperationsService{s: s} return rs } type ProjectsLocationsOperationsService struct { s *Service } func NewProjectsLocationsRuntimesService(s *Service) *ProjectsLocationsRuntimesService { rs := &ProjectsLocationsRuntimesService{s: s} return rs } type ProjectsLocationsRuntimesService struct { s *Service } // AbortFunctionUpgradeRequest: Request for the `AbortFunctionUpgrade` method. type AbortFunctionUpgradeRequest struct { } // 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *AuditConfig) MarshalJSON() ([]byte, error) { type NoMethod AuditConfig return gensupport.MarshalJSON(NoMethod(*s), 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { type NoMethod AuditLogConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // AutomaticUpdatePolicy: Security patches are applied automatically to the // runtime without requiring the function to be redeployed. type AutomaticUpdatePolicy struct { } // Binding: Associates `members`, or principals, 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 principals 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-policies). Condition *Expr `json:"condition,omitempty"` // Members: Specifies the principals requesting access for a Google Cloud // 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. Does not include identities that come from external identity // providers (IdPs) through identity federation. * `user:{emailid}`: An email // address that represents a specific Google account. For example, // `alice@example.com` . * `serviceAccount:{emailid}`: An email address that // represents a Google service account. For example, // `my-other-app@appspot.gserviceaccount.com`. * // `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An // identifier for a Kubernetes service account // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * // `group:{emailid}`: An email address that represents a Google group. For // example, `admins@example.com`. * `domain:{domain}`: The G Suite domain // (primary) that represents all the users of that domain. For example, // `google.com` or `example.com`. * // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub // ject/{subject_attribute_value}`: A single identity in a workforce identity // pool. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // group/{group_id}`: All workforce identities in a group. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // attribute.{attribute_name}/{attribute_value}`: All workforce identities with // a specific attribute value. * // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ // *`: All identities in a workforce identity pool. * // `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo // rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single // identity in a workload identity pool. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool // group. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value} // `: All identities in a workload identity pool with a certain attribute. * // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global // /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity // pool. * `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. * // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool // _id}/subject/{subject_attribute_value}`: Deleted single identity in a // workforce identity pool. For example, // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po // ol-id/subject/my-subject-attribute-value`. Members []string `json:"members,omitempty"` // Role: Role that is assigned to the list of `members`, or principals. For // example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview // of the IAM roles and permissions, see the IAM documentation // (https://cloud.google.com/iam/docs/roles-overview). For a list of the // available pre-defined roles, see here // (https://cloud.google.com/iam/docs/understanding-roles). 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Binding) MarshalJSON() ([]byte, error) { type NoMethod Binding return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // BuildConfig: Describes the Build step of the function that builds a // container from the given source. type BuildConfig struct { AutomaticUpdatePolicy *AutomaticUpdatePolicy `json:"automaticUpdatePolicy,omitempty"` // Build: Output only. The Cloud Build name of the latest successful deployment // of the function. Build string `json:"build,omitempty"` // DockerRegistry: Docker Registry to use for this deployment. This // configuration is only applicable to 1st Gen functions, 2nd Gen functions can // only use Artifact Registry. If unspecified, it defaults to // `ARTIFACT_REGISTRY`. If `docker_repository` field is specified, this field // should either be left unspecified or set to `ARTIFACT_REGISTRY`. // // Possible values: // "DOCKER_REGISTRY_UNSPECIFIED" - Unspecified. // "CONTAINER_REGISTRY" - Docker images will be stored in multi-regional // Container Registry repositories named `gcf`. // "ARTIFACT_REGISTRY" - Docker images will be stored in regional Artifact // Registry repositories. By default, GCF will create and use repositories // named `gcf-artifacts` in every region in which a function is deployed. But // the repository to use can also be specified by the user using the // `docker_repository` field. DockerRegistry string `json:"dockerRegistry,omitempty"` // DockerRepository: Repository in Artifact Registry to which the function // docker image will be pushed after it is built by Cloud Build. If specified // by user, it is created and managed by user with a customer managed // encryption key. Otherwise, GCF will create and use a repository named // 'gcf-artifacts' for every deployed region. It must match the pattern // `projects/{project}/locations/{location}/repositories/{repository}`. // Cross-project repositories are not supported. Cross-location repositories // are not supported. Repository format must be 'DOCKER'. DockerRepository string `json:"dockerRepository,omitempty"` // EntryPoint: The name of the function (as defined in source code) that will // be executed. Defaults to the resource name suffix, if not specified. For // backward compatibility, if function with given name is not found, then the // system will try to use function named "function". For Node.js this is name // of a function exported by the module specified in `source_location`. EntryPoint string `json:"entryPoint,omitempty"` // EnvironmentVariables: User-provided build-time environment variables for the // function EnvironmentVariables map[string]string `json:"environmentVariables,omitempty"` OnDeployUpdatePolicy *OnDeployUpdatePolicy `json:"onDeployUpdatePolicy,omitempty"` // Runtime: The runtime in which to run the function. Required when deploying a // new function, optional when updating an existing function. For a complete // list of possible choices, see the `gcloud` command reference // (https://cloud.google.com/sdk/gcloud/reference/functions/deploy#--runtime). Runtime string `json:"runtime,omitempty"` // ServiceAccount: [Preview] Service account to be used for building the // container ServiceAccount string `json:"serviceAccount,omitempty"` // Source: The location of the function source code. Source *Source `json:"source,omitempty"` // SourceProvenance: Output only. A permanent fixed identifier for source. SourceProvenance *SourceProvenance `json:"sourceProvenance,omitempty"` // SourceToken: An identifier for Firebase function sources. Disclaimer: This // field is only supported for Firebase function deployments. SourceToken string `json:"sourceToken,omitempty"` // WorkerPool: Name of the Cloud Build Custom Worker Pool that should be used // to build the function. The format of this field is // `projects/{project}/locations/{region}/workerPools/{workerPool}` where // {project} and {region} are the project id and region respectively where the // worker pool is defined and {workerPool} is the short name of the worker // pool. If the project id is not the same as the function, then the Cloud // Functions Service Agent (service-@gcf-admin-robot.iam.gserviceaccount.com) // must be granted the role Cloud Build Custom Workers Builder // (roles/cloudbuild.customworkers.builder) in the project. WorkerPool string `json:"workerPool,omitempty"` // ForceSendFields is a list of field names (e.g. "AutomaticUpdatePolicy") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AutomaticUpdatePolicy") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *BuildConfig) MarshalJSON() ([]byte, error) { type NoMethod BuildConfig return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // CommitFunctionUpgradeRequest: Request for the `CommitFunctionUpgrade` // method. type CommitFunctionUpgradeRequest struct { } // Date: Represents a whole or partial calendar date, such as a birthday. The // time of day and time zone are either specified elsewhere or are // insignificant. The date is relative to the Gregorian Calendar. This can // represent one of the following: * A full date, with non-zero year, month, // and day values. * A month and day, with a zero year (for example, an // anniversary). * A year on its own, with a zero month and a zero day. * A // year and month, with a zero day (for example, a credit card expiration // date). Related types: * google.type.TimeOfDay * google.type.DateTime * // google.protobuf.Timestamp type Date struct { // Day: Day of a month. Must be from 1 to 31 and valid for the year and month, // or 0 to specify a year by itself or a year and month where the day isn't // significant. Day int64 `json:"day,omitempty"` // Month: Month of a year. Must be from 1 to 12, or 0 to specify a year without // a month and day. Month int64 `json:"month,omitempty"` // Year: Year of the date. Must be from 1 to 9999, or 0 to specify a date // without a year. Year int64 `json:"year,omitempty"` // ForceSendFields is a list of field names (e.g. "Day") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Day") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Date) MarshalJSON() ([]byte, error) { type NoMethod Date return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // EventFilter: Filters events based on exact matches on the CloudEvents // attributes. type EventFilter struct { // Attribute: Required. The name of a CloudEvents attribute. Attribute string `json:"attribute,omitempty"` // Operator: Optional. The operator used for matching the events with the value // of the filter. If not specified, only events that have an exact key-value // pair specified in the filter are matched. The only allowed value is // `match-path-pattern`. Operator string `json:"operator,omitempty"` // Value: Required. The value for the attribute. Value string `json:"value,omitempty"` // ForceSendFields is a list of field names (e.g. "Attribute") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Attribute") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *EventFilter) MarshalJSON() ([]byte, error) { type NoMethod EventFilter return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // EventTrigger: Describes EventTrigger, used to request events to be sent from // another service. type EventTrigger struct { // Channel: Optional. The name of the channel associated with the trigger in // `projects/{project}/locations/{location}/channels/{channel}` format. You // must provide a channel to receive events from Eventarc SaaS partners. Channel string `json:"channel,omitempty"` // EventFilters: Criteria used to filter events. EventFilters []*EventFilter `json:"eventFilters,omitempty"` // EventType: Required. The type of event to observe. For example: // `google.cloud.audit.log.v1.written` or // `google.cloud.pubsub.topic.v1.messagePublished`. EventType string `json:"eventType,omitempty"` // PubsubTopic: Optional. The name of a Pub/Sub topic in the same project that // will be used as the transport topic for the event delivery. Format: // `projects/{project}/topics/{topic}`. This is only valid for events of type // `google.cloud.pubsub.topic.v1.messagePublished`. The topic provided here // will not be deleted at function deletion. PubsubTopic string `json:"pubsubTopic,omitempty"` // RetryPolicy: Optional. If unset, then defaults to ignoring failures (i.e. // not retrying them). // // Possible values: // "RETRY_POLICY_UNSPECIFIED" - Not specified. // "RETRY_POLICY_DO_NOT_RETRY" - Do not retry. // "RETRY_POLICY_RETRY" - Retry on any failure, retry up to 7 days with an // exponential backoff (capped at 10 seconds). RetryPolicy string `json:"retryPolicy,omitempty"` // Service: Optional. The hostname of the service that 1st Gen function should // be observed. If no string is provided, the default service implementing the // API will be used. For example, `storage.googleapis.com` is the default for // all event types in the `google.storage` namespace. The field is only // applicable to 1st Gen functions. Service string `json:"service,omitempty"` // ServiceAccountEmail: Optional. The email of the trigger's service account. // The service account must have permission to invoke Cloud Run services, the // permission is `run.routes.invoke`. If empty, defaults to the Compute Engine // default service account: // `{project_number}-compute@developer.gserviceaccount.com`. ServiceAccountEmail string `json:"serviceAccountEmail,omitempty"` // Trigger: Output only. The resource name of the Eventarc trigger. The format // of this field is `projects/{project}/locations/{region}/triggers/{trigger}`. Trigger string `json:"trigger,omitempty"` // TriggerRegion: The region that the trigger will be in. The trigger will only // receive events originating in this region. It can be the same region as the // function, a different region or multi-region, or the global region. If not // provided, defaults to the same region as the function. TriggerRegion string `json:"triggerRegion,omitempty"` // ForceSendFields is a list of field names (e.g. "Channel") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Channel") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *EventTrigger) MarshalJSON() ([]byte, error) { type NoMethod EventTrigger return gensupport.MarshalJSON(NoMethod(*s), 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Expr) MarshalJSON() ([]byte, error) { type NoMethod Expr return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Function: Describes a Cloud Function that contains user computation executed // in response to an event. It encapsulates function and trigger // configurations. type Function struct { // BuildConfig: Describes the Build step of the function that builds a // container from the given source. BuildConfig *BuildConfig `json:"buildConfig,omitempty"` // CreateTime: Output only. The create timestamp of a Cloud Function. This is // only applicable to 2nd Gen functions. CreateTime string `json:"createTime,omitempty"` // Description: User-provided description of a function. Description string `json:"description,omitempty"` // Environment: Describe whether the function is 1st Gen or 2nd Gen. // // Possible values: // "ENVIRONMENT_UNSPECIFIED" - Unspecified // "GEN_1" - Gen 1 // "GEN_2" - Gen 2 Environment string `json:"environment,omitempty"` // EventTrigger: An Eventarc trigger managed by Google Cloud Functions that // fires events in response to a condition in another service. EventTrigger *EventTrigger `json:"eventTrigger,omitempty"` // KmsKeyName: [Preview] Resource name of a KMS crypto key (managed by the // user) used to encrypt/decrypt function resources. It must match the pattern // `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{cryp // to_key}`. KmsKeyName string `json:"kmsKeyName,omitempty"` // Labels: Labels associated with this Cloud Function. Labels map[string]string `json:"labels,omitempty"` // Name: A user-defined name of the function. Function names must be unique // globally and match pattern `projects/*/locations/*/functions/*` Name string `json:"name,omitempty"` // SatisfiesPzs: Output only. Reserved for future use. SatisfiesPzs bool `json:"satisfiesPzs,omitempty"` // ServiceConfig: Describes the Service being deployed. Currently deploys // services to Cloud Run (fully managed). ServiceConfig *ServiceConfig `json:"serviceConfig,omitempty"` // State: Output only. State of the function. // // Possible values: // "STATE_UNSPECIFIED" - Not specified. Invalid state. // "ACTIVE" - Function has been successfully deployed and is serving. // "FAILED" - Function deployment failed and the function is not serving. // "DEPLOYING" - Function is being created or updated. // "DELETING" - Function is being deleted. // "UNKNOWN" - Function deployment failed and the function serving state is // undefined. The function should be updated or deleted to move it out of this // state. State string `json:"state,omitempty"` // StateMessages: Output only. State Messages for this Cloud Function. StateMessages []*GoogleCloudFunctionsV2alphaStateMessage `json:"stateMessages,omitempty"` // UpdateTime: Output only. The last update timestamp of a Cloud Function. UpdateTime string `json:"updateTime,omitempty"` // UpgradeInfo: Output only. UpgradeInfo for this Cloud Function UpgradeInfo *UpgradeInfo `json:"upgradeInfo,omitempty"` // Url: Output only. The deployed url for the function. Url string `json:"url,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "BuildConfig") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuildConfig") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Function) MarshalJSON() ([]byte, error) { type NoMethod Function return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GenerateDownloadUrlRequest: Request of `GenerateDownloadUrl` method. type GenerateDownloadUrlRequest struct { } // GenerateDownloadUrlResponse: Response of `GenerateDownloadUrl` method. type GenerateDownloadUrlResponse struct { // DownloadUrl: The generated Google Cloud Storage signed URL that should be // used for function source code download. DownloadUrl string `json:"downloadUrl,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "DownloadUrl") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DownloadUrl") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GenerateDownloadUrlResponse) MarshalJSON() ([]byte, error) { type NoMethod GenerateDownloadUrlResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GenerateUploadUrlRequest: Request of `GenerateSourceUploadUrl` method. type GenerateUploadUrlRequest struct { // Environment: The function environment the generated upload url will be used // for. The upload url for 2nd Gen functions can also be used for 1st gen // functions, but not vice versa. If not specified, 2nd generation-style upload // URLs are generated. // // Possible values: // "ENVIRONMENT_UNSPECIFIED" - Unspecified // "GEN_1" - Gen 1 // "GEN_2" - Gen 2 Environment string `json:"environment,omitempty"` // KmsKeyName: [Preview] Resource name of a KMS crypto key (managed by the // user) used to encrypt/decrypt function source code objects in intermediate // Cloud Storage buckets. When you generate an upload url and upload your // source code, it gets copied to an intermediate Cloud Storage bucket. The // source code is then copied to a versioned directory in the sources bucket in // the consumer project during the function deployment. It must match the // pattern // `projects/{project}/locations/{location}/keyRings/{key_ring}/cryptoKeys/{cryp // to_key}`. The Google Cloud Functions service account // (service-{project_number}@gcf-admin-robot.iam.gserviceaccount.com) must be // granted the role 'Cloud KMS CryptoKey Encrypter/Decrypter // (roles/cloudkms.cryptoKeyEncrypterDecrypter)' on the // Key/KeyRing/Project/Organization (least access preferred). KmsKeyName string `json:"kmsKeyName,omitempty"` // ForceSendFields is a list of field names (e.g. "Environment") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Environment") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GenerateUploadUrlRequest) MarshalJSON() ([]byte, error) { type NoMethod GenerateUploadUrlRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GenerateUploadUrlResponse: Response of `GenerateSourceUploadUrl` method. type GenerateUploadUrlResponse struct { // StorageSource: The location of the source code in the upload bucket. Once // the archive is uploaded using the `upload_url` use this field to set the // `function.build_config.source.storage_source` during CreateFunction and // UpdateFunction. Generation defaults to 0, as Cloud Storage provides a new // generation only upon uploading a new object or version of an object. StorageSource *StorageSource `json:"storageSource,omitempty"` // UploadUrl: The generated Google Cloud Storage signed URL that should be used // for a function source code upload. The uploaded file should be a zip archive // which contains a function. UploadUrl string `json:"uploadUrl,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "StorageSource") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "StorageSource") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GenerateUploadUrlResponse) MarshalJSON() ([]byte, error) { type NoMethod GenerateUploadUrlResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2LocationMetadata: Extra GCF specific location // information. type GoogleCloudFunctionsV2LocationMetadata struct { // Environments: The Cloud Function environments this location supports. // // Possible values: // "ENVIRONMENT_UNSPECIFIED" - Unspecified // "GEN_1" - Gen 1 // "GEN_2" - Gen 2 Environments []string `json:"environments,omitempty"` // ForceSendFields is a list of field names (e.g. "Environments") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Environments") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2LocationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2LocationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2OperationMetadata: Represents the metadata of the // long-running operation. type GoogleCloudFunctionsV2OperationMetadata struct { // ApiVersion: API version used to start the operation. ApiVersion string `json:"apiVersion,omitempty"` // CancelRequested: Identifies whether the user has requested cancellation of // the operation. Operations that have successfully been cancelled have // google.longrunning.Operation.error value with a google.rpc.Status.code of 1, // corresponding to `Code.CANCELLED`. CancelRequested bool `json:"cancelRequested,omitempty"` // CreateTime: The time the operation was created. CreateTime string `json:"createTime,omitempty"` // EndTime: The time the operation finished running. EndTime string `json:"endTime,omitempty"` // OperationType: The operation type. // // Possible values: // "OPERATIONTYPE_UNSPECIFIED" - Unspecified // "CREATE_FUNCTION" - CreateFunction // "UPDATE_FUNCTION" - UpdateFunction // "DELETE_FUNCTION" - DeleteFunction // "REDIRECT_FUNCTION_UPGRADE_TRAFFIC" - RedirectFunctionUpgradeTraffic // "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC" - RollbackFunctionUpgradeTraffic // "SETUP_FUNCTION_UPGRADE_CONFIG" - SetupFunctionUpgradeConfig // "ABORT_FUNCTION_UPGRADE" - AbortFunctionUpgrade // "COMMIT_FUNCTION_UPGRADE" - CommitFunctionUpgrade OperationType string `json:"operationType,omitempty"` // RequestResource: The original request that started the operation. RequestResource googleapi.RawMessage `json:"requestResource,omitempty"` // SourceToken: An identifier for Firebase function sources. Disclaimer: This // field is only supported for Firebase function deployments. SourceToken string `json:"sourceToken,omitempty"` // Stages: Mechanism for reporting in-progress stages Stages []*GoogleCloudFunctionsV2Stage `json:"stages,omitempty"` // StatusDetail: Human-readable status of the operation, if any. StatusDetail string `json:"statusDetail,omitempty"` // Target: Server-defined resource path for the target of the operation. Target string `json:"target,omitempty"` // Verb: Name of the verb executed by the operation. Verb string `json:"verb,omitempty"` // ForceSendFields is a list of field names (e.g. "ApiVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2OperationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2OperationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2Stage: Each Stage of the deployment process type GoogleCloudFunctionsV2Stage struct { // Message: Message describing the Stage Message string `json:"message,omitempty"` // Name: Name of the Stage. This will be unique for each Stage. // // Possible values: // "NAME_UNSPECIFIED" - Not specified. Invalid name. // "ARTIFACT_REGISTRY" - Artifact Regsitry Stage // "BUILD" - Build Stage // "SERVICE" - Service Stage // "TRIGGER" - Trigger Stage // "SERVICE_ROLLBACK" - Service Rollback Stage // "TRIGGER_ROLLBACK" - Trigger Rollback Stage Name string `json:"name,omitempty"` // Resource: Resource of the Stage Resource string `json:"resource,omitempty"` // ResourceUri: Link to the current Stage resource ResourceUri string `json:"resourceUri,omitempty"` // State: Current state of the Stage // // Possible values: // "STATE_UNSPECIFIED" - Not specified. Invalid state. // "NOT_STARTED" - Stage has not started. // "IN_PROGRESS" - Stage is in progress. // "COMPLETE" - Stage has completed. State string `json:"state,omitempty"` // StateMessages: State messages from the current Stage. StateMessages []*GoogleCloudFunctionsV2StateMessage `json:"stateMessages,omitempty"` // ForceSendFields is a list of field names (e.g. "Message") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Message") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2Stage) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2Stage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2StateMessage: Informational messages about the state // of the Cloud Function or Operation. type GoogleCloudFunctionsV2StateMessage struct { // Message: The message. Message string `json:"message,omitempty"` // Severity: Severity of the state message. // // Possible values: // "SEVERITY_UNSPECIFIED" - Not specified. Invalid severity. // "ERROR" - ERROR-level severity. // "WARNING" - WARNING-level severity. // "INFO" - INFO-level severity. Severity string `json:"severity,omitempty"` // Type: One-word CamelCase type of the state message. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Message") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Message") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2StateMessage) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2StateMessage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2alphaLocationMetadata: Extra GCF specific location // information. type GoogleCloudFunctionsV2alphaLocationMetadata struct { // Environments: The Cloud Function environments this location supports. // // Possible values: // "ENVIRONMENT_UNSPECIFIED" - Unspecified // "GEN_1" - Gen 1 // "GEN_2" - Gen 2 Environments []string `json:"environments,omitempty"` // ForceSendFields is a list of field names (e.g. "Environments") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Environments") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2alphaLocationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2alphaLocationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2alphaOperationMetadata: Represents the metadata of the // long-running operation. type GoogleCloudFunctionsV2alphaOperationMetadata struct { // ApiVersion: API version used to start the operation. ApiVersion string `json:"apiVersion,omitempty"` // CancelRequested: Identifies whether the user has requested cancellation of // the operation. Operations that have successfully been cancelled have // google.longrunning.Operation.error value with a google.rpc.Status.code of 1, // corresponding to `Code.CANCELLED`. CancelRequested bool `json:"cancelRequested,omitempty"` // CreateTime: The time the operation was created. CreateTime string `json:"createTime,omitempty"` // EndTime: The time the operation finished running. EndTime string `json:"endTime,omitempty"` // OperationType: The operation type. // // Possible values: // "OPERATIONTYPE_UNSPECIFIED" - Unspecified // "CREATE_FUNCTION" - CreateFunction // "UPDATE_FUNCTION" - UpdateFunction // "DELETE_FUNCTION" - DeleteFunction // "REDIRECT_FUNCTION_UPGRADE_TRAFFIC" - RedirectFunctionUpgradeTraffic // "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC" - RollbackFunctionUpgradeTraffic // "SETUP_FUNCTION_UPGRADE_CONFIG" - SetupFunctionUpgradeConfig // "ABORT_FUNCTION_UPGRADE" - AbortFunctionUpgrade // "COMMIT_FUNCTION_UPGRADE" - CommitFunctionUpgrade OperationType string `json:"operationType,omitempty"` // RequestResource: The original request that started the operation. RequestResource googleapi.RawMessage `json:"requestResource,omitempty"` // SourceToken: An identifier for Firebase function sources. Disclaimer: This // field is only supported for Firebase function deployments. SourceToken string `json:"sourceToken,omitempty"` // Stages: Mechanism for reporting in-progress stages Stages []*GoogleCloudFunctionsV2alphaStage `json:"stages,omitempty"` // StatusDetail: Human-readable status of the operation, if any. StatusDetail string `json:"statusDetail,omitempty"` // Target: Server-defined resource path for the target of the operation. Target string `json:"target,omitempty"` // Verb: Name of the verb executed by the operation. Verb string `json:"verb,omitempty"` // ForceSendFields is a list of field names (e.g. "ApiVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2alphaOperationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2alphaOperationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2alphaStage: Each Stage of the deployment process type GoogleCloudFunctionsV2alphaStage struct { // Message: Message describing the Stage Message string `json:"message,omitempty"` // Name: Name of the Stage. This will be unique for each Stage. // // Possible values: // "NAME_UNSPECIFIED" - Not specified. Invalid name. // "ARTIFACT_REGISTRY" - Artifact Regsitry Stage // "BUILD" - Build Stage // "SERVICE" - Service Stage // "TRIGGER" - Trigger Stage // "SERVICE_ROLLBACK" - Service Rollback Stage // "TRIGGER_ROLLBACK" - Trigger Rollback Stage Name string `json:"name,omitempty"` // Resource: Resource of the Stage Resource string `json:"resource,omitempty"` // ResourceUri: Link to the current Stage resource ResourceUri string `json:"resourceUri,omitempty"` // State: Current state of the Stage // // Possible values: // "STATE_UNSPECIFIED" - Not specified. Invalid state. // "NOT_STARTED" - Stage has not started. // "IN_PROGRESS" - Stage is in progress. // "COMPLETE" - Stage has completed. State string `json:"state,omitempty"` // StateMessages: State messages from the current Stage. StateMessages []*GoogleCloudFunctionsV2alphaStateMessage `json:"stateMessages,omitempty"` // ForceSendFields is a list of field names (e.g. "Message") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Message") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2alphaStage) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2alphaStage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2alphaStateMessage: Informational messages about the // state of the Cloud Function or Operation. type GoogleCloudFunctionsV2alphaStateMessage struct { // Message: The message. Message string `json:"message,omitempty"` // Severity: Severity of the state message. // // Possible values: // "SEVERITY_UNSPECIFIED" - Not specified. Invalid severity. // "ERROR" - ERROR-level severity. // "WARNING" - WARNING-level severity. // "INFO" - INFO-level severity. Severity string `json:"severity,omitempty"` // Type: One-word CamelCase type of the state message. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Message") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Message") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2alphaStateMessage) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2alphaStateMessage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2betaLocationMetadata: Extra GCF specific location // information. type GoogleCloudFunctionsV2betaLocationMetadata struct { // Environments: The Cloud Function environments this location supports. // // Possible values: // "ENVIRONMENT_UNSPECIFIED" - Unspecified // "GEN_1" - Gen 1 // "GEN_2" - Gen 2 Environments []string `json:"environments,omitempty"` // ForceSendFields is a list of field names (e.g. "Environments") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Environments") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2betaLocationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2betaLocationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2betaOperationMetadata: Represents the metadata of the // long-running operation. type GoogleCloudFunctionsV2betaOperationMetadata struct { // ApiVersion: API version used to start the operation. ApiVersion string `json:"apiVersion,omitempty"` // CancelRequested: Identifies whether the user has requested cancellation of // the operation. Operations that have successfully been cancelled have // google.longrunning.Operation.error value with a google.rpc.Status.code of 1, // corresponding to `Code.CANCELLED`. CancelRequested bool `json:"cancelRequested,omitempty"` // CreateTime: The time the operation was created. CreateTime string `json:"createTime,omitempty"` // EndTime: The time the operation finished running. EndTime string `json:"endTime,omitempty"` // OperationType: The operation type. // // Possible values: // "OPERATIONTYPE_UNSPECIFIED" - Unspecified // "CREATE_FUNCTION" - CreateFunction // "UPDATE_FUNCTION" - UpdateFunction // "DELETE_FUNCTION" - DeleteFunction // "REDIRECT_FUNCTION_UPGRADE_TRAFFIC" - RedirectFunctionUpgradeTraffic // "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC" - RollbackFunctionUpgradeTraffic // "SETUP_FUNCTION_UPGRADE_CONFIG" - SetupFunctionUpgradeConfig // "ABORT_FUNCTION_UPGRADE" - AbortFunctionUpgrade // "COMMIT_FUNCTION_UPGRADE" - CommitFunctionUpgrade OperationType string `json:"operationType,omitempty"` // RequestResource: The original request that started the operation. RequestResource googleapi.RawMessage `json:"requestResource,omitempty"` // SourceToken: An identifier for Firebase function sources. Disclaimer: This // field is only supported for Firebase function deployments. SourceToken string `json:"sourceToken,omitempty"` // Stages: Mechanism for reporting in-progress stages Stages []*GoogleCloudFunctionsV2betaStage `json:"stages,omitempty"` // StatusDetail: Human-readable status of the operation, if any. StatusDetail string `json:"statusDetail,omitempty"` // Target: Server-defined resource path for the target of the operation. Target string `json:"target,omitempty"` // Verb: Name of the verb executed by the operation. Verb string `json:"verb,omitempty"` // ForceSendFields is a list of field names (e.g. "ApiVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2betaOperationMetadata) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2betaOperationMetadata return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2betaStage: Each Stage of the deployment process type GoogleCloudFunctionsV2betaStage struct { // Message: Message describing the Stage Message string `json:"message,omitempty"` // Name: Name of the Stage. This will be unique for each Stage. // // Possible values: // "NAME_UNSPECIFIED" - Not specified. Invalid name. // "ARTIFACT_REGISTRY" - Artifact Regsitry Stage // "BUILD" - Build Stage // "SERVICE" - Service Stage // "TRIGGER" - Trigger Stage // "SERVICE_ROLLBACK" - Service Rollback Stage // "TRIGGER_ROLLBACK" - Trigger Rollback Stage Name string `json:"name,omitempty"` // Resource: Resource of the Stage Resource string `json:"resource,omitempty"` // ResourceUri: Link to the current Stage resource ResourceUri string `json:"resourceUri,omitempty"` // State: Current state of the Stage // // Possible values: // "STATE_UNSPECIFIED" - Not specified. Invalid state. // "NOT_STARTED" - Stage has not started. // "IN_PROGRESS" - Stage is in progress. // "COMPLETE" - Stage has completed. State string `json:"state,omitempty"` // StateMessages: State messages from the current Stage. StateMessages []*GoogleCloudFunctionsV2betaStateMessage `json:"stateMessages,omitempty"` // ForceSendFields is a list of field names (e.g. "Message") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Message") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2betaStage) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2betaStage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // GoogleCloudFunctionsV2betaStateMessage: Informational messages about the // state of the Cloud Function or Operation. type GoogleCloudFunctionsV2betaStateMessage struct { // Message: The message. Message string `json:"message,omitempty"` // Severity: Severity of the state message. // // Possible values: // "SEVERITY_UNSPECIFIED" - Not specified. Invalid severity. // "ERROR" - ERROR-level severity. // "WARNING" - WARNING-level severity. // "INFO" - INFO-level severity. Severity string `json:"severity,omitempty"` // Type: One-word CamelCase type of the state message. Type string `json:"type,omitempty"` // ForceSendFields is a list of field names (e.g. "Message") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Message") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *GoogleCloudFunctionsV2betaStateMessage) MarshalJSON() ([]byte, error) { type NoMethod GoogleCloudFunctionsV2betaStateMessage return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ListFunctionsResponse: Response for the `ListFunctions` method. type ListFunctionsResponse struct { // Functions: The functions that match the request. Functions []*Function `json:"functions,omitempty"` // NextPageToken: A token, which can be sent as `page_token` to retrieve the // next page. If this field is omitted, there are no subsequent pages. NextPageToken string `json:"nextPageToken,omitempty"` // Unreachable: Locations that could not be reached. The response does not // include any functions from these locations. 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. "Functions") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Functions") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListFunctionsResponse) MarshalJSON() ([]byte, error) { type NoMethod ListFunctionsResponse return gensupport.MarshalJSON(NoMethod(*s), 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) { type NoMethod ListLocationsResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ListOperationsResponse: The response message for Operations.ListOperations. type ListOperationsResponse struct { // NextPageToken: The standard List next-page token. NextPageToken string `json:"nextPageToken,omitempty"` // Operations: A list of operations that matches the specified filter in the // request. Operations []*Operation `json:"operations,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "NextPageToken") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "NextPageToken") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { type NoMethod ListOperationsResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ListRuntimesResponse: Response for the `ListRuntimes` method. type ListRuntimesResponse struct { // Runtimes: The runtimes that match the request. Runtimes []*Runtime `json:"runtimes,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Runtimes") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Runtimes") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ListRuntimesResponse) MarshalJSON() ([]byte, error) { type NoMethod ListRuntimesResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Location: A resource that represents a Google Cloud 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Location) MarshalJSON() ([]byte, error) { type NoMethod Location return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // OnDeployUpdatePolicy: Security patches are only applied when a function is // redeployed. type OnDeployUpdatePolicy struct { // RuntimeVersion: Output only. contains the runtime version which was used // during latest function deployment. RuntimeVersion string `json:"runtimeVersion,omitempty"` // ForceSendFields is a list of field names (e.g. "RuntimeVersion") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "RuntimeVersion") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *OnDeployUpdatePolicy) MarshalJSON() ([]byte, error) { type NoMethod OnDeployUpdatePolicy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Operation: This resource represents a long-running operation that is the // result of a network API call. type Operation struct { // Done: If the value is `false`, it means the operation is still in progress. // If `true`, the operation is completed, and either `error` or `response` is // available. Done bool `json:"done,omitempty"` // Error: The error result of the operation in case of failure or cancellation. Error *Status `json:"error,omitempty"` // Metadata: Service-specific metadata associated with the operation. It // typically contains progress information and common metadata such as create // time. Some services might not provide such metadata. Any method that returns // a long-running operation should document the metadata type, if any. Metadata googleapi.RawMessage `json:"metadata,omitempty"` // Name: The server-assigned name, which is only unique within the same service // that originally returns it. If you use the default HTTP mapping, the `name` // should be a resource name ending with `operations/{unique_id}`. Name string `json:"name,omitempty"` // Response: The normal, successful response of the operation. If the original // method returns no data on success, such as `Delete`, the response is // `google.protobuf.Empty`. If the original method is standard // `Get`/`Create`/`Update`, the response should be the resource. For other // methods, the response should have the type `XxxResponse`, where `Xxx` is the // original method name. For example, if the original method name is // `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. Response googleapi.RawMessage `json:"response,omitempty"` // ServerResponse contains the HTTP response code and headers from the server. googleapi.ServerResponse `json:"-"` // ForceSendFields is a list of field names (e.g. "Done") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Done") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Operation) MarshalJSON() ([]byte, error) { type NoMethod Operation return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // OperationMetadataV1: Metadata describing an Operation type OperationMetadataV1 struct { // BuildId: The Cloud Build ID of the function created or updated by an API // call. This field is only populated for Create and Update operations. BuildId string `json:"buildId,omitempty"` // BuildName: The Cloud Build Name of the function deployment. This field is // only populated for Create and Update operations. // `projects//locations//builds/`. BuildName string `json:"buildName,omitempty"` // Request: The original request that started the operation. Request googleapi.RawMessage `json:"request,omitempty"` // SourceToken: An identifier for Firebase function sources. Disclaimer: This // field is only supported for Firebase function deployments. SourceToken string `json:"sourceToken,omitempty"` // Target: Target of the operation - for example // `projects/project-1/locations/region-1/functions/function-1` Target string `json:"target,omitempty"` // Type: Type of operation. // // Possible values: // "OPERATION_UNSPECIFIED" - Unknown operation type. // "CREATE_FUNCTION" - Triggered by CreateFunction call // "UPDATE_FUNCTION" - Triggered by UpdateFunction call // "DELETE_FUNCTION" - Triggered by DeleteFunction call. Type string `json:"type,omitempty"` // UpdateTime: The last update timestamp of the operation. UpdateTime string `json:"updateTime,omitempty"` // VersionId: Version id of the function created or updated by an API call. // This field is only populated for Create and Update operations. VersionId int64 `json:"versionId,omitempty,string"` // ForceSendFields is a list of field names (e.g. "BuildId") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuildId") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *OperationMetadataV1) MarshalJSON() ([]byte, error) { type NoMethod OperationMetadataV1 return gensupport.MarshalJSON(NoMethod(*s), 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`, or principals, to a // single `role`. Principals 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-policies). **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`, or principals, with 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 // principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; // up to 250 of these principals can be Google groups. Each occurrence of a // principal counts towards these limits. For example, if the `bindings` grant // 50 different roles to `user:alice@example.com`, and not to any other // principal, then you can add another 1,450 principals to the `bindings` in // the `Policy`. 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-policies). 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Policy) MarshalJSON() ([]byte, error) { type NoMethod Policy return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RedirectFunctionUpgradeTrafficRequest: Request for the // `RedirectFunctionUpgradeTraffic` method. type RedirectFunctionUpgradeTrafficRequest struct { } // RepoSource: Location of the source in a Google Cloud Source Repository. type RepoSource struct { // BranchName: Regex matching branches to build. The syntax of the regular // expressions accepted is the syntax accepted by RE2 and described at // https://github.com/google/re2/wiki/Syntax BranchName string `json:"branchName,omitempty"` // CommitSha: Explicit commit SHA to build. CommitSha string `json:"commitSha,omitempty"` // Dir: Directory, relative to the source root, in which to run the build. This // must be a relative path. If a step's `dir` is specified and is an absolute // path, this value is ignored for that step's execution. eg. helloworld (no // leading slash allowed) Dir string `json:"dir,omitempty"` // ProjectId: ID of the project that owns the Cloud Source Repository. If // omitted, the project ID requesting the build is assumed. ProjectId string `json:"projectId,omitempty"` // RepoName: Name of the Cloud Source Repository. RepoName string `json:"repoName,omitempty"` // TagName: Regex matching tags to build. The syntax of the regular expressions // accepted is the syntax accepted by RE2 and described at // https://github.com/google/re2/wiki/Syntax TagName string `json:"tagName,omitempty"` // ForceSendFields is a list of field names (e.g. "BranchName") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BranchName") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *RepoSource) MarshalJSON() ([]byte, error) { type NoMethod RepoSource return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // RollbackFunctionUpgradeTrafficRequest: Request for the // `RollbackFunctionUpgradeTraffic` method. type RollbackFunctionUpgradeTrafficRequest struct { } // Runtime: Describes a runtime and any special information (e.g., deprecation // status) related to it. type Runtime struct { // DecommissionDate: Decommission date for the runtime. DecommissionDate *Date `json:"decommissionDate,omitempty"` // DeprecationDate: Deprecation date for the runtime. DeprecationDate *Date `json:"deprecationDate,omitempty"` // DisplayName: The user facing name, eg 'Go 1.13', 'Node.js 12', etc. DisplayName string `json:"displayName,omitempty"` // Environment: The environment for the runtime. // // Possible values: // "ENVIRONMENT_UNSPECIFIED" - Unspecified // "GEN_1" - Gen 1 // "GEN_2" - Gen 2 Environment string `json:"environment,omitempty"` // Name: The name of the runtime, e.g., 'go113', 'nodejs12', etc. Name string `json:"name,omitempty"` // Stage: The stage of life this runtime is in, e.g., BETA, GA, etc. // // Possible values: // "RUNTIME_STAGE_UNSPECIFIED" - Not specified. // "DEVELOPMENT" - The runtime is in development. // "ALPHA" - The runtime is in the Alpha stage. // "BETA" - The runtime is in the Beta stage. // "GA" - The runtime is generally available. // "DEPRECATED" - The runtime is deprecated. // "DECOMMISSIONED" - The runtime is no longer supported. Stage string `json:"stage,omitempty"` // Warnings: Warning messages, e.g., a deprecation warning. Warnings []string `json:"warnings,omitempty"` // ForceSendFields is a list of field names (e.g. "DecommissionDate") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "DecommissionDate") to include in // API requests with the JSON null value. By default, fields with empty values // are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Runtime) MarshalJSON() ([]byte, error) { type NoMethod Runtime return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SecretEnvVar: Configuration for a secret environment variable. It has the // information necessary to fetch the secret value from secret manager and // expose it as an environment variable. type SecretEnvVar struct { // Key: Name of the environment variable. Key string `json:"key,omitempty"` // ProjectId: Project identifier (preferably project number but can also be the // project ID) of the project that contains the secret. If not set, it is // assumed that the secret is in the same project as the function. ProjectId string `json:"projectId,omitempty"` // Secret: Name of the secret in secret manager (not the full resource name). Secret string `json:"secret,omitempty"` // Version: Version of the secret (version number or the string 'latest'). It // is recommended to use a numeric version for secret environment variables as // any updates to the secret value is not reflected until new instances start. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Key") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SecretEnvVar) MarshalJSON() ([]byte, error) { type NoMethod SecretEnvVar return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SecretVersion: Configuration for a single version. type SecretVersion struct { // Path: Relative path of the file under the mount path where the secret value // for this version will be fetched and made available. For example, setting // the mount_path as '/etc/secrets' and path as `secret_foo` would mount the // secret value file at `/etc/secrets/secret_foo`. Path string `json:"path,omitempty"` // Version: Version of the secret (version number or the string 'latest'). It // is preferable to use `latest` version with secret volumes as secret value // changes are reflected immediately. Version string `json:"version,omitempty"` // ForceSendFields is a list of field names (e.g. "Path") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Path") to include in API requests // with the JSON null value. By default, fields with empty values are omitted // from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SecretVersion) MarshalJSON() ([]byte, error) { type NoMethod SecretVersion return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SecretVolume: Configuration for a secret volume. It has the information // necessary to fetch the secret value from secret manager and make it // available as files mounted at the requested paths within the application // container. type SecretVolume struct { // MountPath: The path within the container to mount the secret volume. For // example, setting the mount_path as `/etc/secrets` would mount the secret // value files under the `/etc/secrets` directory. This directory will also be // completely shadowed and unavailable to mount any other secrets. Recommended // mount path: /etc/secrets MountPath string `json:"mountPath,omitempty"` // ProjectId: Project identifier (preferably project number but can also be the // project ID) of the project that contains the secret. If not set, it is // assumed that the secret is in the same project as the function. ProjectId string `json:"projectId,omitempty"` // Secret: Name of the secret in secret manager (not the full resource name). Secret string `json:"secret,omitempty"` // Versions: List of secret versions to mount for this secret. If empty, the // `latest` version of the secret will be made available in a file named after // the secret under the mount point. Versions []*SecretVersion `json:"versions,omitempty"` // ForceSendFields is a list of field names (e.g. "MountPath") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "MountPath") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SecretVolume) MarshalJSON() ([]byte, error) { type NoMethod SecretVolume return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // ServiceConfig: Describes the Service being deployed. Currently Supported : // Cloud Run (fully managed). type ServiceConfig struct { // AllTrafficOnLatestRevision: Whether 100% of traffic is routed to the latest // revision. On CreateFunction and UpdateFunction, when set to true, the // revision being deployed will serve 100% of traffic, ignoring any traffic // split settings, if any. On GetFunction, true will be returned if the latest // revision is serving 100% of traffic. AllTrafficOnLatestRevision bool `json:"allTrafficOnLatestRevision,omitempty"` // AvailableCpu: The number of CPUs used in a single container instance. // Default value is calculated from available memory. Supports the same values // as Cloud Run, see // https://cloud.google.com/run/docs/reference/rest/v1/Container#resourcerequirements // Example: "1" indicates 1 vCPU AvailableCpu string `json:"availableCpu,omitempty"` // AvailableMemory: The amount of memory available for a function. Defaults to // 256M. Supported units are k, M, G, Mi, Gi. If no unit is supplied the value // is interpreted as bytes. See // https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go // a full description. AvailableMemory string `json:"availableMemory,omitempty"` // EnvironmentVariables: Environment variables that shall be available during // function execution. EnvironmentVariables map[string]string `json:"environmentVariables,omitempty"` // IngressSettings: The ingress settings for the function, controlling what // traffic can reach it. // // Possible values: // "INGRESS_SETTINGS_UNSPECIFIED" - Unspecified. // "ALLOW_ALL" - Allow HTTP traffic from public and private sources. // "ALLOW_INTERNAL_ONLY" - Allow HTTP traffic from only private VPC sources. // "ALLOW_INTERNAL_AND_GCLB" - Allow HTTP traffic from private VPC sources // and through GCLB. IngressSettings string `json:"ingressSettings,omitempty"` // MaxInstanceCount: The limit on the maximum number of function instances that // may coexist at a given time. In some cases, such as rapid traffic surges, // Cloud Functions may, for a short period of time, create more instances than // the specified max instances limit. If your function cannot tolerate this // temporary behavior, you may want to factor in a safety margin and set a // lower max instances value than your function can tolerate. See the Max // Instances (https://cloud.google.com/functions/docs/max-instances) Guide for // more details. MaxInstanceCount int64 `json:"maxInstanceCount,omitempty"` // MaxInstanceRequestConcurrency: Sets the maximum number of concurrent // requests that each instance can receive. Defaults to 1. MaxInstanceRequestConcurrency int64 `json:"maxInstanceRequestConcurrency,omitempty"` // MinInstanceCount: The limit on the minimum number of function instances that // may coexist at a given time. Function instances are kept in idle state for a // short period after they finished executing the request to reduce cold start // time for subsequent requests. Setting a minimum instance count will ensure // that the given number of instances are kept running in idle state always. // This can help with cold start times when jump in incoming request count // occurs after the idle instance would have been stopped in the default case. MinInstanceCount int64 `json:"minInstanceCount,omitempty"` // Revision: Output only. The name of service revision. Revision string `json:"revision,omitempty"` // SecretEnvironmentVariables: Secret environment variables configuration. SecretEnvironmentVariables []*SecretEnvVar `json:"secretEnvironmentVariables,omitempty"` // SecretVolumes: Secret volumes configuration. SecretVolumes []*SecretVolume `json:"secretVolumes,omitempty"` // SecurityLevel: Security level configure whether the function only accepts // https. This configuration is only applicable to 1st Gen functions with Http // trigger. By default https is optional for 1st Gen functions; 2nd Gen // functions are https ONLY. // // Possible values: // "SECURITY_LEVEL_UNSPECIFIED" - Unspecified. // "SECURE_ALWAYS" - Requests for a URL that match this handler that do not // use HTTPS are automatically redirected to the HTTPS URL with the same path. // Query parameters are reserved for the redirect. // "SECURE_OPTIONAL" - Both HTTP and HTTPS requests with URLs that match the // handler succeed without redirects. The application can examine the request // to determine which protocol was used and respond accordingly. SecurityLevel string `json:"securityLevel,omitempty"` // Service: Output only. Name of the service associated with a Function. The // format of this field is // `projects/{project}/locations/{region}/services/{service}` Service string `json:"service,omitempty"` // ServiceAccountEmail: The email of the service's service account. If empty, // defaults to `{project_number}-compute@developer.gserviceaccount.com`. ServiceAccountEmail string `json:"serviceAccountEmail,omitempty"` // TimeoutSeconds: The function execution timeout. Execution is considered // failed and can be terminated if the function is not completed at the end of // the timeout period. Defaults to 60 seconds. TimeoutSeconds int64 `json:"timeoutSeconds,omitempty"` // Uri: Output only. URI of the Service deployed. Uri string `json:"uri,omitempty"` // VpcConnector: The Serverless VPC Access connector that this cloud function // can connect to. The format of this field is // `projects/*/locations/*/connectors/*`. VpcConnector string `json:"vpcConnector,omitempty"` // VpcConnectorEgressSettings: The egress settings for the connector, // controlling what traffic is diverted through it. // // Possible values: // "VPC_CONNECTOR_EGRESS_SETTINGS_UNSPECIFIED" - Unspecified. // "PRIVATE_RANGES_ONLY" - Use the VPC Access Connector only for private IP // space from RFC1918. // "ALL_TRAFFIC" - Force the use of VPC Access Connector for all egress // traffic from the function. VpcConnectorEgressSettings string `json:"vpcConnectorEgressSettings,omitempty"` // ForceSendFields is a list of field names (e.g. "AllTrafficOnLatestRevision") // to unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "AllTrafficOnLatestRevision") to // include in API requests with the JSON null value. By default, fields with // empty values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *ServiceConfig) MarshalJSON() ([]byte, error) { type NoMethod ServiceConfig return gensupport.MarshalJSON(NoMethod(*s), 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 Google Cloud 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 or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { type NoMethod SetIamPolicyRequest return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SetupFunctionUpgradeConfigRequest: Request for the // `SetupFunctionUpgradeConfig` method. type SetupFunctionUpgradeConfigRequest struct { } // Source: The location of the function source code. type Source struct { // GitUri: If provided, get the source from GitHub repository. This option is // valid only for GCF 1st Gen function. Example: https://github.com///blob// GitUri string `json:"gitUri,omitempty"` // RepoSource: If provided, get the source from this location in a Cloud Source // Repository. RepoSource *RepoSource `json:"repoSource,omitempty"` // StorageSource: If provided, get the source from this location in Google // Cloud Storage. StorageSource *StorageSource `json:"storageSource,omitempty"` // ForceSendFields is a list of field names (e.g. "GitUri") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GitUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Source) MarshalJSON() ([]byte, error) { type NoMethod Source return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // SourceProvenance: Provenance of the source. Ways to find the original // source, or verify that some source was used for this build. type SourceProvenance struct { // GitUri: A copy of the build's `source.git_uri`, if exists, with any commits // resolved. GitUri string `json:"gitUri,omitempty"` // ResolvedRepoSource: A copy of the build's `source.repo_source`, if exists, // with any revisions resolved. ResolvedRepoSource *RepoSource `json:"resolvedRepoSource,omitempty"` // ResolvedStorageSource: A copy of the build's `source.storage_source`, if // exists, with any generations resolved. ResolvedStorageSource *StorageSource `json:"resolvedStorageSource,omitempty"` // ForceSendFields is a list of field names (e.g. "GitUri") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "GitUri") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *SourceProvenance) MarshalJSON() ([]byte, error) { type NoMethod SourceProvenance return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // Status: The `Status` type defines a logical error model that is suitable for // different programming environments, including REST APIs and RPC APIs. It is // used by gRPC (https://github.com/grpc). Each `Status` message contains three // pieces of data: error code, error message, and error details. You can find // out more about this error model and how to work with it in the API Design // Guide (https://cloud.google.com/apis/design/errors). type Status struct { // Code: The status code, which should be an enum value of google.rpc.Code. Code int64 `json:"code,omitempty"` // Details: A list of messages that carry the error details. There is a common // set of message types for APIs to use. Details []googleapi.RawMessage `json:"details,omitempty"` // Message: A developer-facing error message, which should be in English. Any // user-facing error message should be localized and sent in the // google.rpc.Status.details field, or localized by the client. Message string `json:"message,omitempty"` // ForceSendFields is a list of field names (e.g. "Code") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *Status) MarshalJSON() ([]byte, error) { type NoMethod Status return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // StorageSource: Location of the source in an archive file in Google Cloud // Storage. type StorageSource struct { // Bucket: Google Cloud Storage bucket containing the source (see Bucket Name // Requirements // (https://cloud.google.com/storage/docs/bucket-naming#requirements)). Bucket string `json:"bucket,omitempty"` // Generation: Google Cloud Storage generation for the object. If the // generation is omitted, the latest generation will be used. Generation int64 `json:"generation,omitempty,string"` // Object: Google Cloud Storage object containing the source. This object must // be a gzipped archive file (`.tar.gz`) containing source to build. Object string `json:"object,omitempty"` // ForceSendFields is a list of field names (e.g. "Bucket") to unconditionally // include in API requests. By default, fields with empty or default values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "Bucket") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *StorageSource) MarshalJSON() ([]byte, error) { type NoMethod StorageSource return gensupport.MarshalJSON(NoMethod(*s), 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { type NoMethod TestIamPermissionsRequest return gensupport.MarshalJSON(NoMethod(*s), 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 or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. 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. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { type NoMethod TestIamPermissionsResponse return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } // UpgradeInfo: Information related to: * A function's eligibility for 1st Gen // to 2nd Gen migration * Current state of migration for function undergoing // migration. type UpgradeInfo struct { // BuildConfig: Describes the Build step of the function that builds a // container to prepare for 2nd gen upgrade. BuildConfig *BuildConfig `json:"buildConfig,omitempty"` // EventTrigger: Describes the Event trigger which has been setup to prepare // for 2nd gen upgrade. EventTrigger *EventTrigger `json:"eventTrigger,omitempty"` // ServiceConfig: Describes the Cloud Run service which has been setup to // prepare for 2nd gen upgrade. ServiceConfig *ServiceConfig `json:"serviceConfig,omitempty"` // UpgradeState: UpgradeState of the function // // Possible values: // "UPGRADE_STATE_UNSPECIFIED" - Unspecified state. Most functions are in // this upgrade state. // "ELIGIBLE_FOR_2ND_GEN_UPGRADE" - Functions in this state are eligible for // 1st Gen -> 2nd Gen upgrade. // "UPGRADE_OPERATION_IN_PROGRESS" - An upgrade related operation is in // progress. // "SETUP_FUNCTION_UPGRADE_CONFIG_SUCCESSFUL" - SetupFunctionUpgradeConfig // API was successful and a 2nd Gen function has been created based on 1st Gen // function instance. // "SETUP_FUNCTION_UPGRADE_CONFIG_ERROR" - SetupFunctionUpgradeConfig API was // un-successful. // "ABORT_FUNCTION_UPGRADE_ERROR" - AbortFunctionUpgrade API was // un-successful. // "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_SUCCESSFUL" - // RedirectFunctionUpgradeTraffic API was successful and traffic is served by // 2nd Gen function stack. // "REDIRECT_FUNCTION_UPGRADE_TRAFFIC_ERROR" - RedirectFunctionUpgradeTraffic // API was un-successful. // "ROLLBACK_FUNCTION_UPGRADE_TRAFFIC_ERROR" - RollbackFunctionUpgradeTraffic // API was un-successful. // "COMMIT_FUNCTION_UPGRADE_ERROR" - CommitFunctionUpgrade API was // un-successful. UpgradeState string `json:"upgradeState,omitempty"` // ForceSendFields is a list of field names (e.g. "BuildConfig") to // unconditionally include in API requests. By default, fields with empty or // default values are omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more // details. ForceSendFields []string `json:"-"` // NullFields is a list of field names (e.g. "BuildConfig") to include in API // requests with the JSON null value. By default, fields with empty values are // omitted from API requests. See // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. NullFields []string `json:"-"` } func (s *UpgradeInfo) MarshalJSON() ([]byte, error) { type NoMethod UpgradeInfo return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) } type ProjectsLocationsListCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists information about the supported locations for this service. // // - name: The resource that owns the locations collection, if applicable. func (r *ProjectsLocationsService) List(name string) *ProjectsLocationsListCall { c := &ProjectsLocationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Filter sets the optional parameter "filter": A filter to narrow down results // to a preferred subset. The filtering language accepts strings like // "displayName=tokyo", and is documented in more detail in AIP-160 // (https://google.aip.dev/160). func (c *ProjectsLocationsListCall) Filter(filter string) *ProjectsLocationsListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": The maximum number of // results to return. If not set, the service selects a default. func (c *ProjectsLocationsListCall) PageSize(pageSize int64) *ProjectsLocationsListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": A page token received // from the `next_page_token` field in the response. Send that page token to // receive the subsequent page. func (c *ProjectsLocationsListCall) PageToken(pageToken string) *ProjectsLocationsListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsListCall) Context(ctx context.Context) *ProjectsLocationsListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}/locations") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListLocationsResponse.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsLocationsListCall) Do(opts ...googleapi.CallOption) (*ListLocationsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListLocationsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsLocationsListCall) Pages(ctx context.Context, f func(*ListLocationsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsLocationsFunctionsAbortFunctionUpgradeCall struct { s *Service name string abortfunctionupgraderequest *AbortFunctionUpgradeRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // AbortFunctionUpgrade: Aborts generation upgrade process for a function with // the given name from the specified project. Deletes all 2nd Gen copy related // configuration and resources which were created during the upgrade process. // // - name: The name of the function for which upgrade should be aborted. func (r *ProjectsLocationsFunctionsService) AbortFunctionUpgrade(name string, abortfunctionupgraderequest *AbortFunctionUpgradeRequest) *ProjectsLocationsFunctionsAbortFunctionUpgradeCall { c := &ProjectsLocationsFunctionsAbortFunctionUpgradeCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.abortfunctionupgraderequest = abortfunctionupgraderequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsAbortFunctionUpgradeCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsAbortFunctionUpgradeCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsAbortFunctionUpgradeCall) Context(ctx context.Context) *ProjectsLocationsFunctionsAbortFunctionUpgradeCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsAbortFunctionUpgradeCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsAbortFunctionUpgradeCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.abortfunctionupgraderequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}:abortFunctionUpgrade") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.abortFunctionUpgrade" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsAbortFunctionUpgradeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsCommitFunctionUpgradeCall struct { s *Service name string commitfunctionupgraderequest *CommitFunctionUpgradeRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // CommitFunctionUpgrade: Finalizes the upgrade after which function upgrade // can not be rolled back. This is the last step of the multi step process to // upgrade 1st Gen functions to 2nd Gen. Deletes all original 1st Gen related // configuration and resources. // // - name: The name of the function for which upgrade should be finalized. func (r *ProjectsLocationsFunctionsService) CommitFunctionUpgrade(name string, commitfunctionupgraderequest *CommitFunctionUpgradeRequest) *ProjectsLocationsFunctionsCommitFunctionUpgradeCall { c := &ProjectsLocationsFunctionsCommitFunctionUpgradeCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.commitfunctionupgraderequest = commitfunctionupgraderequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsCommitFunctionUpgradeCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsCommitFunctionUpgradeCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsCommitFunctionUpgradeCall) Context(ctx context.Context) *ProjectsLocationsFunctionsCommitFunctionUpgradeCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsCommitFunctionUpgradeCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsCommitFunctionUpgradeCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.commitfunctionupgraderequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}:commitFunctionUpgrade") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.commitFunctionUpgrade" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsCommitFunctionUpgradeCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsCreateCall struct { s *Service parent string function *Function urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Create: Creates a new function. If a function with the given name already // exists in the specified project, the long running operation will return // `ALREADY_EXISTS` error. // // - parent: The project and location in which the function should be created, // specified in the format `projects/*/locations/*`. func (r *ProjectsLocationsFunctionsService) Create(parent string, function *Function) *ProjectsLocationsFunctionsCreateCall { c := &ProjectsLocationsFunctionsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent c.function = function return c } // FunctionId sets the optional parameter "functionId": The ID to use for the // function, which will become the final component of the function's resource // name. This value should be 4-63 characters, and valid characters are /a-z-/. func (c *ProjectsLocationsFunctionsCreateCall) FunctionId(functionId string) *ProjectsLocationsFunctionsCreateCall { c.urlParams_.Set("functionId", functionId) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsCreateCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsCreateCall) Context(ctx context.Context) *ProjectsLocationsFunctionsCreateCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsCreateCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsCreateCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.function) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+parent}/functions") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.create" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsDeleteCall struct { s *Service name string urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Delete: Deletes a function with the given name from the specified project. // If the given function is used by some trigger, the trigger will be updated // to remove this function. // // - name: The name of the function which should be deleted. func (r *ProjectsLocationsFunctionsService) Delete(name string) *ProjectsLocationsFunctionsDeleteCall { c := &ProjectsLocationsFunctionsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsDeleteCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsDeleteCall) Context(ctx context.Context) *ProjectsLocationsFunctionsDeleteCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsDeleteCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsDeleteCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("DELETE", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.delete" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsGenerateDownloadUrlCall struct { s *Service name string generatedownloadurlrequest *GenerateDownloadUrlRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // GenerateDownloadUrl: Returns a signed URL for downloading deployed function // source code. The URL is only valid for a limited period and should be used // within 30 minutes of generation. For more information about the signed URL // usage see: https://cloud.google.com/storage/docs/access-control/signed-urls // // - name: The name of function for which source code Google Cloud Storage // signed URL should be generated. func (r *ProjectsLocationsFunctionsService) GenerateDownloadUrl(name string, generatedownloadurlrequest *GenerateDownloadUrlRequest) *ProjectsLocationsFunctionsGenerateDownloadUrlCall { c := &ProjectsLocationsFunctionsGenerateDownloadUrlCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.generatedownloadurlrequest = generatedownloadurlrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsGenerateDownloadUrlCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsGenerateDownloadUrlCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsGenerateDownloadUrlCall) Context(ctx context.Context) *ProjectsLocationsFunctionsGenerateDownloadUrlCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsGenerateDownloadUrlCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsGenerateDownloadUrlCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.generatedownloadurlrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}:generateDownloadUrl") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.generateDownloadUrl" call. // Any non-2xx status code is an error. Response headers are in either // *GenerateDownloadUrlResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsGenerateDownloadUrlCall) Do(opts ...googleapi.CallOption) (*GenerateDownloadUrlResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &GenerateDownloadUrlResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsGenerateUploadUrlCall struct { s *Service parent string generateuploadurlrequest *GenerateUploadUrlRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // GenerateUploadUrl: Returns a signed URL for uploading a function source // code. For more information about the signed URL usage see: // https://cloud.google.com/storage/docs/access-control/signed-urls. Once the // function source code upload is complete, the used signed URL should be // provided in CreateFunction or UpdateFunction request as a reference to the // function source code. When uploading source code to the generated signed // URL, please follow these restrictions: * Source file type should be a zip // file. * No credentials should be attached - the signed URLs provide access // to the target bucket using internal service identity; if credentials were // attached, the identity from the credentials would be used, but that identity // does not have permissions to upload files to the URL. When making a HTTP PUT // request, specify this header: * `content-type: application/zip` Do not // specify this header: * `Authorization: Bearer YOUR_TOKEN` // // - parent: The project and location in which the Google Cloud Storage signed // URL should be generated, specified in the format `projects/*/locations/*`. func (r *ProjectsLocationsFunctionsService) GenerateUploadUrl(parent string, generateuploadurlrequest *GenerateUploadUrlRequest) *ProjectsLocationsFunctionsGenerateUploadUrlCall { c := &ProjectsLocationsFunctionsGenerateUploadUrlCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent c.generateuploadurlrequest = generateuploadurlrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsGenerateUploadUrlCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsGenerateUploadUrlCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsGenerateUploadUrlCall) Context(ctx context.Context) *ProjectsLocationsFunctionsGenerateUploadUrlCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsGenerateUploadUrlCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsGenerateUploadUrlCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.generateuploadurlrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+parent}/functions:generateUploadUrl") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.generateUploadUrl" call. // Any non-2xx status code is an error. Response headers are in either // *GenerateUploadUrlResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsGenerateUploadUrlCall) Do(opts ...googleapi.CallOption) (*GenerateUploadUrlResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &GenerateUploadUrlResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsGetCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Returns a function with the given name from the requested project. // // - name: The name of the function which details should be obtained. func (r *ProjectsLocationsFunctionsService) Get(name string) *ProjectsLocationsFunctionsGetCall { c := &ProjectsLocationsFunctionsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Revision sets the optional parameter "revision": The optional version of the // 1st gen function whose details should be obtained. The version of a 1st gen // function is an integer that starts from 1 and gets incremented on // redeployments. GCF may keep historical configs for old versions of 1st gen // function. This field can be specified to fetch the historical configs. This // field is valid only for GCF 1st gen function. func (c *ProjectsLocationsFunctionsGetCall) Revision(revision string) *ProjectsLocationsFunctionsGetCall { c.urlParams_.Set("revision", revision) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsFunctionsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsFunctionsGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsGetCall) Context(ctx context.Context) *ProjectsLocationsFunctionsGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.get" call. // Any non-2xx status code is an error. Response headers are in either // *Function.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsGetCall) Do(opts ...googleapi.CallOption) (*Function, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Function{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsGetIamPolicyCall struct { s *Service resource string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // GetIamPolicy: Gets the access control policy for a resource. Returns an // empty policy if the resource exists and does not have a policy set. // // - resource: REQUIRED: The resource for which the policy is being requested. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ProjectsLocationsFunctionsService) GetIamPolicy(resource string) *ProjectsLocationsFunctionsGetIamPolicyCall { c := &ProjectsLocationsFunctionsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource return c } // OptionsRequestedPolicyVersion sets the optional parameter // "options.requestedPolicyVersion": The maximum policy version that will be // used to format the policy. Valid values are 0, 1, and 3. Requests specifying // an invalid value will be rejected. Requests for policies with any // conditional role bindings must specify version 3. Policies with no // conditional role bindings may specify any valid value or leave the field // unset. The policy in the response might use the policy version that you // specified, or it might use a lower policy version. For example, if you // specify version 3, but the policy has no conditional role bindings, the // response uses version 1. To learn which resources support conditions in // their IAM policies, see the IAM documentation // (https://cloud.google.com/iam/help/conditions/resource-policies). func (c *ProjectsLocationsFunctionsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsFunctionsGetIamPolicyCall { c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsGetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsFunctionsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsFunctionsGetIamPolicyCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsFunctionsGetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsGetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+resource}:getIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.getIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *Policy.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsListCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Returns a list of functions that belong to the requested project. // // - parent: The project and location from which the function should be listed, // specified in the format `projects/*/locations/*` If you want to list // functions in all locations, use "-" in place of a location. When listing // functions in all locations, if one or more location(s) are unreachable, // the response will contain functions from all reachable locations along // with the names of any unreachable locations. func (r *ProjectsLocationsFunctionsService) List(parent string) *ProjectsLocationsFunctionsListCall { c := &ProjectsLocationsFunctionsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter for Functions that // match the filter expression, following the syntax outlined in // https://google.aip.dev/160. func (c *ProjectsLocationsFunctionsListCall) Filter(filter string) *ProjectsLocationsFunctionsListCall { c.urlParams_.Set("filter", filter) return c } // OrderBy sets the optional parameter "orderBy": The sorting order of the // resources returned. Value should be a comma separated list of fields. The // default sorting oder is ascending. See https://google.aip.dev/132#ordering. func (c *ProjectsLocationsFunctionsListCall) OrderBy(orderBy string) *ProjectsLocationsFunctionsListCall { c.urlParams_.Set("orderBy", orderBy) return c } // PageSize sets the optional parameter "pageSize": Maximum number of functions // to return per call. The largest allowed page_size is 1,000, if the page_size // is omitted or specified as greater than 1,000 then it will be replaced as // 1,000. The size of the list response can be less than specified when used // with filters. func (c *ProjectsLocationsFunctionsListCall) PageSize(pageSize int64) *ProjectsLocationsFunctionsListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": The value returned by the // last `ListFunctionsResponse`; indicates that this is a continuation of a // prior `ListFunctions` call, and that the system should return the next page // of data. func (c *ProjectsLocationsFunctionsListCall) PageToken(pageToken string) *ProjectsLocationsFunctionsListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsFunctionsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsFunctionsListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsListCall) Context(ctx context.Context) *ProjectsLocationsFunctionsListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+parent}/functions") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListFunctionsResponse.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsLocationsFunctionsListCall) Do(opts ...googleapi.CallOption) (*ListFunctionsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListFunctionsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsLocationsFunctionsListCall) Pages(ctx context.Context, f func(*ListFunctionsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsLocationsFunctionsPatchCall struct { s *Service name string function *Function urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // Patch: Updates existing function. // // - name: A user-defined name of the function. Function names must be unique // globally and match pattern `projects/*/locations/*/functions/*`. func (r *ProjectsLocationsFunctionsService) Patch(name string, function *Function) *ProjectsLocationsFunctionsPatchCall { c := &ProjectsLocationsFunctionsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.function = function return c } // UpdateMask sets the optional parameter "updateMask": The list of fields to // be updated. If no field mask is provided, all provided fields in the request // will be updated. func (c *ProjectsLocationsFunctionsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsFunctionsPatchCall { c.urlParams_.Set("updateMask", updateMask) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsPatchCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsPatchCall) Context(ctx context.Context) *ProjectsLocationsFunctionsPatchCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsPatchCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsPatchCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.function) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("PATCH", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.patch" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall struct { s *Service name string redirectfunctionupgradetrafficrequest *RedirectFunctionUpgradeTrafficRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // RedirectFunctionUpgradeTraffic: Changes the traffic target of a function // from the original 1st Gen function to the 2nd Gen copy. This is the second // step of the multi step process to upgrade 1st Gen functions to 2nd Gen. // After this operation, all new traffic will be served by 2nd Gen copy. // // - name: The name of the function for which traffic target should be changed // to 2nd Gen from 1st Gen. func (r *ProjectsLocationsFunctionsService) RedirectFunctionUpgradeTraffic(name string, redirectfunctionupgradetrafficrequest *RedirectFunctionUpgradeTrafficRequest) *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall { c := &ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.redirectfunctionupgradetrafficrequest = redirectfunctionupgradetrafficrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall) Context(ctx context.Context) *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.redirectfunctionupgradetrafficrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}:redirectFunctionUpgradeTraffic") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.redirectFunctionUpgradeTraffic" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsRedirectFunctionUpgradeTrafficCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall struct { s *Service name string rollbackfunctionupgradetrafficrequest *RollbackFunctionUpgradeTrafficRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // RollbackFunctionUpgradeTraffic: Reverts the traffic target of a function // from the 2nd Gen copy to the original 1st Gen function. After this // operation, all new traffic would be served by the 1st Gen. // // - name: The name of the function for which traffic target should be changed // back to 1st Gen from 2nd Gen. func (r *ProjectsLocationsFunctionsService) RollbackFunctionUpgradeTraffic(name string, rollbackfunctionupgradetrafficrequest *RollbackFunctionUpgradeTrafficRequest) *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall { c := &ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.rollbackfunctionupgradetrafficrequest = rollbackfunctionupgradetrafficrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall) Context(ctx context.Context) *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.rollbackfunctionupgradetrafficrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}:rollbackFunctionUpgradeTraffic") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.rollbackFunctionUpgradeTraffic" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsRollbackFunctionUpgradeTrafficCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsSetIamPolicyCall struct { s *Service resource string setiampolicyrequest *SetIamPolicyRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // SetIamPolicy: Sets the access control policy on the specified resource. // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, // and `PERMISSION_DENIED` errors. // // - resource: REQUIRED: The resource for which the policy is being specified. // See Resource names (https://cloud.google.com/apis/design/resource_names) // for the appropriate value for this field. func (r *ProjectsLocationsFunctionsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsFunctionsSetIamPolicyCall { c := &ProjectsLocationsFunctionsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.setiampolicyrequest = setiampolicyrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsSetIamPolicyCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsFunctionsSetIamPolicyCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsSetIamPolicyCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+resource}:setIamPolicy") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.setIamPolicy" call. // Any non-2xx status code is an error. Response headers are in either // *Policy.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Policy{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall struct { s *Service name string setupfunctionupgradeconfigrequest *SetupFunctionUpgradeConfigRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // SetupFunctionUpgradeConfig: Creates a 2nd Gen copy of the function // configuration based on the 1st Gen function with the given name. This is the // first step of the multi step process to upgrade 1st Gen functions to 2nd // Gen. Only 2nd Gen configuration is setup as part of this request and traffic // continues to be served by 1st Gen. // // - name: The name of the function which should have configuration copied for // upgrade. func (r *ProjectsLocationsFunctionsService) SetupFunctionUpgradeConfig(name string, setupfunctionupgradeconfigrequest *SetupFunctionUpgradeConfigRequest) *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall { c := &ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name c.setupfunctionupgradeconfigrequest = setupfunctionupgradeconfigrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall) Context(ctx context.Context) *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.setupfunctionupgradeconfigrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}:setupFunctionUpgradeConfig") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.setupFunctionUpgradeConfig" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsSetupFunctionUpgradeConfigCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsFunctionsTestIamPermissionsCall struct { s *Service resource string testiampermissionsrequest *TestIamPermissionsRequest urlParams_ gensupport.URLParams ctx_ context.Context header_ http.Header } // TestIamPermissions: Returns permissions that a caller has on the specified // resource. If the resource does not exist, this will return an empty set of // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be // used for building permission-aware UIs and command-line tools, not for // authorization checking. This operation may "fail open" without warning. // // - resource: REQUIRED: The resource for which the policy detail is being // requested. See Resource names // (https://cloud.google.com/apis/design/resource_names) for the appropriate // value for this field. func (r *ProjectsLocationsFunctionsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsFunctionsTestIamPermissionsCall { c := &ProjectsLocationsFunctionsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.resource = resource c.testiampermissionsrequest = testiampermissionsrequest return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsFunctionsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsFunctionsTestIamPermissionsCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsFunctionsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsFunctionsTestIamPermissionsCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsFunctionsTestIamPermissionsCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsFunctionsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) var body io.Reader = nil body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) if err != nil { return nil, err } c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+resource}:testIamPermissions") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("POST", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "resource": c.resource, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.functions.testIamPermissions" call. // Any non-2xx status code is an error. Response headers are in either // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was // returned at all) in error.(*googleapi.Error).Header. Use // googleapi.IsNotModified to check whether the returned error was because // http.StatusNotModified was returned. func (c *ProjectsLocationsFunctionsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &TestIamPermissionsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsOperationsGetCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // Get: Gets the latest state of a long-running operation. Clients can use this // method to poll the operation result at intervals as recommended by the API // service. // // - name: The name of the operation resource. func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsOperationsGetCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.operations.get" call. // Any non-2xx status code is an error. Response headers are in either // *Operation.ServerResponse.Header or (if a response was returned at all) in // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check // whether the returned error was because http.StatusNotModified was returned. func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &Operation{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } type ProjectsLocationsOperationsListCall struct { s *Service name string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Lists operations that match the specified filter in the request. If // the server doesn't support this method, it returns `UNIMPLEMENTED`. // // - name: The name of the operation's parent resource. func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall { c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.name = name return c } // Filter sets the optional parameter "filter": The standard list filter. func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall { c.urlParams_.Set("filter", filter) return c } // PageSize sets the optional parameter "pageSize": The standard list page // size. func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall { c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) return c } // PageToken sets the optional parameter "pageToken": The standard list page // token. func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall { c.urlParams_.Set("pageToken", pageToken) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsOperationsListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+name}/operations") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "name": c.name, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.operations.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListOperationsResponse.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListOperationsResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil } // Pages invokes f for each page of results. // A non-nil error returned from f will halt the iteration. // The provided context supersedes any context provided to the Context method. func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { c.ctx_ = ctx defer c.PageToken(c.urlParams_.Get("pageToken")) for { x, err := c.Do() if err != nil { return err } if err := f(x); err != nil { return err } if x.NextPageToken == "" { return nil } c.PageToken(x.NextPageToken) } } type ProjectsLocationsRuntimesListCall struct { s *Service parent string urlParams_ gensupport.URLParams ifNoneMatch_ string ctx_ context.Context header_ http.Header } // List: Returns a list of runtimes that are supported for the requested // project. // // - parent: The project and location from which the runtimes should be listed, // specified in the format `projects/*/locations/*`. func (r *ProjectsLocationsRuntimesService) List(parent string) *ProjectsLocationsRuntimesListCall { c := &ProjectsLocationsRuntimesListCall{s: r.s, urlParams_: make(gensupport.URLParams)} c.parent = parent return c } // Filter sets the optional parameter "filter": The filter for Runtimes that // match the filter expression, following the syntax outlined in // https://google.aip.dev/160. func (c *ProjectsLocationsRuntimesListCall) Filter(filter string) *ProjectsLocationsRuntimesListCall { c.urlParams_.Set("filter", filter) return c } // Fields allows partial responses to be retrieved. See // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more // details. func (c *ProjectsLocationsRuntimesListCall) Fields(s ...googleapi.Field) *ProjectsLocationsRuntimesListCall { c.urlParams_.Set("fields", googleapi.CombineFields(s)) return c } // IfNoneMatch sets an optional parameter which makes the operation fail if the // object's ETag matches the given value. This is useful for getting updates // only after the object has changed since the last request. func (c *ProjectsLocationsRuntimesListCall) IfNoneMatch(entityTag string) *ProjectsLocationsRuntimesListCall { c.ifNoneMatch_ = entityTag return c } // Context sets the context to be used in this call's Do method. func (c *ProjectsLocationsRuntimesListCall) Context(ctx context.Context) *ProjectsLocationsRuntimesListCall { c.ctx_ = ctx return c } // Header returns a http.Header that can be modified by the caller to add // headers to the request. func (c *ProjectsLocationsRuntimesListCall) Header() http.Header { if c.header_ == nil { c.header_ = make(http.Header) } return c.header_ } func (c *ProjectsLocationsRuntimesListCall) doRequest(alt string) (*http.Response, error) { reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) if c.ifNoneMatch_ != "" { reqHeaders.Set("If-None-Match", c.ifNoneMatch_) } var body io.Reader = nil c.urlParams_.Set("alt", alt) c.urlParams_.Set("prettyPrint", "false") urls := googleapi.ResolveRelative(c.s.BasePath, "v2alpha/{+parent}/runtimes") urls += "?" + c.urlParams_.Encode() req, err := http.NewRequest("GET", urls, body) if err != nil { return nil, err } req.Header = reqHeaders googleapi.Expand(req.URL, map[string]string{ "parent": c.parent, }) return gensupport.SendRequest(c.ctx_, c.s.client, req) } // Do executes the "cloudfunctions.projects.locations.runtimes.list" call. // Any non-2xx status code is an error. Response headers are in either // *ListRuntimesResponse.ServerResponse.Header or (if a response was returned // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to // check whether the returned error was because http.StatusNotModified was // returned. func (c *ProjectsLocationsRuntimesListCall) Do(opts ...googleapi.CallOption) (*ListRuntimesResponse, error) { gensupport.SetOptions(c.urlParams_, opts...) res, err := c.doRequest("json") if res != nil && res.StatusCode == http.StatusNotModified { if res.Body != nil { res.Body.Close() } return nil, gensupport.WrapError(&googleapi.Error{ Code: res.StatusCode, Header: res.Header, }) } if err != nil { return nil, err } defer googleapi.CloseBody(res) if err := googleapi.CheckResponse(res); err != nil { return nil, gensupport.WrapError(err) } ret := &ListRuntimesResponse{ ServerResponse: googleapi.ServerResponse{ Header: res.Header, HTTPStatusCode: res.StatusCode, }, } target := &ret if err := gensupport.DecodeResponse(target, res); err != nil { return nil, err } return ret, nil }