blob: 1b02604bf994feb9461fd3dfc33373205e0f4204 [file] [log] [blame]
// Copyright 2019 Google Inc. All rights reserved.
// 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 compute provides access to the Compute Engine API.
//
// See https://developers.google.com/compute/docs/reference/latest/
//
// Usage example:
//
// import "google.golang.org/api/compute/v0.alpha"
// ...
// computeService, err := compute.New(oauthHttpClient)
package compute // import "google.golang.org/api/compute/v0.alpha"
import (
"bytes"
"context"
"encoding/json"
"errors"
"fmt"
"io"
"net/http"
"net/url"
"strconv"
"strings"
gensupport "google.golang.org/api/gensupport"
googleapi "google.golang.org/api/googleapi"
)
// Always reference these packages, just in case the auto-generated code
// below doesn't.
var _ = bytes.NewBuffer
var _ = strconv.Itoa
var _ = fmt.Sprintf
var _ = json.NewDecoder
var _ = io.Copy
var _ = url.Parse
var _ = gensupport.MarshalJSON
var _ = googleapi.Version
var _ = errors.New
var _ = strings.Replace
var _ = context.Canceled
const apiId = "compute:alpha"
const apiName = "compute"
const apiVersion = "alpha"
const basePath = "https://www.googleapis.com/compute/alpha/projects/"
// OAuth2 scopes used by this API.
const (
// View and manage your data across Google Cloud Platform services
CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform"
// View and manage your Google Compute Engine resources
ComputeScope = "https://www.googleapis.com/auth/compute"
// View your Google Compute Engine resources
ComputeReadonlyScope = "https://www.googleapis.com/auth/compute.readonly"
// Manage your data and permissions in Google Cloud Storage
DevstorageFullControlScope = "https://www.googleapis.com/auth/devstorage.full_control"
// View your data in Google Cloud Storage
DevstorageReadOnlyScope = "https://www.googleapis.com/auth/devstorage.read_only"
// Manage your data in Google Cloud Storage
DevstorageReadWriteScope = "https://www.googleapis.com/auth/devstorage.read_write"
)
func New(client *http.Client) (*Service, error) {
if client == nil {
return nil, errors.New("client is nil")
}
s := &Service{client: client, BasePath: basePath}
s.AcceleratorTypes = NewAcceleratorTypesService(s)
s.Addresses = NewAddressesService(s)
s.Allocations = NewAllocationsService(s)
s.Autoscalers = NewAutoscalersService(s)
s.BackendBuckets = NewBackendBucketsService(s)
s.BackendServices = NewBackendServicesService(s)
s.DiskTypes = NewDiskTypesService(s)
s.Disks = NewDisksService(s)
s.Firewalls = NewFirewallsService(s)
s.ForwardingRules = NewForwardingRulesService(s)
s.GlobalAddresses = NewGlobalAddressesService(s)
s.GlobalForwardingRules = NewGlobalForwardingRulesService(s)
s.GlobalOperations = NewGlobalOperationsService(s)
s.GlobalOrganizationOperations = NewGlobalOrganizationOperationsService(s)
s.HealthChecks = NewHealthChecksService(s)
s.HttpHealthChecks = NewHttpHealthChecksService(s)
s.HttpsHealthChecks = NewHttpsHealthChecksService(s)
s.Images = NewImagesService(s)
s.InstanceGroupManagers = NewInstanceGroupManagersService(s)
s.InstanceGroups = NewInstanceGroupsService(s)
s.InstanceTemplates = NewInstanceTemplatesService(s)
s.Instances = NewInstancesService(s)
s.InterconnectAttachments = NewInterconnectAttachmentsService(s)
s.InterconnectLocations = NewInterconnectLocationsService(s)
s.Interconnects = NewInterconnectsService(s)
s.LicenseCodes = NewLicenseCodesService(s)
s.Licenses = NewLicensesService(s)
s.MachineImages = NewMachineImagesService(s)
s.MachineTypes = NewMachineTypesService(s)
s.NetworkEndpointGroups = NewNetworkEndpointGroupsService(s)
s.Networks = NewNetworksService(s)
s.NodeGroups = NewNodeGroupsService(s)
s.NodeTemplates = NewNodeTemplatesService(s)
s.NodeTypes = NewNodeTypesService(s)
s.OrganizationSecurityPolicies = NewOrganizationSecurityPoliciesService(s)
s.Projects = NewProjectsService(s)
s.RegionAutoscalers = NewRegionAutoscalersService(s)
s.RegionBackendServices = NewRegionBackendServicesService(s)
s.RegionCommitments = NewRegionCommitmentsService(s)
s.RegionDiskTypes = NewRegionDiskTypesService(s)
s.RegionDisks = NewRegionDisksService(s)
s.RegionHealthChecks = NewRegionHealthChecksService(s)
s.RegionInstanceGroupManagers = NewRegionInstanceGroupManagersService(s)
s.RegionInstanceGroups = NewRegionInstanceGroupsService(s)
s.RegionOperations = NewRegionOperationsService(s)
s.RegionSslCertificates = NewRegionSslCertificatesService(s)
s.RegionTargetHttpProxies = NewRegionTargetHttpProxiesService(s)
s.RegionTargetHttpsProxies = NewRegionTargetHttpsProxiesService(s)
s.RegionUrlMaps = NewRegionUrlMapsService(s)
s.Regions = NewRegionsService(s)
s.ResourcePolicies = NewResourcePoliciesService(s)
s.Routers = NewRoutersService(s)
s.Routes = NewRoutesService(s)
s.SecurityPolicies = NewSecurityPoliciesService(s)
s.Snapshots = NewSnapshotsService(s)
s.SslCertificates = NewSslCertificatesService(s)
s.SslPolicies = NewSslPoliciesService(s)
s.Subnetworks = NewSubnetworksService(s)
s.TargetHttpProxies = NewTargetHttpProxiesService(s)
s.TargetHttpsProxies = NewTargetHttpsProxiesService(s)
s.TargetInstances = NewTargetInstancesService(s)
s.TargetPools = NewTargetPoolsService(s)
s.TargetSslProxies = NewTargetSslProxiesService(s)
s.TargetTcpProxies = NewTargetTcpProxiesService(s)
s.TargetVpnGateways = NewTargetVpnGatewaysService(s)
s.UrlMaps = NewUrlMapsService(s)
s.VpnGateways = NewVpnGatewaysService(s)
s.VpnTunnels = NewVpnTunnelsService(s)
s.ZoneOperations = NewZoneOperationsService(s)
s.Zones = NewZonesService(s)
return s, nil
}
type Service struct {
client *http.Client
BasePath string // API endpoint base URL
UserAgent string // optional additional User-Agent fragment
AcceleratorTypes *AcceleratorTypesService
Addresses *AddressesService
Allocations *AllocationsService
Autoscalers *AutoscalersService
BackendBuckets *BackendBucketsService
BackendServices *BackendServicesService
DiskTypes *DiskTypesService
Disks *DisksService
Firewalls *FirewallsService
ForwardingRules *ForwardingRulesService
GlobalAddresses *GlobalAddressesService
GlobalForwardingRules *GlobalForwardingRulesService
GlobalOperations *GlobalOperationsService
GlobalOrganizationOperations *GlobalOrganizationOperationsService
HealthChecks *HealthChecksService
HttpHealthChecks *HttpHealthChecksService
HttpsHealthChecks *HttpsHealthChecksService
Images *ImagesService
InstanceGroupManagers *InstanceGroupManagersService
InstanceGroups *InstanceGroupsService
InstanceTemplates *InstanceTemplatesService
Instances *InstancesService
InterconnectAttachments *InterconnectAttachmentsService
InterconnectLocations *InterconnectLocationsService
Interconnects *InterconnectsService
LicenseCodes *LicenseCodesService
Licenses *LicensesService
MachineImages *MachineImagesService
MachineTypes *MachineTypesService
NetworkEndpointGroups *NetworkEndpointGroupsService
Networks *NetworksService
NodeGroups *NodeGroupsService
NodeTemplates *NodeTemplatesService
NodeTypes *NodeTypesService
OrganizationSecurityPolicies *OrganizationSecurityPoliciesService
Projects *ProjectsService
RegionAutoscalers *RegionAutoscalersService
RegionBackendServices *RegionBackendServicesService
RegionCommitments *RegionCommitmentsService
RegionDiskTypes *RegionDiskTypesService
RegionDisks *RegionDisksService
RegionHealthChecks *RegionHealthChecksService
RegionInstanceGroupManagers *RegionInstanceGroupManagersService
RegionInstanceGroups *RegionInstanceGroupsService
RegionOperations *RegionOperationsService
RegionSslCertificates *RegionSslCertificatesService
RegionTargetHttpProxies *RegionTargetHttpProxiesService
RegionTargetHttpsProxies *RegionTargetHttpsProxiesService
RegionUrlMaps *RegionUrlMapsService
Regions *RegionsService
ResourcePolicies *ResourcePoliciesService
Routers *RoutersService
Routes *RoutesService
SecurityPolicies *SecurityPoliciesService
Snapshots *SnapshotsService
SslCertificates *SslCertificatesService
SslPolicies *SslPoliciesService
Subnetworks *SubnetworksService
TargetHttpProxies *TargetHttpProxiesService
TargetHttpsProxies *TargetHttpsProxiesService
TargetInstances *TargetInstancesService
TargetPools *TargetPoolsService
TargetSslProxies *TargetSslProxiesService
TargetTcpProxies *TargetTcpProxiesService
TargetVpnGateways *TargetVpnGatewaysService
UrlMaps *UrlMapsService
VpnGateways *VpnGatewaysService
VpnTunnels *VpnTunnelsService
ZoneOperations *ZoneOperationsService
Zones *ZonesService
}
func (s *Service) userAgent() string {
if s.UserAgent == "" {
return googleapi.UserAgent
}
return googleapi.UserAgent + " " + s.UserAgent
}
func NewAcceleratorTypesService(s *Service) *AcceleratorTypesService {
rs := &AcceleratorTypesService{s: s}
return rs
}
type AcceleratorTypesService struct {
s *Service
}
func NewAddressesService(s *Service) *AddressesService {
rs := &AddressesService{s: s}
return rs
}
type AddressesService struct {
s *Service
}
func NewAllocationsService(s *Service) *AllocationsService {
rs := &AllocationsService{s: s}
return rs
}
type AllocationsService struct {
s *Service
}
func NewAutoscalersService(s *Service) *AutoscalersService {
rs := &AutoscalersService{s: s}
return rs
}
type AutoscalersService struct {
s *Service
}
func NewBackendBucketsService(s *Service) *BackendBucketsService {
rs := &BackendBucketsService{s: s}
return rs
}
type BackendBucketsService struct {
s *Service
}
func NewBackendServicesService(s *Service) *BackendServicesService {
rs := &BackendServicesService{s: s}
return rs
}
type BackendServicesService struct {
s *Service
}
func NewDiskTypesService(s *Service) *DiskTypesService {
rs := &DiskTypesService{s: s}
return rs
}
type DiskTypesService struct {
s *Service
}
func NewDisksService(s *Service) *DisksService {
rs := &DisksService{s: s}
return rs
}
type DisksService struct {
s *Service
}
func NewFirewallsService(s *Service) *FirewallsService {
rs := &FirewallsService{s: s}
return rs
}
type FirewallsService struct {
s *Service
}
func NewForwardingRulesService(s *Service) *ForwardingRulesService {
rs := &ForwardingRulesService{s: s}
return rs
}
type ForwardingRulesService struct {
s *Service
}
func NewGlobalAddressesService(s *Service) *GlobalAddressesService {
rs := &GlobalAddressesService{s: s}
return rs
}
type GlobalAddressesService struct {
s *Service
}
func NewGlobalForwardingRulesService(s *Service) *GlobalForwardingRulesService {
rs := &GlobalForwardingRulesService{s: s}
return rs
}
type GlobalForwardingRulesService struct {
s *Service
}
func NewGlobalOperationsService(s *Service) *GlobalOperationsService {
rs := &GlobalOperationsService{s: s}
return rs
}
type GlobalOperationsService struct {
s *Service
}
func NewGlobalOrganizationOperationsService(s *Service) *GlobalOrganizationOperationsService {
rs := &GlobalOrganizationOperationsService{s: s}
return rs
}
type GlobalOrganizationOperationsService struct {
s *Service
}
func NewHealthChecksService(s *Service) *HealthChecksService {
rs := &HealthChecksService{s: s}
return rs
}
type HealthChecksService struct {
s *Service
}
func NewHttpHealthChecksService(s *Service) *HttpHealthChecksService {
rs := &HttpHealthChecksService{s: s}
return rs
}
type HttpHealthChecksService struct {
s *Service
}
func NewHttpsHealthChecksService(s *Service) *HttpsHealthChecksService {
rs := &HttpsHealthChecksService{s: s}
return rs
}
type HttpsHealthChecksService struct {
s *Service
}
func NewImagesService(s *Service) *ImagesService {
rs := &ImagesService{s: s}
return rs
}
type ImagesService struct {
s *Service
}
func NewInstanceGroupManagersService(s *Service) *InstanceGroupManagersService {
rs := &InstanceGroupManagersService{s: s}
return rs
}
type InstanceGroupManagersService struct {
s *Service
}
func NewInstanceGroupsService(s *Service) *InstanceGroupsService {
rs := &InstanceGroupsService{s: s}
return rs
}
type InstanceGroupsService struct {
s *Service
}
func NewInstanceTemplatesService(s *Service) *InstanceTemplatesService {
rs := &InstanceTemplatesService{s: s}
return rs
}
type InstanceTemplatesService struct {
s *Service
}
func NewInstancesService(s *Service) *InstancesService {
rs := &InstancesService{s: s}
return rs
}
type InstancesService struct {
s *Service
}
func NewInterconnectAttachmentsService(s *Service) *InterconnectAttachmentsService {
rs := &InterconnectAttachmentsService{s: s}
return rs
}
type InterconnectAttachmentsService struct {
s *Service
}
func NewInterconnectLocationsService(s *Service) *InterconnectLocationsService {
rs := &InterconnectLocationsService{s: s}
return rs
}
type InterconnectLocationsService struct {
s *Service
}
func NewInterconnectsService(s *Service) *InterconnectsService {
rs := &InterconnectsService{s: s}
return rs
}
type InterconnectsService struct {
s *Service
}
func NewLicenseCodesService(s *Service) *LicenseCodesService {
rs := &LicenseCodesService{s: s}
return rs
}
type LicenseCodesService struct {
s *Service
}
func NewLicensesService(s *Service) *LicensesService {
rs := &LicensesService{s: s}
return rs
}
type LicensesService struct {
s *Service
}
func NewMachineImagesService(s *Service) *MachineImagesService {
rs := &MachineImagesService{s: s}
return rs
}
type MachineImagesService struct {
s *Service
}
func NewMachineTypesService(s *Service) *MachineTypesService {
rs := &MachineTypesService{s: s}
return rs
}
type MachineTypesService struct {
s *Service
}
func NewNetworkEndpointGroupsService(s *Service) *NetworkEndpointGroupsService {
rs := &NetworkEndpointGroupsService{s: s}
return rs
}
type NetworkEndpointGroupsService struct {
s *Service
}
func NewNetworksService(s *Service) *NetworksService {
rs := &NetworksService{s: s}
return rs
}
type NetworksService struct {
s *Service
}
func NewNodeGroupsService(s *Service) *NodeGroupsService {
rs := &NodeGroupsService{s: s}
return rs
}
type NodeGroupsService struct {
s *Service
}
func NewNodeTemplatesService(s *Service) *NodeTemplatesService {
rs := &NodeTemplatesService{s: s}
return rs
}
type NodeTemplatesService struct {
s *Service
}
func NewNodeTypesService(s *Service) *NodeTypesService {
rs := &NodeTypesService{s: s}
return rs
}
type NodeTypesService struct {
s *Service
}
func NewOrganizationSecurityPoliciesService(s *Service) *OrganizationSecurityPoliciesService {
rs := &OrganizationSecurityPoliciesService{s: s}
return rs
}
type OrganizationSecurityPoliciesService struct {
s *Service
}
func NewProjectsService(s *Service) *ProjectsService {
rs := &ProjectsService{s: s}
return rs
}
type ProjectsService struct {
s *Service
}
func NewRegionAutoscalersService(s *Service) *RegionAutoscalersService {
rs := &RegionAutoscalersService{s: s}
return rs
}
type RegionAutoscalersService struct {
s *Service
}
func NewRegionBackendServicesService(s *Service) *RegionBackendServicesService {
rs := &RegionBackendServicesService{s: s}
return rs
}
type RegionBackendServicesService struct {
s *Service
}
func NewRegionCommitmentsService(s *Service) *RegionCommitmentsService {
rs := &RegionCommitmentsService{s: s}
return rs
}
type RegionCommitmentsService struct {
s *Service
}
func NewRegionDiskTypesService(s *Service) *RegionDiskTypesService {
rs := &RegionDiskTypesService{s: s}
return rs
}
type RegionDiskTypesService struct {
s *Service
}
func NewRegionDisksService(s *Service) *RegionDisksService {
rs := &RegionDisksService{s: s}
return rs
}
type RegionDisksService struct {
s *Service
}
func NewRegionHealthChecksService(s *Service) *RegionHealthChecksService {
rs := &RegionHealthChecksService{s: s}
return rs
}
type RegionHealthChecksService struct {
s *Service
}
func NewRegionInstanceGroupManagersService(s *Service) *RegionInstanceGroupManagersService {
rs := &RegionInstanceGroupManagersService{s: s}
return rs
}
type RegionInstanceGroupManagersService struct {
s *Service
}
func NewRegionInstanceGroupsService(s *Service) *RegionInstanceGroupsService {
rs := &RegionInstanceGroupsService{s: s}
return rs
}
type RegionInstanceGroupsService struct {
s *Service
}
func NewRegionOperationsService(s *Service) *RegionOperationsService {
rs := &RegionOperationsService{s: s}
return rs
}
type RegionOperationsService struct {
s *Service
}
func NewRegionSslCertificatesService(s *Service) *RegionSslCertificatesService {
rs := &RegionSslCertificatesService{s: s}
return rs
}
type RegionSslCertificatesService struct {
s *Service
}
func NewRegionTargetHttpProxiesService(s *Service) *RegionTargetHttpProxiesService {
rs := &RegionTargetHttpProxiesService{s: s}
return rs
}
type RegionTargetHttpProxiesService struct {
s *Service
}
func NewRegionTargetHttpsProxiesService(s *Service) *RegionTargetHttpsProxiesService {
rs := &RegionTargetHttpsProxiesService{s: s}
return rs
}
type RegionTargetHttpsProxiesService struct {
s *Service
}
func NewRegionUrlMapsService(s *Service) *RegionUrlMapsService {
rs := &RegionUrlMapsService{s: s}
return rs
}
type RegionUrlMapsService struct {
s *Service
}
func NewRegionsService(s *Service) *RegionsService {
rs := &RegionsService{s: s}
return rs
}
type RegionsService struct {
s *Service
}
func NewResourcePoliciesService(s *Service) *ResourcePoliciesService {
rs := &ResourcePoliciesService{s: s}
return rs
}
type ResourcePoliciesService struct {
s *Service
}
func NewRoutersService(s *Service) *RoutersService {
rs := &RoutersService{s: s}
return rs
}
type RoutersService struct {
s *Service
}
func NewRoutesService(s *Service) *RoutesService {
rs := &RoutesService{s: s}
return rs
}
type RoutesService struct {
s *Service
}
func NewSecurityPoliciesService(s *Service) *SecurityPoliciesService {
rs := &SecurityPoliciesService{s: s}
return rs
}
type SecurityPoliciesService struct {
s *Service
}
func NewSnapshotsService(s *Service) *SnapshotsService {
rs := &SnapshotsService{s: s}
return rs
}
type SnapshotsService struct {
s *Service
}
func NewSslCertificatesService(s *Service) *SslCertificatesService {
rs := &SslCertificatesService{s: s}
return rs
}
type SslCertificatesService struct {
s *Service
}
func NewSslPoliciesService(s *Service) *SslPoliciesService {
rs := &SslPoliciesService{s: s}
return rs
}
type SslPoliciesService struct {
s *Service
}
func NewSubnetworksService(s *Service) *SubnetworksService {
rs := &SubnetworksService{s: s}
return rs
}
type SubnetworksService struct {
s *Service
}
func NewTargetHttpProxiesService(s *Service) *TargetHttpProxiesService {
rs := &TargetHttpProxiesService{s: s}
return rs
}
type TargetHttpProxiesService struct {
s *Service
}
func NewTargetHttpsProxiesService(s *Service) *TargetHttpsProxiesService {
rs := &TargetHttpsProxiesService{s: s}
return rs
}
type TargetHttpsProxiesService struct {
s *Service
}
func NewTargetInstancesService(s *Service) *TargetInstancesService {
rs := &TargetInstancesService{s: s}
return rs
}
type TargetInstancesService struct {
s *Service
}
func NewTargetPoolsService(s *Service) *TargetPoolsService {
rs := &TargetPoolsService{s: s}
return rs
}
type TargetPoolsService struct {
s *Service
}
func NewTargetSslProxiesService(s *Service) *TargetSslProxiesService {
rs := &TargetSslProxiesService{s: s}
return rs
}
type TargetSslProxiesService struct {
s *Service
}
func NewTargetTcpProxiesService(s *Service) *TargetTcpProxiesService {
rs := &TargetTcpProxiesService{s: s}
return rs
}
type TargetTcpProxiesService struct {
s *Service
}
func NewTargetVpnGatewaysService(s *Service) *TargetVpnGatewaysService {
rs := &TargetVpnGatewaysService{s: s}
return rs
}
type TargetVpnGatewaysService struct {
s *Service
}
func NewUrlMapsService(s *Service) *UrlMapsService {
rs := &UrlMapsService{s: s}
return rs
}
type UrlMapsService struct {
s *Service
}
func NewVpnGatewaysService(s *Service) *VpnGatewaysService {
rs := &VpnGatewaysService{s: s}
return rs
}
type VpnGatewaysService struct {
s *Service
}
func NewVpnTunnelsService(s *Service) *VpnTunnelsService {
rs := &VpnTunnelsService{s: s}
return rs
}
type VpnTunnelsService struct {
s *Service
}
func NewZoneOperationsService(s *Service) *ZoneOperationsService {
rs := &ZoneOperationsService{s: s}
return rs
}
type ZoneOperationsService struct {
s *Service
}
func NewZonesService(s *Service) *ZonesService {
rs := &ZonesService{s: s}
return rs
}
type ZonesService struct {
s *Service
}
// AcceleratorConfig: A specification of the type and number of
// accelerator cards attached to the instance.
type AcceleratorConfig struct {
// AcceleratorCount: The number of the guest accelerator cards exposed
// to this instance.
AcceleratorCount int64 `json:"acceleratorCount,omitempty"`
// AcceleratorType: Full or partial URL of the accelerator type resource
// to attach to this instance. If you are creating an instance template,
// specify only the accelerator name.
AcceleratorType string `json:"acceleratorType,omitempty"`
// ForceSendFields is a list of field names (e.g. "AcceleratorCount") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AcceleratorCount") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorConfig) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AcceleratorType: An Accelerator Type resource. (== resource_for
// beta.acceleratorTypes ==) (== resource_for v1.acceleratorTypes ==)
type AcceleratorType struct {
// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
// format.
CreationTimestamp string `json:"creationTimestamp,omitempty"`
// Deprecated: [Output Only] The deprecation status associated with this
// accelerator type.
Deprecated *DeprecationStatus `json:"deprecated,omitempty"`
// Description: [Output Only] An optional textual description of the
// resource.
Description string `json:"description,omitempty"`
// Id: [Output Only] The unique identifier for the resource. This
// identifier is defined by the server.
Id uint64 `json:"id,omitempty,string"`
// Kind: [Output Only] The type of the resource. Always
// compute#acceleratorType for accelerator types.
Kind string `json:"kind,omitempty"`
// MaximumCardsPerInstance: [Output Only] Maximum accelerator cards
// allowed per instance.
MaximumCardsPerInstance int64 `json:"maximumCardsPerInstance,omitempty"`
// Name: [Output Only] Name of the resource.
Name string `json:"name,omitempty"`
// SelfLink: [Output Only] Server-defined fully-qualified URL for this
// resource.
SelfLink string `json:"selfLink,omitempty"`
// Zone: [Output Only] The name of the zone where the accelerator type
// resides, such as us-central1-a. You must specify this field as part
// of the HTTP request URL. It is not settable as a field in the request
// body.
Zone string `json:"zone,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "CreationTimestamp")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "CreationTimestamp") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorType) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorType
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AcceleratorTypeAggregatedList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of AcceleratorTypesScopedList resources.
Items map[string]AcceleratorTypesScopedList `json:"items,omitempty"`
// Kind: [Output Only] Type of resource. Always
// compute#acceleratorTypeAggregatedList for aggregated lists of
// accelerator types.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AcceleratorTypeAggregatedListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypeAggregatedList) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypeAggregatedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AcceleratorTypeAggregatedListWarning: [Output Only] Informational
// warning message.
type AcceleratorTypeAggregatedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AcceleratorTypeAggregatedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypeAggregatedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypeAggregatedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AcceleratorTypeAggregatedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypeAggregatedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypeAggregatedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AcceleratorTypeList: Contains a list of accelerator types.
type AcceleratorTypeList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of AcceleratorType resources.
Items []*AcceleratorType `json:"items,omitempty"`
// Kind: [Output Only] Type of resource. Always
// compute#acceleratorTypeList for lists of accelerator types.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AcceleratorTypeListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypeList) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypeList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AcceleratorTypeListWarning: [Output Only] Informational warning
// message.
type AcceleratorTypeListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AcceleratorTypeListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypeListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypeListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AcceleratorTypeListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypeListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypeListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AcceleratorTypesScopedList struct {
// AcceleratorTypes: [Output Only] A list of accelerator types contained
// in this scope.
AcceleratorTypes []*AcceleratorType `json:"acceleratorTypes,omitempty"`
// Warning: [Output Only] An informational warning that appears when the
// accelerator types list is empty.
Warning *AcceleratorTypesScopedListWarning `json:"warning,omitempty"`
// ForceSendFields is a list of field names (e.g. "AcceleratorTypes") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AcceleratorTypes") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypesScopedList) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypesScopedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AcceleratorTypesScopedListWarning: [Output Only] An informational
// warning that appears when the accelerator types list is empty.
type AcceleratorTypesScopedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AcceleratorTypesScopedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypesScopedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypesScopedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AcceleratorTypesScopedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AcceleratorTypesScopedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AcceleratorTypesScopedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AccessConfig: An access configuration attached to an instance's
// network interface. Only one access config per instance is supported.
type AccessConfig struct {
// Kind: [Output Only] Type of the resource. Always compute#accessConfig
// for access configs.
Kind string `json:"kind,omitempty"`
// Name: The name of this access configuration. The default and
// recommended name is External NAT but you can use any arbitrary string
// you would like. For example, My external IP or Network Access.
Name string `json:"name,omitempty"`
// NatIP: An external IP address associated with this instance. Specify
// an unused static external IP address available to the project or
// leave this field undefined to use an IP from a shared ephemeral IP
// address pool. If you specify a static external IP address, it must
// live in the same region as the zone of the instance.
NatIP string `json:"natIP,omitempty"`
// NetworkTier: This signifies the networking tier used for configuring
// this access configuration and can only take the following values:
// PREMIUM, STANDARD.
//
// If an AccessConfig is specified without a valid external IP address,
// an ephemeral IP will be created with this networkTier.
//
// If an AccessConfig with a valid external IP address is specified, it
// must match that of the networkTier associated with the Address
// resource owning that IP.
//
// Possible values:
// "PREMIUM"
// "SELECT"
// "STANDARD"
NetworkTier string `json:"networkTier,omitempty"`
// PublicDnsName: [Output Only] The public DNS domain name for the
// instance.
PublicDnsName string `json:"publicDnsName,omitempty"`
// PublicPtrDomainName: The DNS domain name for the public PTR record.
// This field can only be set when the set_public_ptr field is enabled.
PublicPtrDomainName string `json:"publicPtrDomainName,omitempty"`
// SetPublicDns: Specifies whether a public DNS ?A? record should be
// created for the external IP address of this access configuration.
SetPublicDns bool `json:"setPublicDns,omitempty"`
// SetPublicPtr: Specifies whether a public DNS ?PTR? record should be
// created to map the external IP address of the instance to a DNS
// domain name.
SetPublicPtr bool `json:"setPublicPtr,omitempty"`
// Type: The type of configuration. The default and only option is
// ONE_TO_ONE_NAT.
//
// Possible values:
// "ONE_TO_ONE_NAT" (default)
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "Kind") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Kind") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AccessConfig) MarshalJSON() ([]byte, error) {
type NoMethod AccessConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Address: A reserved address resource. (== resource_for beta.addresses
// ==) (== resource_for v1.addresses ==) (== resource_for
// beta.globalAddresses ==) (== resource_for v1.globalAddresses ==)
type Address struct {
// Address: The static IP address represented by this resource.
Address string `json:"address,omitempty"`
// AddressType: The type of address to reserve, either INTERNAL or
// EXTERNAL. If unspecified, defaults to EXTERNAL.
//
// Possible values:
// "DNS_FORWARDING"
// "EXTERNAL"
// "INTERNAL"
// "UNSPECIFIED_TYPE"
AddressType string `json:"addressType,omitempty"`
// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
// format.
CreationTimestamp string `json:"creationTimestamp,omitempty"`
// Description: An optional description of this resource. Provide this
// property when you create the resource.
Description string `json:"description,omitempty"`
// Id: [Output Only] The unique identifier for the resource. This
// identifier is defined by the server.
Id uint64 `json:"id,omitempty,string"`
// IpVersion: The IP Version that will be used by this address. Valid
// options are IPV4 or IPV6. This can only be specified for a global
// address.
//
// Possible values:
// "IPV4"
// "IPV6"
// "UNSPECIFIED_VERSION"
IpVersion string `json:"ipVersion,omitempty"`
// Kind: [Output Only] Type of the resource. Always compute#address for
// addresses.
Kind string `json:"kind,omitempty"`
// LabelFingerprint: A fingerprint for the labels being applied to this
// Address, which is essentially a hash of the labels set used for
// optimistic locking. The fingerprint is initially generated by Compute
// Engine and changes after every request to modify or update labels.
// You must always provide an up-to-date fingerprint hash in order to
// update or change labels, otherwise the request will fail with error
// 412 conditionNotMet.
//
// To see the latest fingerprint, make a get() request to retrieve an
// Address.
LabelFingerprint string `json:"labelFingerprint,omitempty"`
// Labels: Labels to apply to this Address resource. These can be later
// modified by the setLabels method. Each label key/value must comply
// with RFC1035. Label values may be empty.
Labels map[string]string `json:"labels,omitempty"`
// Name: Name of the resource. Provided by the client when the resource
// is created. The name must be 1-63 characters long, and comply with
// RFC1035. Specifically, the name must be 1-63 characters long and
// match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means
// the first character must be a lowercase letter, and all following
// characters must be a dash, lowercase letter, or digit, except the
// last character, which cannot be a dash.
Name string `json:"name,omitempty"`
// Network: The URL of the network in which to reserve the address. This
// field can only be used with INTERNAL type with VPC_PEERING purpose.
Network string `json:"network,omitempty"`
// NetworkTier: This signifies the networking tier used for configuring
// this Address and can only take the following values: PREMIUM,
// STANDARD. Global forwarding rules can only be Premium Tier. Regional
// forwarding rules can be either Premium or Standard Tier. Standard
// Tier addresses applied to regional forwarding rules can be used with
// any external load balancer. Regional forwarding rules in Premium Tier
// can only be used with a Network load balancer.
//
// If this field is not specified, it is assumed to be PREMIUM.
//
// Possible values:
// "PREMIUM"
// "SELECT"
// "STANDARD"
NetworkTier string `json:"networkTier,omitempty"`
// PrefixLength: The prefix length if the resource reprensents an IP
// range.
PrefixLength int64 `json:"prefixLength,omitempty"`
// Purpose: The purpose of resource, only used with INTERNAL type.
//
// Possible values:
// "DNS_RESOLVER"
// "GCE_ENDPOINT"
// "NAT_AUTO"
// "VPC_PEERING"
Purpose string `json:"purpose,omitempty"`
// Region: [Output Only] URL of the region where the regional address
// resides. This field is not applicable to global addresses. You must
// specify this field as part of the HTTP request URL. You cannot set
// this field in the request body.
Region string `json:"region,omitempty"`
// SelfLink: [Output Only] Server-defined URL for the resource.
SelfLink string `json:"selfLink,omitempty"`
// Status: [Output Only] The status of the address, which can be one of
// RESERVING, RESERVED, or IN_USE. An address that is RESERVING is
// currently in the process of being reserved. A RESERVED address is
// currently reserved and available to use. An IN_USE address is
// currently being used by another resource and is not available.
//
// Possible values:
// "IN_USE"
// "RESERVED"
// "RESERVING"
Status string `json:"status,omitempty"`
// Subnetwork: The URL of the subnetwork in which to reserve the
// address. If an IP address is specified, it must be within the
// subnetwork's IP range. This field can only be used with INTERNAL type
// with GCE_ENDPOINT/DNS_RESOLVER purposes.
Subnetwork string `json:"subnetwork,omitempty"`
// Users: [Output Only] The URLs of the resources that are using this
// address.
Users []string `json:"users,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Address") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Address") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Address) MarshalJSON() ([]byte, error) {
type NoMethod Address
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddressAggregatedList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of AddressesScopedList resources.
Items map[string]AddressesScopedList `json:"items,omitempty"`
// Kind: [Output Only] Type of resource. Always
// compute#addressAggregatedList for aggregated lists of addresses.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AddressAggregatedListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressAggregatedList) MarshalJSON() ([]byte, error) {
type NoMethod AddressAggregatedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AddressAggregatedListWarning: [Output Only] Informational warning
// message.
type AddressAggregatedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AddressAggregatedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressAggregatedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AddressAggregatedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddressAggregatedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressAggregatedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AddressAggregatedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AddressList: Contains a list of addresses.
type AddressList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of Address resources.
Items []*Address `json:"items,omitempty"`
// Kind: [Output Only] Type of resource. Always compute#addressList for
// lists of addresses.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AddressListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressList) MarshalJSON() ([]byte, error) {
type NoMethod AddressList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AddressListWarning: [Output Only] Informational warning message.
type AddressListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AddressListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AddressListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddressListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AddressListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddressesScopedList struct {
// Addresses: [Output Only] A list of addresses contained in this scope.
Addresses []*Address `json:"addresses,omitempty"`
// Warning: [Output Only] Informational warning which replaces the list
// of addresses when the list is empty.
Warning *AddressesScopedListWarning `json:"warning,omitempty"`
// ForceSendFields is a list of field names (e.g. "Addresses") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Addresses") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressesScopedList) MarshalJSON() ([]byte, error) {
type NoMethod AddressesScopedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AddressesScopedListWarning: [Output Only] Informational warning which
// replaces the list of addresses when the list is empty.
type AddressesScopedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AddressesScopedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressesScopedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AddressesScopedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AddressesScopedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AddressesScopedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AddressesScopedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AliasIpRange: An alias IP range attached to an instance's network
// interface.
type AliasIpRange struct {
// IpCidrRange: The IP CIDR range represented by this alias IP range.
// This IP CIDR range must belong to the specified subnetwork and cannot
// contain IP addresses reserved by system or used by other network
// interfaces. This range may be a single IP address (e.g. 10.2.3.4), a
// netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).
IpCidrRange string `json:"ipCidrRange,omitempty"`
// SubnetworkRangeName: Optional subnetwork secondary range name
// specifying the secondary range from which to allocate the IP CIDR
// range for this alias IP range. If left unspecified, the primary range
// of the subnetwork will be used.
SubnetworkRangeName string `json:"subnetworkRangeName,omitempty"`
// ForceSendFields is a list of field names (e.g. "IpCidrRange") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "IpCidrRange") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AliasIpRange) MarshalJSON() ([]byte, error) {
type NoMethod AliasIpRange
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Allocation: Allocation resource
type Allocation struct {
// Commitment: Full or partial url for commitment in which this
// allocation is to be created. This field is ignored when allocations
// are created during committment creation.
Commitment string `json:"commitment,omitempty"`
// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
// format.
CreationTimestamp string `json:"creationTimestamp,omitempty"`
Description string `json:"description,omitempty"`
// Id: [Output Only] The unique identifier for the resource. This
// identifier is defined by the server.
Id uint64 `json:"id,omitempty,string"`
// Kind: [Output Only] Type of the resource. Always compute#allocations
// for allocations.
Kind string `json:"kind,omitempty"`
// Name: The name of the resource, provided by the client when initially
// creating the resource. The resource name must be 1-63 characters
// long, and comply with RFC1035. Specifically, the name must be 1-63
// characters long and match the regular expression
// `[a-z]([-a-z0-9]*[a-z0-9])?` which means the first character must be
// a lowercase letter, and all following characters must be a dash,
// lowercase letter, or digit, except the last character, which cannot
// be a dash.
Name string `json:"name,omitempty"`
// SelfLink: [Output Only] Server-defined fully-qualified URL for this
// resource.
SelfLink string `json:"selfLink,omitempty"`
SpecificAllocation *AllocationSpecificSKUAllocation `json:"specificAllocation,omitempty"`
// SpecificAllocationRequired: Indicates whether the allocation can be
// consumed by VMs with "any allocation" defined. If the field is set,
// then only VMs that target the allocation by name using
// --allocation-affinity can consume this allocation.
SpecificAllocationRequired bool `json:"specificAllocationRequired,omitempty"`
Zone string `json:"zone,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Commitment") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Commitment") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *Allocation) MarshalJSON() ([]byte, error) {
type NoMethod Allocation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationAffinity: AllocationAffinity is the configuration of
// desired allocation which this instance could take capacity from.
type AllocationAffinity struct {
// Possible values:
// "ANY_ALLOCATION"
// "NO_ALLOCATION"
// "SPECIFIC_ALLOCATION"
// "UNSPECIFIED"
ConsumeAllocationType string `json:"consumeAllocationType,omitempty"`
// Key: Corresponds to the label key of allocation resource.
Key string `json:"key,omitempty"`
// Values: Corresponds to the label values of allocation resource.
Values []string `json:"values,omitempty"`
// ForceSendFields is a list of field names (e.g.
// "ConsumeAllocationType") to unconditionally include in API requests.
// By default, fields with empty values are omitted from API requests.
// However, any non-pointer, non-interface field appearing in
// ForceSendFields will be sent to the server regardless of whether the
// field is empty or not. This may be used to include empty fields in
// Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ConsumeAllocationType") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AllocationAffinity) MarshalJSON() ([]byte, error) {
type NoMethod AllocationAffinity
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationAggregatedList: Contains a list of allocations.
type AllocationAggregatedList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of Allocation resources.
Items map[string]AllocationsScopedList `json:"items,omitempty"`
// Kind: Type of resource.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AllocationAggregatedListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationAggregatedList) MarshalJSON() ([]byte, error) {
type NoMethod AllocationAggregatedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationAggregatedListWarning: [Output Only] Informational warning
// message.
type AllocationAggregatedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AllocationAggregatedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationAggregatedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AllocationAggregatedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationAggregatedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationAggregatedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AllocationAggregatedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationList struct {
// Id: [Output Only] The unique identifier for the resource. This
// identifier is defined by the server.
Id string `json:"id,omitempty"`
// Items: [Output Only] A list of Allocation resources.
Items []*Allocation `json:"items,omitempty"`
// Kind: [Output Only] Type of resource.Always compute#allocationsList
// for listsof allocations
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AllocationListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationList) MarshalJSON() ([]byte, error) {
type NoMethod AllocationList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationListWarning: [Output Only] Informational warning message.
type AllocationListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AllocationListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AllocationListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AllocationListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationSpecificSKUAllocation: This allocation type allows to pre
// allocate specific instance configuration.
type AllocationSpecificSKUAllocation struct {
// Count: Specifies number of resources that are allocated.
Count int64 `json:"count,omitempty,string"`
// InUseCount: [OutputOnly] Indicates how many resource are in use.
InUseCount int64 `json:"inUseCount,omitempty,string"`
InstanceProperties *AllocationSpecificSKUAllocationAllocatedInstanceProperties `json:"instanceProperties,omitempty"`
// ForceSendFields is a list of field names (e.g. "Count") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Count") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationSpecificSKUAllocation) MarshalJSON() ([]byte, error) {
type NoMethod AllocationSpecificSKUAllocation
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationSpecificSKUAllocationAllocatedInstanceProperties:
// Properties of the SKU instances being reserved.
type AllocationSpecificSKUAllocationAllocatedInstanceProperties struct {
// GuestAccelerators: Specifies accelerator type and count.
GuestAccelerators []*AcceleratorConfig `json:"guestAccelerators,omitempty"`
// LocalSsds: Specifies amount of local ssd to reserve with each
// instance. The type of disk is local-ssd.
LocalSsds []*AllocationSpecificSKUAllocationAllocatedInstancePropertiesAllocatedDisk `json:"localSsds,omitempty"`
// MachineType: Specifies type of machine (name only) which has fixed
// number of vCPUs and fixed amount of memory. This also includes
// specifying custom machine type following
// custom-NUMBER_OF_CPUS-AMOUNT_OF_MEMORY pattern.
MachineType string `json:"machineType,omitempty"`
// MinCpuPlatform: Minimum cpu platform the allocation.
MinCpuPlatform string `json:"minCpuPlatform,omitempty"`
// ForceSendFields is a list of field names (e.g. "GuestAccelerators")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "GuestAccelerators") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AllocationSpecificSKUAllocationAllocatedInstanceProperties) MarshalJSON() ([]byte, error) {
type NoMethod AllocationSpecificSKUAllocationAllocatedInstanceProperties
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationSpecificSKUAllocationAllocatedInstancePropertiesAllocatedDisk struct {
// DiskSizeGb: Specifies the size of the disk in base-2 GB.
DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"`
// Interface: Specifies the disk interface to use for attaching this
// disk, which is either SCSI or NVME. The default is SCSI. For
// performance characteristics of SCSI over NVMe, see Local SSD
// performance.
//
// Possible values:
// "NVDIMM"
// "NVME"
// "SCSI"
Interface string `json:"interface,omitempty"`
// ForceSendFields is a list of field names (e.g. "DiskSizeGb") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "DiskSizeGb") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationSpecificSKUAllocationAllocatedInstancePropertiesAllocatedDisk) MarshalJSON() ([]byte, error) {
type NoMethod AllocationSpecificSKUAllocationAllocatedInstancePropertiesAllocatedDisk
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationsScopedList struct {
// Allocations: A list of allocations contained in this scope.
Allocations []*Allocation `json:"allocations,omitempty"`
// Warning: Informational warning which replaces the list of allocations
// when the list is empty.
Warning *AllocationsScopedListWarning `json:"warning,omitempty"`
// ForceSendFields is a list of field names (e.g. "Allocations") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Allocations") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationsScopedList) MarshalJSON() ([]byte, error) {
type NoMethod AllocationsScopedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AllocationsScopedListWarning: Informational warning which replaces
// the list of allocations when the list is empty.
type AllocationsScopedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AllocationsScopedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationsScopedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AllocationsScopedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationsScopedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationsScopedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AllocationsScopedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AllocationsUpdateResourceShapeRequest struct {
// Count: Number of allocated resources which are to be updated with
// minimum = 1 and maximum = 100.
Count int64 `json:"count,omitempty"`
// DestinationAllocation: The name of destination allocation where the
// modified machines are added. If existing, its machine spec must match
// the modified machine spec. If non existing, new allocation with this
// name and modified machine spec is created automatically.
DestinationAllocation string `json:"destinationAllocation,omitempty"`
UpdatedResourceProperties *AllocationSpecificSKUAllocationAllocatedInstanceProperties `json:"updatedResourceProperties,omitempty"`
// ForceSendFields is a list of field names (e.g. "Count") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Count") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AllocationsUpdateResourceShapeRequest) MarshalJSON() ([]byte, error) {
type NoMethod AllocationsUpdateResourceShapeRequest
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AttachedDisk: An instance-attached disk resource.
type AttachedDisk struct {
// AutoDelete: Specifies whether the disk will be auto-deleted when the
// instance is deleted (but not when the disk is detached from the
// instance).
AutoDelete bool `json:"autoDelete,omitempty"`
// Boot: Indicates that this is a boot disk. The virtual machine will
// use the first partition of the disk for its root filesystem.
Boot bool `json:"boot,omitempty"`
// DeviceName: Specifies a unique device name of your choice that is
// reflected into the /dev/disk/by-id/google-* tree of a Linux operating
// system running within the instance. This name can be used to
// reference the device for mounting, resizing, and so on, from within
// the instance.
//
// If not specified, the server chooses a default device name to apply
// to this disk, in the form persistent-disks-x, where x is a number
// assigned by Google Compute Engine. This field is only applicable for
// persistent disks.
DeviceName string `json:"deviceName,omitempty"`
// DiskEncryptionKey: Encrypts or decrypts a disk using a
// customer-supplied encryption key.
//
// If you are creating a new disk, this field encrypts the new disk
// using an encryption key that you provide. If you are attaching an
// existing disk that is already encrypted, this field decrypts the disk
// using the customer-supplied encryption key.
//
// If you encrypt a disk using a customer-supplied key, you must provide
// the same key again when you attempt to use this resource at a later
// time. For example, you must provide the key when you create a
// snapshot or an image from the disk or when you attach the disk to a
// virtual machine instance.
//
// If you do not provide an encryption key, then the disk will be
// encrypted using an automatically generated key and you do not need to
// provide a key to use the disk later.
//
// Instance templates do not store customer-supplied encryption keys, so
// you cannot use your own keys to encrypt disks in a managed instance
// group.
DiskEncryptionKey *CustomerEncryptionKey `json:"diskEncryptionKey,omitempty"`
// DiskSizeGb: The size of the disk in base-2 GB. This supersedes
// disk_size_gb in InitializeParams.
DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"`
// GuestOsFeatures: A list of features to enable on the guest operating
// system. Applicable only for bootable images. Read Enabling guest
// operating system features to see a list of available options.
GuestOsFeatures []*GuestOsFeature `json:"guestOsFeatures,omitempty"`
// Index: [Output Only] A zero-based index to this disk, where 0 is
// reserved for the boot disk. If you have many disks attached to an
// instance, each disk would have a unique index number.
Index int64 `json:"index,omitempty"`
// InitializeParams: [Input Only] Specifies the parameters for a new
// disk that will be created alongside the new instance. Use
// initialization parameters to create boot disks or local SSDs attached
// to the new instance.
//
// This property is mutually exclusive with the source property; you can
// only define one or the other, but not both.
InitializeParams *AttachedDiskInitializeParams `json:"initializeParams,omitempty"`
// Interface: Specifies the disk interface to use for attaching this
// disk, which is either SCSI or NVME. The default is SCSI. Persistent
// disks must always use SCSI and the request will fail if you attempt
// to attach a persistent disk in any other format than SCSI. Local SSDs
// can use either NVME or SCSI. For performance characteristics of SCSI
// over NVMe, see Local SSD performance.
//
// Possible values:
// "NVDIMM"
// "NVME"
// "SCSI"
Interface string `json:"interface,omitempty"`
// Kind: [Output Only] Type of the resource. Always compute#attachedDisk
// for attached disks.
Kind string `json:"kind,omitempty"`
// Licenses: [Output Only] Any valid publicly visible licenses.
Licenses []string `json:"licenses,omitempty"`
// Mode: The mode in which to attach this disk, either READ_WRITE or
// READ_ONLY. If not specified, the default is to attach the disk in
// READ_WRITE mode.
//
// Possible values:
// "READ_ONLY"
// "READ_WRITE"
Mode string `json:"mode,omitempty"`
// SavedState: For LocalSSD disks on VM Instances in STOPPED or
// SUSPENDED state, this field is set to PRESERVED if the LocalSSD data
// has been saved to a persistent location by customer request. (see the
// discard_local_ssd option on Stop/Suspend). Read-only in the api.
//
// Possible values:
// "DISK_SAVED_STATE_UNSPECIFIED"
// "PRESERVED"
SavedState string `json:"savedState,omitempty"`
// Source: Specifies a valid partial or full URL to an existing
// Persistent Disk resource. When creating a new instance, one of
// initializeParams.sourceImage or disks.source is required except for
// local SSD.
//
// If desired, you can also attach existing non-root persistent disks
// using this property. This field is only applicable for persistent
// disks.
//
// Note that for InstanceTemplate, specify the disk name, not the URL
// for the disk.
Source string `json:"source,omitempty"`
// Type: Specifies the type of the disk, either SCRATCH or PERSISTENT.
// If not specified, the default is PERSISTENT.
//
// Possible values:
// "PERSISTENT"
// "SCRATCH"
Type string `json:"type,omitempty"`
// ForceSendFields is a list of field names (e.g. "AutoDelete") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AutoDelete") to include in
// API requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AttachedDisk) MarshalJSON() ([]byte, error) {
type NoMethod AttachedDisk
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AttachedDiskInitializeParams: [Input Only] Specifies the parameters
// for a new disk that will be created alongside the new instance. Use
// initialization parameters to create boot disks or local SSDs attached
// to the new instance.
//
// This property is mutually exclusive with the source property; you can
// only define one or the other, but not both.
type AttachedDiskInitializeParams struct {
// Description: An optional description. Provide this property when
// creating the disk.
Description string `json:"description,omitempty"`
// DiskName: Specifies the disk name. If not specified, the default is
// to use the name of the instance. If the disk with the instance name
// exists already in the given zone/region, a new name will be
// automatically generated.
DiskName string `json:"diskName,omitempty"`
// DiskSizeGb: Specifies the size of the disk in base-2 GB.
DiskSizeGb int64 `json:"diskSizeGb,omitempty,string"`
// DiskType: Specifies the disk type to use to create the instance. If
// not specified, the default is pd-standard, specified using the full
// URL. For
// example:
// https://www.googleapis.com/compute/v1/projects/project/zones/
// zone/diskTypes/pd-standard
//
//
// Other values include pd-ssd and local-ssd. If you define this field,
// you can provide either the full or partial URL. For example, the
// following are valid values:
// -
// https://www.googleapis.com/compute/v1/projects/project/zones/zone/diskTypes/diskType
// - projects/project/zones/zone/diskTypes/diskType
// - zones/zone/diskTypes/diskType Note that for InstanceTemplate, this
// is the name of the disk type, not URL.
DiskType string `json:"diskType,omitempty"`
// Labels: Labels to apply to this disk. These can be later modified by
// the disks.setLabels method. This field is only applicable for
// persistent disks.
Labels map[string]string `json:"labels,omitempty"`
// SourceImage: The source image to create this disk. When creating a
// new instance, one of initializeParams.sourceImage or disks.source is
// required except for local SSD.
//
// To create a disk with one of the public operating system images,
// specify the image by its family name. For example, specify
// family/debian-9 to use the latest Debian 9
// image:
// projects/debian-cloud/global/images/family/debian-9
//
//
// Alternati
// vely, use a specific version of a public operating system
// image:
// projects/debian-cloud/global/images/debian-9-stretch-vYYYYMMDD
//
//
//
// To create a disk with a custom image that you created, specify the
// image name in the following
// format:
// global/images/my-custom-image
//
//
// You can also specify a custom image by its image family, which
// returns the latest version of the image in that family. Replace the
// image name with
// family/family-name:
// global/images/family/my-image-family
//
//
// If the source image is deleted later, this field will not be set.
SourceImage string `json:"sourceImage,omitempty"`
// SourceImageEncryptionKey: The customer-supplied encryption key of the
// source image. Required if the source image is protected by a
// customer-supplied encryption key.
//
// Instance templates do not store customer-supplied encryption keys, so
// you cannot create disks for instances in a managed instance group if
// the source images are encrypted with your own keys.
SourceImageEncryptionKey *CustomerEncryptionKey `json:"sourceImageEncryptionKey,omitempty"`
// SourceSnapshot: The source snapshot to create this disk. When
// creating a new instance, one of initializeParams.sourceSnapshot or
// disks.source is required except for local SSD.
//
// To create a disk with a snapshot that you created, specify the
// snapshot name in the following
// format:
// global/snapshots/my-backup
//
//
// If the source snapshot is deleted later, this field will not be set.
SourceSnapshot string `json:"sourceSnapshot,omitempty"`
// SourceSnapshotEncryptionKey: The customer-supplied encryption key of
// the source snapshot.
SourceSnapshotEncryptionKey *CustomerEncryptionKey `json:"sourceSnapshotEncryptionKey,omitempty"`
// ForceSendFields is a list of field names (e.g. "Description") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Description") to include
// in API requests with the JSON null value. By default, fields with
// empty values are omitted from API requests. However, any field with
// an empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AttachedDiskInitializeParams) MarshalJSON() ([]byte, error) {
type NoMethod AttachedDiskInitializeParams
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuditConfig: Specifies the audit configuration for a service. The
// configuration determines which permission types are logged, and what
// identities, if any, are exempted from logging. An AuditConfig must
// have one or more AuditLogConfigs.
//
// If there are AuditConfigs for both `allServices` and a specific
// service, the union of the two AuditConfigs is used for that service:
// the log_types specified in each AuditConfig are enabled, and the
// exempted_members in each AuditLogConfig are exempted.
//
// Example Policy with multiple AuditConfigs:
//
// { "audit_configs": [ { "service": "allServices" "audit_log_configs":
// [ { "log_type": "DATA_READ", "exempted_members": [
// "user:foo@gmail.com" ] }, { "log_type": "DATA_WRITE", }, {
// "log_type": "ADMIN_READ", } ] }, { "service":
// "fooservice.googleapis.com" "audit_log_configs": [ { "log_type":
// "DATA_READ", }, { "log_type": "DATA_WRITE", "exempted_members": [
// "user:bar@gmail.com" ] } ] } ] }
//
// For fooservice, this policy enables DATA_READ, DATA_WRITE and
// ADMIN_READ logging. It also exempts foo@gmail.com from DATA_READ
// logging, and bar@gmail.com from DATA_WRITE logging.
type AuditConfig struct {
// AuditLogConfigs: The configuration for logging of each type of
// permission.
AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"`
ExemptedMembers []string `json:"exemptedMembers,omitempty"`
// Service: Specifies a service that will be enabled for audit logging.
// For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
// `allServices` is a special value that covers all services.
Service string `json:"service,omitempty"`
// ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AuditLogConfigs") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AuditConfig) MarshalJSON() ([]byte, error) {
type NoMethod AuditConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuditLogConfig: Provides the configuration for logging a type of
// permissions. Example:
//
// { "audit_log_configs": [ { "log_type": "DATA_READ",
// "exempted_members": [ "user:foo@gmail.com" ] }, { "log_type":
// "DATA_WRITE", } ] }
//
// This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
// foo@gmail.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:
// "ADMIN_READ"
// "DATA_READ"
// "DATA_WRITE"
// "LOG_TYPE_UNSPECIFIED"
LogType string `json:"logType,omitempty"`
// ForceSendFields is a list of field names (e.g. "ExemptedMembers") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "ExemptedMembers") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AuditLogConfig) MarshalJSON() ([]byte, error) {
type NoMethod AuditLogConfig
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AuthorizationLoggingOptions: Authorization-related information used
// by Cloud Audit Logging.
type AuthorizationLoggingOptions struct {
// PermissionType: The type of the permission that was checked.
//
// Possible values:
// "ADMIN_READ"
// "ADMIN_WRITE"
// "DATA_READ"
// "DATA_WRITE"
// "PERMISSION_TYPE_UNSPECIFIED"
PermissionType string `json:"permissionType,omitempty"`
// ForceSendFields is a list of field names (e.g. "PermissionType") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "PermissionType") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *AuthorizationLoggingOptions) MarshalJSON() ([]byte, error) {
type NoMethod AuthorizationLoggingOptions
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// Autoscaler: Represents an Autoscaler resource. Autoscalers allow you
// to automatically scale virtual machine instances in managed instance
// groups according to an autoscaling policy that you define. For more
// information, read Autoscaling Groups of Instances. (== resource_for
// beta.autoscalers ==) (== resource_for v1.autoscalers ==) (==
// resource_for beta.regionAutoscalers ==) (== resource_for
// v1.regionAutoscalers ==)
type Autoscaler struct {
// AutoscalingPolicy: The configuration parameters for the autoscaling
// algorithm. You can define one or more of the policies for an
// autoscaler: cpuUtilization, customMetricUtilizations, and
// loadBalancingUtilization.
//
// If none of these are specified, the default will be to autoscale
// based on cpuUtilization to 0.6 or 60%.
AutoscalingPolicy *AutoscalingPolicy `json:"autoscalingPolicy,omitempty"`
// CreationTimestamp: [Output Only] Creation timestamp in RFC3339 text
// format.
CreationTimestamp string `json:"creationTimestamp,omitempty"`
// Description: An optional description of this resource. Provide this
// property when you create the resource.
Description string `json:"description,omitempty"`
// Id: [Output Only] The unique identifier for the resource. This
// identifier is defined by the server.
Id uint64 `json:"id,omitempty,string"`
// Kind: [Output Only] Type of the resource. Always compute#autoscaler
// for autoscalers.
Kind string `json:"kind,omitempty"`
// Name: Name of the resource. Provided by the client when the resource
// is created. The name must be 1-63 characters long, and comply with
// RFC1035. Specifically, the name must be 1-63 characters long and
// match the regular expression `[a-z]([-a-z0-9]*[a-z0-9])?` which means
// the first character must be a lowercase letter, and all following
// characters must be a dash, lowercase letter, or digit, except the
// last character, which cannot be a dash.
Name string `json:"name,omitempty"`
// RecommendedSize: [Output Only] Target recommended MIG size (number of
// instances) computed by autoscaler. Autoscaler calculates recommended
// MIG size even when autoscaling policy mode is different from ON. This
// field is empty when autoscaler is not connected to the existing
// managed instance group or autoscaler did not generate its prediction.
RecommendedSize int64 `json:"recommendedSize,omitempty"`
// Region: [Output Only] URL of the region where the instance group
// resides (for autoscalers living in regional scope).
Region string `json:"region,omitempty"`
// SelfLink: [Output Only] Server-defined URL for the resource.
SelfLink string `json:"selfLink,omitempty"`
// Status: [Output Only] The status of the autoscaler configuration.
//
// Possible values:
// "ACTIVE"
// "DELETING"
// "ERROR"
// "PENDING"
Status string `json:"status,omitempty"`
// StatusDetails: [Output Only] Human-readable details about the current
// state of the autoscaler. Read the documentation for Commonly returned
// status messages for examples of status messages you might encounter.
StatusDetails []*AutoscalerStatusDetails `json:"statusDetails,omitempty"`
// Target: URL of the managed instance group that this autoscaler will
// scale.
Target string `json:"target,omitempty"`
// Zone: [Output Only] URL of the zone where the instance group resides
// (for autoscalers living in zonal scope).
Zone string `json:"zone,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "AutoscalingPolicy")
// to unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "AutoscalingPolicy") to
// include in API requests with the JSON null value. By default, fields
// with empty values are omitted from API requests. However, any field
// with an empty value appearing in NullFields will be sent to the
// server as null. It is an error if a field in this list has a
// non-empty value. This may be used to include null fields in Patch
// requests.
NullFields []string `json:"-"`
}
func (s *Autoscaler) MarshalJSON() ([]byte, error) {
type NoMethod Autoscaler
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AutoscalerAggregatedList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of AutoscalersScopedList resources.
Items map[string]AutoscalersScopedList `json:"items,omitempty"`
// Kind: [Output Only] Type of resource. Always
// compute#autoscalerAggregatedList for aggregated lists of autoscalers.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AutoscalerAggregatedListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AutoscalerAggregatedList) MarshalJSON() ([]byte, error) {
type NoMethod AutoscalerAggregatedList
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AutoscalerAggregatedListWarning: [Output Only] Informational warning
// message.
type AutoscalerAggregatedListWarning struct {
// Code: [Output Only] A warning code, if applicable. For example,
// Compute Engine returns NO_RESULTS_ON_PAGE if there are no results in
// the response.
//
// Possible values:
// "CLEANUP_FAILED"
// "DEPRECATED_RESOURCE_USED"
// "DEPRECATED_TYPE_USED"
// "DISK_SIZE_LARGER_THAN_IMAGE_SIZE"
// "EXPERIMENTAL_TYPE_USED"
// "EXTERNAL_API_WARNING"
// "FIELD_VALUE_OVERRIDEN"
// "INJECTED_KERNELS_DEPRECATED"
// "MISSING_TYPE_DEPENDENCY"
// "NEXT_HOP_ADDRESS_NOT_ASSIGNED"
// "NEXT_HOP_CANNOT_IP_FORWARD"
// "NEXT_HOP_INSTANCE_NOT_FOUND"
// "NEXT_HOP_INSTANCE_NOT_ON_NETWORK"
// "NEXT_HOP_NOT_RUNNING"
// "NOT_CRITICAL_ERROR"
// "NO_RESULTS_ON_PAGE"
// "REQUIRED_TOS_AGREEMENT"
// "RESOURCE_IN_USE_BY_OTHER_RESOURCE_WARNING"
// "RESOURCE_NOT_DELETED"
// "SCHEMA_VALIDATION_IGNORED"
// "SINGLE_INSTANCE_PROPERTY_TEMPLATE"
// "UNDECLARED_PROPERTIES"
// "UNREACHABLE"
Code string `json:"code,omitempty"`
// Data: [Output Only] Metadata about this warning in key: value format.
// For example:
// "data": [ { "key": "scope", "value": "zones/us-east1-d" }
Data []*AutoscalerAggregatedListWarningData `json:"data,omitempty"`
// Message: [Output Only] A human-readable description of the warning
// code.
Message string `json:"message,omitempty"`
// ForceSendFields is a list of field names (e.g. "Code") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Code") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AutoscalerAggregatedListWarning) MarshalJSON() ([]byte, error) {
type NoMethod AutoscalerAggregatedListWarning
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
type AutoscalerAggregatedListWarningData struct {
// Key: [Output Only] A key that provides more detail on the warning
// being returned. For example, for warnings where there are no results
// in a list request for a particular zone, this key might be scope and
// the key value might be the zone name. Other examples might be a key
// indicating a deprecated resource and a suggested replacement, or a
// warning about invalid network settings (for example, if an instance
// attempts to perform IP forwarding but is not enabled for IP
// forwarding).
Key string `json:"key,omitempty"`
// Value: [Output Only] A warning data value corresponding to the key.
Value string `json:"value,omitempty"`
// ForceSendFields is a list of field names (e.g. "Key") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Key") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.
// This may be used to include null fields in Patch requests.
NullFields []string `json:"-"`
}
func (s *AutoscalerAggregatedListWarningData) MarshalJSON() ([]byte, error) {
type NoMethod AutoscalerAggregatedListWarningData
raw := NoMethod(*s)
return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields)
}
// AutoscalerList: Contains a list of Autoscaler resources.
type AutoscalerList struct {
// Id: [Output Only] Unique identifier for the resource; defined by the
// server.
Id string `json:"id,omitempty"`
// Items: A list of Autoscaler resources.
Items []*Autoscaler `json:"items,omitempty"`
// Kind: [Output Only] Type of resource. Always compute#autoscalerList
// for lists of autoscalers.
Kind string `json:"kind,omitempty"`
// NextPageToken: [Output Only] This token allows you to get the next
// page of results for list requests. If the number of results is larger
// than maxResults, use the nextPageToken as a value for the query
// parameter pageToken in the next list request. Subsequent list
// requests will have their own nextPageToken to continue paging through
// the results.
NextPageToken string `json:"nextPageToken,omitempty"`
// SelfLink: [Output Only] Server-defined URL for this resource.
SelfLink string `json:"selfLink,omitempty"`
// Warning: [Output Only] Informational warning message.
Warning *AutoscalerListWarning `json:"warning,omitempty"`
// ServerResponse contains the HTTP response code and headers from the
// server.
googleapi.ServerResponse `json:"-"`
// ForceSendFields is a list of field names (e.g. "Id") to
// unconditionally include in API requests. By default, fields with
// empty values are omitted from API requests. However, any non-pointer,
// non-interface field appearing in ForceSendFields will be sent to the
// server regardless of whether the field is empty or not. This may be
// used to include empty fields in Patch requests.
ForceSendFields []string `json:"-"`
// NullFields is a list of field names (e.g. "Id") to include in API
// requests with the JSON null value. By default, fields with empty
// values are omitted from API requests. However, any field with an
// empty value appearing in NullFields will be sent to the server as
// null. It is an error if a field in this list has a non-empty value.