| // Copyright 2020 Google LLC. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| // Code generated file. DO NOT EDIT. |
| |
| // Package container provides access to the Kubernetes Engine API. |
| // |
| // For product documentation, see: https://cloud.google.com/container-engine/ |
| // |
| // Creating a client |
| // |
| // Usage example: |
| // |
| // import "google.golang.org/api/container/v1beta1" |
| // ... |
| // ctx := context.Background() |
| // containerService, err := container.NewService(ctx) |
| // |
| // In this example, Google Application Default Credentials are used for authentication. |
| // |
| // For information on how to create and obtain Application Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. |
| // |
| // Other authentication options |
| // |
| // To use an API key for authentication (note: some APIs do not support API keys), use option.WithAPIKey: |
| // |
| // containerService, err := container.NewService(ctx, option.WithAPIKey("AIza...")) |
| // |
| // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth flow), use option.WithTokenSource: |
| // |
| // config := &oauth2.Config{...} |
| // // ... |
| // token, err := config.Exchange(ctx, ...) |
| // containerService, err := container.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) |
| // |
| // See https://godoc.org/google.golang.org/api/option/ for details on options. |
| package container // import "google.golang.org/api/container/v1beta1" |
| |
| import ( |
| "bytes" |
| "context" |
| "encoding/json" |
| "errors" |
| "fmt" |
| "io" |
| "net/http" |
| "net/url" |
| "strconv" |
| "strings" |
| |
| googleapi "google.golang.org/api/googleapi" |
| gensupport "google.golang.org/api/internal/gensupport" |
| option "google.golang.org/api/option" |
| internaloption "google.golang.org/api/option/internaloption" |
| htransport "google.golang.org/api/transport/http" |
| ) |
| |
| // Always reference these packages, just in case the auto-generated code |
| // below doesn't. |
| var _ = bytes.NewBuffer |
| var _ = strconv.Itoa |
| var _ = fmt.Sprintf |
| var _ = json.NewDecoder |
| var _ = io.Copy |
| var _ = url.Parse |
| var _ = gensupport.MarshalJSON |
| var _ = googleapi.Version |
| var _ = errors.New |
| var _ = strings.Replace |
| var _ = context.Canceled |
| var _ = internaloption.WithDefaultEndpoint |
| |
| const apiId = "container:v1beta1" |
| const apiName = "container" |
| const apiVersion = "v1beta1" |
| const basePath = "https://container.googleapis.com/" |
| const mtlsBasePath = "https://container.mtls.googleapis.com/" |
| |
| // OAuth2 scopes used by this API. |
| const ( |
| // View and manage your data across Google Cloud Platform services |
| CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" |
| ) |
| |
| // NewService creates a new Service. |
| func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { |
| scopesOption := option.WithScopes( |
| "https://www.googleapis.com/auth/cloud-platform", |
| ) |
| // NOTE: prepend, so we don't override user-specified scopes. |
| opts = append([]option.ClientOption{scopesOption}, opts...) |
| opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) |
| opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) |
| client, endpoint, err := htransport.NewClient(ctx, opts...) |
| if err != nil { |
| return nil, err |
| } |
| s, err := New(client) |
| if err != nil { |
| return nil, err |
| } |
| if endpoint != "" { |
| s.BasePath = endpoint |
| } |
| return s, nil |
| } |
| |
| // New creates a new Service. It uses the provided http.Client for requests. |
| // |
| // Deprecated: please use NewService instead. |
| // To provide a custom HTTP client, use option.WithHTTPClient. |
| // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. |
| func New(client *http.Client) (*Service, error) { |
| if client == nil { |
| return nil, errors.New("client is nil") |
| } |
| s := &Service{client: client, BasePath: basePath} |
| s.Projects = NewProjectsService(s) |
| return s, nil |
| } |
| |
| type Service struct { |
| client *http.Client |
| BasePath string // API endpoint base URL |
| UserAgent string // optional additional User-Agent fragment |
| |
| Projects *ProjectsService |
| } |
| |
| func (s *Service) userAgent() string { |
| if s.UserAgent == "" { |
| return googleapi.UserAgent |
| } |
| return googleapi.UserAgent + " " + s.UserAgent |
| } |
| |
| func NewProjectsService(s *Service) *ProjectsService { |
| rs := &ProjectsService{s: s} |
| rs.Aggregated = NewProjectsAggregatedService(s) |
| rs.Locations = NewProjectsLocationsService(s) |
| rs.Zones = NewProjectsZonesService(s) |
| return rs |
| } |
| |
| type ProjectsService struct { |
| s *Service |
| |
| Aggregated *ProjectsAggregatedService |
| |
| Locations *ProjectsLocationsService |
| |
| Zones *ProjectsZonesService |
| } |
| |
| func NewProjectsAggregatedService(s *Service) *ProjectsAggregatedService { |
| rs := &ProjectsAggregatedService{s: s} |
| rs.UsableSubnetworks = NewProjectsAggregatedUsableSubnetworksService(s) |
| return rs |
| } |
| |
| type ProjectsAggregatedService struct { |
| s *Service |
| |
| UsableSubnetworks *ProjectsAggregatedUsableSubnetworksService |
| } |
| |
| func NewProjectsAggregatedUsableSubnetworksService(s *Service) *ProjectsAggregatedUsableSubnetworksService { |
| rs := &ProjectsAggregatedUsableSubnetworksService{s: s} |
| return rs |
| } |
| |
| type ProjectsAggregatedUsableSubnetworksService struct { |
| s *Service |
| } |
| |
| func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { |
| rs := &ProjectsLocationsService{s: s} |
| rs.Clusters = NewProjectsLocationsClustersService(s) |
| rs.Operations = NewProjectsLocationsOperationsService(s) |
| return rs |
| } |
| |
| type ProjectsLocationsService struct { |
| s *Service |
| |
| Clusters *ProjectsLocationsClustersService |
| |
| Operations *ProjectsLocationsOperationsService |
| } |
| |
| func NewProjectsLocationsClustersService(s *Service) *ProjectsLocationsClustersService { |
| rs := &ProjectsLocationsClustersService{s: s} |
| rs.NodePools = NewProjectsLocationsClustersNodePoolsService(s) |
| rs.WellKnown = NewProjectsLocationsClustersWellKnownService(s) |
| return rs |
| } |
| |
| type ProjectsLocationsClustersService struct { |
| s *Service |
| |
| NodePools *ProjectsLocationsClustersNodePoolsService |
| |
| WellKnown *ProjectsLocationsClustersWellKnownService |
| } |
| |
| func NewProjectsLocationsClustersNodePoolsService(s *Service) *ProjectsLocationsClustersNodePoolsService { |
| rs := &ProjectsLocationsClustersNodePoolsService{s: s} |
| return rs |
| } |
| |
| type ProjectsLocationsClustersNodePoolsService struct { |
| s *Service |
| } |
| |
| func NewProjectsLocationsClustersWellKnownService(s *Service) *ProjectsLocationsClustersWellKnownService { |
| rs := &ProjectsLocationsClustersWellKnownService{s: s} |
| return rs |
| } |
| |
| type ProjectsLocationsClustersWellKnownService struct { |
| s *Service |
| } |
| |
| func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { |
| rs := &ProjectsLocationsOperationsService{s: s} |
| return rs |
| } |
| |
| type ProjectsLocationsOperationsService struct { |
| s *Service |
| } |
| |
| func NewProjectsZonesService(s *Service) *ProjectsZonesService { |
| rs := &ProjectsZonesService{s: s} |
| rs.Clusters = NewProjectsZonesClustersService(s) |
| rs.Operations = NewProjectsZonesOperationsService(s) |
| return rs |
| } |
| |
| type ProjectsZonesService struct { |
| s *Service |
| |
| Clusters *ProjectsZonesClustersService |
| |
| Operations *ProjectsZonesOperationsService |
| } |
| |
| func NewProjectsZonesClustersService(s *Service) *ProjectsZonesClustersService { |
| rs := &ProjectsZonesClustersService{s: s} |
| rs.NodePools = NewProjectsZonesClustersNodePoolsService(s) |
| return rs |
| } |
| |
| type ProjectsZonesClustersService struct { |
| s *Service |
| |
| NodePools *ProjectsZonesClustersNodePoolsService |
| } |
| |
| func NewProjectsZonesClustersNodePoolsService(s *Service) *ProjectsZonesClustersNodePoolsService { |
| rs := &ProjectsZonesClustersNodePoolsService{s: s} |
| return rs |
| } |
| |
| type ProjectsZonesClustersNodePoolsService struct { |
| s *Service |
| } |
| |
| func NewProjectsZonesOperationsService(s *Service) *ProjectsZonesOperationsService { |
| rs := &ProjectsZonesOperationsService{s: s} |
| return rs |
| } |
| |
| type ProjectsZonesOperationsService struct { |
| s *Service |
| } |
| |
| // AcceleratorConfig: AcceleratorConfig represents a Hardware |
| // Accelerator request. |
| type AcceleratorConfig struct { |
| // AcceleratorCount: The number of the accelerator cards exposed to an |
| // instance. |
| AcceleratorCount int64 `json:"acceleratorCount,omitempty,string"` |
| |
| // AcceleratorType: The accelerator type resource name. List of |
| // supported |
| // accelerators |
| // [here](https://cloud.google.com/compute/docs/gpus) |
| 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) |
| } |
| |
| // AddonsConfig: Configuration for the addons that can be automatically |
| // spun up in the |
| // cluster, enabling additional functionality. |
| type AddonsConfig struct { |
| // CloudRunConfig: Configuration for the Cloud Run addon. The |
| // `IstioConfig` addon must be |
| // enabled in order to enable Cloud Run addon. This option can only be |
| // enabled |
| // at cluster creation time. |
| CloudRunConfig *CloudRunConfig `json:"cloudRunConfig,omitempty"` |
| |
| // ConfigConnectorConfig: Configuration for the ConfigConnector add-on, |
| // a Kubernetes |
| // extension to manage hosted GCP services through the Kubernetes API |
| ConfigConnectorConfig *ConfigConnectorConfig `json:"configConnectorConfig,omitempty"` |
| |
| // DnsCacheConfig: Configuration for NodeLocalDNS, a dns cache running |
| // on cluster nodes |
| DnsCacheConfig *DnsCacheConfig `json:"dnsCacheConfig,omitempty"` |
| |
| // GcePersistentDiskCsiDriverConfig: Configuration for the Compute |
| // Engine Persistent Disk CSI driver. |
| GcePersistentDiskCsiDriverConfig *GcePersistentDiskCsiDriverConfig `json:"gcePersistentDiskCsiDriverConfig,omitempty"` |
| |
| // HorizontalPodAutoscaling: Configuration for the horizontal pod |
| // autoscaling feature, which |
| // increases or decreases the number of replica pods a replication |
| // controller |
| // has based on the resource usage of the existing pods. |
| HorizontalPodAutoscaling *HorizontalPodAutoscaling `json:"horizontalPodAutoscaling,omitempty"` |
| |
| // HttpLoadBalancing: Configuration for the HTTP (L7) load balancing |
| // controller addon, which |
| // makes it easy to set up HTTP load balancers for services in a |
| // cluster. |
| HttpLoadBalancing *HttpLoadBalancing `json:"httpLoadBalancing,omitempty"` |
| |
| // IstioConfig: Configuration for Istio, an open platform to connect, |
| // manage, and secure |
| // microservices. |
| IstioConfig *IstioConfig `json:"istioConfig,omitempty"` |
| |
| // KalmConfig: Configuration for the KALM addon, which manages the |
| // lifecycle of k8s |
| // applications. |
| KalmConfig *KalmConfig `json:"kalmConfig,omitempty"` |
| |
| // KubernetesDashboard: Configuration for the Kubernetes Dashboard. |
| // This addon is deprecated, and will be disabled in 1.15. It is |
| // recommended |
| // to use the Cloud Console to manage and monitor your Kubernetes |
| // clusters, |
| // workloads and applications. For more information, |
| // see: |
| // https://cloud.google.com/kubernetes-engine/docs/concepts/dashboar |
| // ds |
| KubernetesDashboard *KubernetesDashboard `json:"kubernetesDashboard,omitempty"` |
| |
| // NetworkPolicyConfig: Configuration for NetworkPolicy. This only |
| // tracks whether the addon |
| // is enabled or not on the Master, it does not track whether network |
| // policy |
| // is enabled for the nodes. |
| NetworkPolicyConfig *NetworkPolicyConfig `json:"networkPolicyConfig,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "CloudRunConfig") 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. "CloudRunConfig") 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 *AddonsConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod AddonsConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // AuthenticatorGroupsConfig: Configuration for returning group |
| // information from authenticators. |
| type AuthenticatorGroupsConfig struct { |
| // Enabled: Whether this cluster should return group membership |
| // lookups |
| // during authentication using a group of security groups. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // SecurityGroup: The name of the security group-of-groups to be used. |
| // Only relevant |
| // if enabled = true. |
| SecurityGroup string `json:"securityGroup,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *AuthenticatorGroupsConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod AuthenticatorGroupsConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // AutoUpgradeOptions: AutoUpgradeOptions defines the set of options for |
| // the user to control how |
| // the Auto Upgrades will proceed. |
| type AutoUpgradeOptions struct { |
| // AutoUpgradeStartTime: [Output only] This field is set when upgrades |
| // are about to commence |
| // with the approximate start time for the upgrades, |
| // in |
| // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| AutoUpgradeStartTime string `json:"autoUpgradeStartTime,omitempty"` |
| |
| // Description: [Output only] This field is set when upgrades are about |
| // to commence |
| // with the description of the upgrade. |
| Description string `json:"description,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. |
| // "AutoUpgradeStartTime") 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. "AutoUpgradeStartTime") 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 *AutoUpgradeOptions) MarshalJSON() ([]byte, error) { |
| type NoMethod AutoUpgradeOptions |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // AutoprovisioningNodePoolDefaults: AutoprovisioningNodePoolDefaults |
| // contains defaults for a node pool created |
| // by NAP. |
| type AutoprovisioningNodePoolDefaults struct { |
| // Management: NodeManagement configuration for this NodePool. |
| Management *NodeManagement `json:"management,omitempty"` |
| |
| // MinCpuPlatform: Minimum CPU platform to be used by this instance. The |
| // instance may be |
| // scheduled on the specified or newer CPU platform. Applicable values |
| // are the |
| // friendly names of CPU platforms, such as |
| // <code>minCpuPlatform: "Intel Haswell"</code> |
| // or |
| // <code>minCpuPlatform: "Intel Sandy Bridge"</code>. For |
| // more |
| // information, read [how to specify min |
| // CPU |
| // platform](https://cloud.google.com/compute/docs/instances/specify- |
| // min-cpu-platform) |
| // To unset the min cpu platform field pass "automatic" |
| // as field value. |
| MinCpuPlatform string `json:"minCpuPlatform,omitempty"` |
| |
| // OauthScopes: The set of Google API scopes to be made available on all |
| // of the |
| // node VMs under the "default" service account. |
| // |
| // The following scopes are recommended, but not required, and by |
| // default are |
| // not included: |
| // |
| // * `https://www.googleapis.com/auth/compute` is required for |
| // mounting |
| // persistent storage on your nodes. |
| // * `https://www.googleapis.com/auth/devstorage.read_only` is required |
| // for |
| // communicating with **gcr.io** |
| // (the [Google |
| // Container |
| // Registry](https://cloud.google.com/container-registry/)). |
| // |
| // I |
| // f unspecified, no scopes are added, unless Cloud Logging or |
| // Cloud |
| // Monitoring are enabled, in which case their required scopes will be |
| // added. |
| OauthScopes []string `json:"oauthScopes,omitempty"` |
| |
| // ServiceAccount: The Google Cloud Platform Service Account to be used |
| // by the node VMs. |
| // Specify the email address of the Service Account; otherwise, if no |
| // Service |
| // Account is specified, the "default" service account is used. |
| ServiceAccount string `json:"serviceAccount,omitempty"` |
| |
| // UpgradeSettings: Upgrade settings control disruption and speed of the |
| // upgrade. |
| UpgradeSettings *UpgradeSettings `json:"upgradeSettings,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Management") 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. "Management") 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 *AutoprovisioningNodePoolDefaults) MarshalJSON() ([]byte, error) { |
| type NoMethod AutoprovisioningNodePoolDefaults |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // AvailableVersion: Deprecated. |
| type AvailableVersion struct { |
| // Reason: Reason for availability. |
| Reason string `json:"reason,omitempty"` |
| |
| // Version: Kubernetes version. |
| Version string `json:"version,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Reason") 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. "Reason") 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 *AvailableVersion) MarshalJSON() ([]byte, error) { |
| type NoMethod AvailableVersion |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // BigQueryDestination: Parameters for using BigQuery as the destination |
| // of resource usage export. |
| type BigQueryDestination struct { |
| // DatasetId: The ID of a BigQuery Dataset. |
| DatasetId string `json:"datasetId,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "DatasetId") 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. "DatasetId") 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 *BigQueryDestination) MarshalJSON() ([]byte, error) { |
| type NoMethod BigQueryDestination |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // BinaryAuthorization: Configuration for Binary Authorization. |
| type BinaryAuthorization struct { |
| // Enabled: Enable Binary Authorization for this cluster. If enabled, |
| // all container |
| // images will be validated by Google Binauthz. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *BinaryAuthorization) MarshalJSON() ([]byte, error) { |
| type NoMethod BinaryAuthorization |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // CancelOperationRequest: CancelOperationRequest cancels a single |
| // operation. |
| type CancelOperationRequest struct { |
| // Name: The name (project, location, operation id) of the operation to |
| // cancel. |
| // Specified in the format `projects/*/locations/*/operations/*`. |
| Name string `json:"name,omitempty"` |
| |
| // OperationId: Required. Deprecated. The server-assigned `name` of the |
| // operation. |
| // This field has been deprecated and replaced by the name field. |
| OperationId string `json:"operationId,omitempty"` |
| |
| // ProjectId: Required. Deprecated. The Google Developers Console |
| // [project ID or |
| // project |
| // number](https://support.google.com/cloud/answer/6158840). |
| // This |
| // field has been deprecated and replaced by the name field. |
| ProjectId string `json:"projectId,omitempty"` |
| |
| // Zone: Required. Deprecated. The name of the Google Compute |
| // Engine |
| // [zone](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // operation resides. This field has been deprecated and replaced by the |
| // name |
| // field. |
| Zone string `json:"zone,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Name") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Name") to include in API |
| // requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CancelOperationRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod CancelOperationRequest |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // CidrBlock: CidrBlock contains an optional name and one CIDR block. |
| type CidrBlock struct { |
| // CidrBlock: cidr_block must be specified in CIDR notation. |
| CidrBlock string `json:"cidrBlock,omitempty"` |
| |
| // DisplayName: display_name is an optional field for users to identify |
| // CIDR blocks. |
| DisplayName string `json:"displayName,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "CidrBlock") 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. "CidrBlock") 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 *CidrBlock) MarshalJSON() ([]byte, error) { |
| type NoMethod CidrBlock |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ClientCertificateConfig: Configuration for client certificates on the |
| // cluster. |
| type ClientCertificateConfig struct { |
| // IssueClientCertificate: Issue a client certificate. |
| IssueClientCertificate bool `json:"issueClientCertificate,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. |
| // "IssueClientCertificate") 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. "IssueClientCertificate") |
| // 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 *ClientCertificateConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod ClientCertificateConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // CloudRunConfig: Configuration options for the Cloud Run feature. |
| type CloudRunConfig struct { |
| // Disabled: Whether Cloud Run addon is enabled for this cluster. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Disabled") 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. "Disabled") 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 *CloudRunConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod CloudRunConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // Cluster: A Google Kubernetes Engine cluster. |
| type Cluster struct { |
| // AddonsConfig: Configurations for the various addons available to run |
| // in the cluster. |
| AddonsConfig *AddonsConfig `json:"addonsConfig,omitempty"` |
| |
| // AuthenticatorGroupsConfig: Configuration controlling RBAC group |
| // membership information. |
| AuthenticatorGroupsConfig *AuthenticatorGroupsConfig `json:"authenticatorGroupsConfig,omitempty"` |
| |
| // Autoscaling: Cluster-level autoscaling configuration. |
| Autoscaling *ClusterAutoscaling `json:"autoscaling,omitempty"` |
| |
| // BinaryAuthorization: Configuration for Binary Authorization. |
| BinaryAuthorization *BinaryAuthorization `json:"binaryAuthorization,omitempty"` |
| |
| // ClusterIpv4Cidr: The IP address range of the container pods in this |
| // cluster, |
| // in |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `10.96.0.0/14`). Leave blank to have |
| // one automatically chosen or specify a `/14` block in `10.0.0.0/8`. |
| ClusterIpv4Cidr string `json:"clusterIpv4Cidr,omitempty"` |
| |
| // ClusterTelemetry: Telemetry integration for the cluster. |
| ClusterTelemetry *ClusterTelemetry `json:"clusterTelemetry,omitempty"` |
| |
| // Conditions: Which conditions caused the current cluster state. |
| Conditions []*StatusCondition `json:"conditions,omitempty"` |
| |
| // CreateTime: [Output only] The time the cluster was created, |
| // in |
| // [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text format. |
| CreateTime string `json:"createTime,omitempty"` |
| |
| // CurrentMasterVersion: [Output only] The current software version of |
| // the master endpoint. |
| CurrentMasterVersion string `json:"currentMasterVersion,omitempty"` |
| |
| // CurrentNodeCount: [Output only] The number of nodes currently in the |
| // cluster. Deprecated. |
| // Call Kubernetes API directly to retrieve node information. |
| CurrentNodeCount int64 `json:"currentNodeCount,omitempty"` |
| |
| // CurrentNodeVersion: [Output only] Deprecated, |
| // use |
| // [NodePool.version](https://cloud.google.com/kubernetes-engine/docs |
| // /reference/rest/v1beta1/projects.locations.clusters.nodePools) |
| // instead |
| // . The current version of the node software components. |
| // If they are currently at multiple versions because they're in the |
| // process |
| // of being upgraded, this reflects the minimum version of all nodes. |
| CurrentNodeVersion string `json:"currentNodeVersion,omitempty"` |
| |
| // DatabaseEncryption: Configuration of etcd encryption. |
| DatabaseEncryption *DatabaseEncryption `json:"databaseEncryption,omitempty"` |
| |
| // DefaultMaxPodsConstraint: The default constraint on the maximum |
| // number of pods that can be run |
| // simultaneously on a node in the node pool of this cluster. Only |
| // honored |
| // if cluster created with IP Alias support. |
| DefaultMaxPodsConstraint *MaxPodsConstraint `json:"defaultMaxPodsConstraint,omitempty"` |
| |
| // Description: An optional description of this cluster. |
| Description string `json:"description,omitempty"` |
| |
| // EnableKubernetesAlpha: Kubernetes alpha features are enabled on this |
| // cluster. This includes alpha |
| // API groups (e.g. v1beta1) and features that may not be production |
| // ready in |
| // the kubernetes version of the master and nodes. |
| // The cluster has no SLA for uptime and master/node upgrades are |
| // disabled. |
| // Alpha enabled clusters are automatically deleted thirty days |
| // after |
| // creation. |
| EnableKubernetesAlpha bool `json:"enableKubernetesAlpha,omitempty"` |
| |
| // EnableTpu: Enable the ability to use Cloud TPUs in this cluster. |
| // This field is deprecated, use tpu_config.enabled instead. |
| EnableTpu bool `json:"enableTpu,omitempty"` |
| |
| // Endpoint: [Output only] The IP address of this cluster's master |
| // endpoint. |
| // The endpoint can be accessed from the internet |
| // at |
| // `https://username:password@endpoint/`. |
| // |
| // See the `masterAuth` property of this resource for username |
| // and |
| // password information. |
| Endpoint string `json:"endpoint,omitempty"` |
| |
| // ExpireTime: [Output only] The time the cluster will be |
| // automatically |
| // deleted in [RFC3339](https://www.ietf.org/rfc/rfc3339.txt) text |
| // format. |
| ExpireTime string `json:"expireTime,omitempty"` |
| |
| // InitialClusterVersion: The initial Kubernetes version for this |
| // cluster. Valid versions are those |
| // found in validMasterVersions returned by getServerConfig. The |
| // version can |
| // be upgraded over time; such upgrades are reflected |
| // in |
| // currentMasterVersion and currentNodeVersion. |
| // |
| // Users may specify either explicit versions offered by |
| // Kubernetes Engine or version aliases, which have the following |
| // behavior: |
| // |
| // - "latest": picks the highest valid Kubernetes version |
| // - "1.X": picks the highest valid patch+gke.N patch in the 1.X |
| // version |
| // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version |
| // - "1.X.Y-gke.N": picks an explicit Kubernetes version |
| // - "","-": picks the default Kubernetes version |
| InitialClusterVersion string `json:"initialClusterVersion,omitempty"` |
| |
| // InitialNodeCount: The number of nodes to create in this cluster. You |
| // must ensure that your |
| // Compute Engine [resource |
| // quota](https://cloud.google.com/compute/quotas) |
| // is sufficient for this number of instances. You must also have |
| // available |
| // firewall and routes quota. |
| // For requests, this field should only be used in lieu of a |
| // "node_pool" object, since this configuration (along with |
| // the |
| // "node_config") will be used to create a "NodePool" object with |
| // an |
| // auto-generated name. Do not use this and a node_pool at the same |
| // time. |
| // |
| // This field is deprecated, use node_pool.initial_node_count instead. |
| InitialNodeCount int64 `json:"initialNodeCount,omitempty"` |
| |
| // InstanceGroupUrls: Deprecated. Use node_pools.instance_group_urls. |
| InstanceGroupUrls []string `json:"instanceGroupUrls,omitempty"` |
| |
| // IpAllocationPolicy: Configuration for cluster IP allocation. |
| IpAllocationPolicy *IPAllocationPolicy `json:"ipAllocationPolicy,omitempty"` |
| |
| // LabelFingerprint: The fingerprint of the set of labels for this |
| // cluster. |
| LabelFingerprint string `json:"labelFingerprint,omitempty"` |
| |
| // LegacyAbac: Configuration for the legacy ABAC authorization mode. |
| LegacyAbac *LegacyAbac `json:"legacyAbac,omitempty"` |
| |
| // Location: [Output only] The name of the Google Compute |
| // Engine |
| // [zone](https://cloud.google.com/compute/docs/regions-zones/regi |
| // ons-zones#available) |
| // or |
| // [region](https://cloud.google.com/compute/docs |
| // /regions-zones/regions-zones#available) |
| // in which the cluster resides. |
| Location string `json:"location,omitempty"` |
| |
| // Locations: The list of Google Compute |
| // Engine |
| // [zones](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // cluster's nodes should be located. |
| Locations []string `json:"locations,omitempty"` |
| |
| // LoggingService: The logging service the cluster should use to write |
| // logs. |
| // Currently available options: |
| // |
| // * `logging.googleapis.com/kubernetes` - The Cloud Logging |
| // service with a Kubernetes-native resource model |
| // * `logging.googleapis.com` - The legacy Cloud Logging service (no |
| // longer |
| // available as of GKE 1.15). |
| // * `none` - no logs will be exported from the cluster. |
| // |
| // If left as an empty string,`logging.googleapis.com/kubernetes` will |
| // be |
| // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. |
| LoggingService string `json:"loggingService,omitempty"` |
| |
| // MaintenancePolicy: Configure the maintenance policy for this cluster. |
| MaintenancePolicy *MaintenancePolicy `json:"maintenancePolicy,omitempty"` |
| |
| // Master: Configuration for master components. |
| Master *Master `json:"master,omitempty"` |
| |
| // MasterAuth: The authentication information for accessing the master |
| // endpoint. |
| // If unspecified, the defaults are used: |
| // For clusters before v1.12, if master_auth is unspecified, `username` |
| // will |
| // be set to "admin", a random password will be generated, and a |
| // client |
| // certificate will be issued. |
| MasterAuth *MasterAuth `json:"masterAuth,omitempty"` |
| |
| // MasterAuthorizedNetworksConfig: The configuration options for master |
| // authorized networks feature. |
| MasterAuthorizedNetworksConfig *MasterAuthorizedNetworksConfig `json:"masterAuthorizedNetworksConfig,omitempty"` |
| |
| // MasterIpv4CidrBlock: The IP prefix in CIDR notation to use for the |
| // hosted master network. |
| // This prefix will be used for assigning private IP addresses to |
| // the |
| // master or set of masters, as well as the ILB VIP. |
| // This field is deprecated, |
| // use |
| // private_cluster_config.master_ipv4_cidr_block instead. |
| MasterIpv4CidrBlock string `json:"masterIpv4CidrBlock,omitempty"` |
| |
| // MonitoringService: The monitoring service the cluster should use to |
| // write metrics. |
| // Currently available options: |
| // |
| // * "monitoring.googleapis.com/kubernetes" - The Cloud |
| // Monitoring |
| // service with a Kubernetes-native resource model |
| // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service |
| // (no |
| // longer available as of GKE 1.15). |
| // * `none` - No metrics will be exported from the cluster. |
| // |
| // If left as an empty string,`monitoring.googleapis.com/kubernetes` |
| // will be |
| // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier |
| // versions. |
| MonitoringService string `json:"monitoringService,omitempty"` |
| |
| // Name: The name of this cluster. The name must be unique within this |
| // project |
| // and location (e.g. zone or region), and can be up to 40 characters |
| // with |
| // the following restrictions: |
| // |
| // * Lowercase letters, numbers, and hyphens only. |
| // * Must start with a letter. |
| // * Must end with a number or a letter. |
| Name string `json:"name,omitempty"` |
| |
| // Network: The name of the Google Compute |
| // Engine |
| // [network](https://cloud.google.com/compute/docs/networks-and-fi |
| // rewalls#networks) |
| // to which the cluster is connected. If left unspecified, the |
| // `default` |
| // network will be used. On output this shows the network ID instead of |
| // the |
| // name. |
| Network string `json:"network,omitempty"` |
| |
| // NetworkConfig: Configuration for cluster networking. |
| NetworkConfig *NetworkConfig `json:"networkConfig,omitempty"` |
| |
| // NetworkPolicy: Configuration options for the NetworkPolicy feature. |
| NetworkPolicy *NetworkPolicy `json:"networkPolicy,omitempty"` |
| |
| // NodeConfig: Parameters used in creating the cluster's nodes. |
| // For requests, this field should only be used in lieu of a |
| // "node_pool" object, since this configuration (along with |
| // the |
| // "initial_node_count") will be used to create a "NodePool" object with |
| // an |
| // auto-generated name. Do not use this and a node_pool at the same |
| // time. |
| // For responses, this field will be populated with the node |
| // configuration of |
| // the first node pool. (For configuration of each node pool, |
| // see |
| // `node_pool.config`) |
| // |
| // If unspecified, the defaults are used. |
| // This field is deprecated, use node_pool.config instead. |
| NodeConfig *NodeConfig `json:"nodeConfig,omitempty"` |
| |
| // NodeIpv4CidrSize: [Output only] The size of the address space on each |
| // node for hosting |
| // containers. This is provisioned from within the |
| // `container_ipv4_cidr` |
| // range. This field will only be set when cluster is in route-based |
| // network |
| // mode. |
| NodeIpv4CidrSize int64 `json:"nodeIpv4CidrSize,omitempty"` |
| |
| // NodePools: The node pools associated with this cluster. |
| // This field should not be set if "node_config" or "initial_node_count" |
| // are |
| // specified. |
| NodePools []*NodePool `json:"nodePools,omitempty"` |
| |
| // PodSecurityPolicyConfig: Configuration for the PodSecurityPolicy |
| // feature. |
| PodSecurityPolicyConfig *PodSecurityPolicyConfig `json:"podSecurityPolicyConfig,omitempty"` |
| |
| // PrivateCluster: If this is a private cluster setup. Private clusters |
| // are clusters that, by |
| // default have no external IP addresses on the nodes and where nodes |
| // and the |
| // master communicate over private IP addresses. |
| // This field is deprecated, use |
| // private_cluster_config.enable_private_nodes |
| // instead. |
| PrivateCluster bool `json:"privateCluster,omitempty"` |
| |
| // PrivateClusterConfig: Configuration for private cluster. |
| PrivateClusterConfig *PrivateClusterConfig `json:"privateClusterConfig,omitempty"` |
| |
| // ReleaseChannel: Release channel configuration. |
| ReleaseChannel *ReleaseChannel `json:"releaseChannel,omitempty"` |
| |
| // ResourceLabels: The resource labels for the cluster to use to |
| // annotate any related |
| // Google Compute Engine resources. |
| ResourceLabels map[string]string `json:"resourceLabels,omitempty"` |
| |
| // ResourceUsageExportConfig: Configuration for exporting resource |
| // usages. Resource usage export is |
| // disabled when this config unspecified. |
| ResourceUsageExportConfig *ResourceUsageExportConfig `json:"resourceUsageExportConfig,omitempty"` |
| |
| // SelfLink: [Output only] Server-defined URL for the resource. |
| SelfLink string `json:"selfLink,omitempty"` |
| |
| // ServicesIpv4Cidr: [Output only] The IP address range of the |
| // Kubernetes services in |
| // this cluster, |
| // in |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `1.2.3.4/29`). Service addresses are |
| // typically put in the last `/16` from the container CIDR. |
| ServicesIpv4Cidr string `json:"servicesIpv4Cidr,omitempty"` |
| |
| // ShieldedNodes: Shielded Nodes configuration. |
| ShieldedNodes *ShieldedNodes `json:"shieldedNodes,omitempty"` |
| |
| // Status: [Output only] The current status of this cluster. |
| // |
| // Possible values: |
| // "STATUS_UNSPECIFIED" - Not set. |
| // "PROVISIONING" - The PROVISIONING state indicates the cluster is |
| // being created. |
| // "RUNNING" - The RUNNING state indicates the cluster has been |
| // created and is fully |
| // usable. |
| // "RECONCILING" - The RECONCILING state indicates that some work is |
| // actively being done on |
| // the cluster, such as upgrading the master or node software. Details |
| // can |
| // be found in the `statusMessage` field. |
| // "STOPPING" - The STOPPING state indicates the cluster is being |
| // deleted. |
| // "ERROR" - The ERROR state indicates the cluster may be unusable. |
| // Details |
| // can be found in the `statusMessage` field. |
| // "DEGRADED" - The DEGRADED state indicates the cluster requires user |
| // action to restore |
| // full functionality. Details can be found in the `statusMessage` |
| // field. |
| Status string `json:"status,omitempty"` |
| |
| // StatusMessage: [Output only] Additional information about the current |
| // status of this |
| // cluster, if available. |
| StatusMessage string `json:"statusMessage,omitempty"` |
| |
| // Subnetwork: The name of the Google Compute |
| // Engine |
| // [subnetwork](https://cloud.google.com/compute/docs/subnetworks) |
| // to which |
| // the cluster is connected. On output this shows the subnetwork ID |
| // instead of |
| // the name. |
| Subnetwork string `json:"subnetwork,omitempty"` |
| |
| // TpuConfig: Configuration for Cloud TPU support; |
| TpuConfig *TpuConfig `json:"tpuConfig,omitempty"` |
| |
| // TpuIpv4CidrBlock: [Output only] The IP address range of the Cloud |
| // TPUs in this cluster, |
| // in |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `1.2.3.4/29`). |
| TpuIpv4CidrBlock string `json:"tpuIpv4CidrBlock,omitempty"` |
| |
| // VerticalPodAutoscaling: Cluster-level Vertical Pod Autoscaling |
| // configuration. |
| VerticalPodAutoscaling *VerticalPodAutoscaling `json:"verticalPodAutoscaling,omitempty"` |
| |
| // WorkloadIdentityConfig: Configuration for the use of Kubernetes |
| // Service Accounts in GCP IAM |
| // policies. |
| WorkloadIdentityConfig *WorkloadIdentityConfig `json:"workloadIdentityConfig,omitempty"` |
| |
| // Zone: [Output only] The name of the Google Compute |
| // Engine |
| // [zone](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // cluster resides. This field is deprecated, use location instead. |
| 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. "AddonsConfig") 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. "AddonsConfig") 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 *Cluster) MarshalJSON() ([]byte, error) { |
| type NoMethod Cluster |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ClusterAutoscaling: ClusterAutoscaling contains global, per-cluster |
| // information |
| // required by Cluster Autoscaler to automatically adjust |
| // the size of the cluster and create/delete |
| // node pools based on the current needs. |
| type ClusterAutoscaling struct { |
| // AutoprovisioningLocations: The list of Google Compute |
| // Engine |
| // [zones](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // NodePool's nodes can be created by NAP. |
| AutoprovisioningLocations []string `json:"autoprovisioningLocations,omitempty"` |
| |
| // AutoprovisioningNodePoolDefaults: AutoprovisioningNodePoolDefaults |
| // contains defaults for a node pool |
| // created by NAP. |
| AutoprovisioningNodePoolDefaults *AutoprovisioningNodePoolDefaults `json:"autoprovisioningNodePoolDefaults,omitempty"` |
| |
| // AutoscalingProfile: Defines autoscaling behaviour. |
| // |
| // Possible values: |
| // "PROFILE_UNSPECIFIED" - No change to autoscaling configuration. |
| // "OPTIMIZE_UTILIZATION" - Prioritize optimizing utilization of |
| // resources. |
| // "BALANCED" - Use default (balanced) autoscaling configuration. |
| AutoscalingProfile string `json:"autoscalingProfile,omitempty"` |
| |
| // EnableNodeAutoprovisioning: Enables automatic node pool creation and |
| // deletion. |
| EnableNodeAutoprovisioning bool `json:"enableNodeAutoprovisioning,omitempty"` |
| |
| // ResourceLimits: Contains global constraints regarding minimum and |
| // maximum |
| // amount of resources in the cluster. |
| ResourceLimits []*ResourceLimit `json:"resourceLimits,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. |
| // "AutoprovisioningLocations") 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. |
| // "AutoprovisioningLocations") 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 *ClusterAutoscaling) MarshalJSON() ([]byte, error) { |
| type NoMethod ClusterAutoscaling |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ClusterTelemetry: Telemetry integration for the cluster. |
| type ClusterTelemetry struct { |
| // Type: Type of the integration. |
| // |
| // Possible values: |
| // "UNSPECIFIED" - Not set. |
| // "DISABLED" - Monitoring integration is disabled. |
| // "ENABLED" - Monitoring integration is enabled. |
| // "SYSTEM_ONLY" - Only system components are monitored and logged. |
| Type string `json:"type,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Type") 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. "Type") 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 *ClusterTelemetry) MarshalJSON() ([]byte, error) { |
| type NoMethod ClusterTelemetry |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ClusterUpdate: ClusterUpdate describes an update to the cluster. |
| // Exactly one update can |
| // be applied to a cluster with each request, so at most one field can |
| // be |
| // provided. |
| type ClusterUpdate struct { |
| // DesiredAddonsConfig: Configurations for the various addons available |
| // to run in the cluster. |
| DesiredAddonsConfig *AddonsConfig `json:"desiredAddonsConfig,omitempty"` |
| |
| // DesiredBinaryAuthorization: The desired configuration options for the |
| // Binary Authorization feature. |
| DesiredBinaryAuthorization *BinaryAuthorization `json:"desiredBinaryAuthorization,omitempty"` |
| |
| // DesiredClusterAutoscaling: Cluster-level autoscaling configuration. |
| DesiredClusterAutoscaling *ClusterAutoscaling `json:"desiredClusterAutoscaling,omitempty"` |
| |
| // DesiredClusterTelemetry: The desired telemetry integration for the |
| // cluster. |
| DesiredClusterTelemetry *ClusterTelemetry `json:"desiredClusterTelemetry,omitempty"` |
| |
| // DesiredDatabaseEncryption: Configuration of etcd encryption. |
| DesiredDatabaseEncryption *DatabaseEncryption `json:"desiredDatabaseEncryption,omitempty"` |
| |
| // DesiredDefaultSnatStatus: The desired status of whether to disable |
| // default sNAT for this cluster. |
| DesiredDefaultSnatStatus *DefaultSnatStatus `json:"desiredDefaultSnatStatus,omitempty"` |
| |
| // DesiredImageType: The desired image type for the node pool. |
| // NOTE: Set the "desired_node_pool" field as well. |
| DesiredImageType string `json:"desiredImageType,omitempty"` |
| |
| // DesiredIntraNodeVisibilityConfig: The desired config of Intra-node |
| // visibility. |
| DesiredIntraNodeVisibilityConfig *IntraNodeVisibilityConfig `json:"desiredIntraNodeVisibilityConfig,omitempty"` |
| |
| // DesiredLocations: The desired list of Google Compute |
| // Engine |
| // [zones](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // cluster's nodes should be located. Changing the locations a cluster |
| // is in |
| // will result in nodes being either created or removed from the |
| // cluster, |
| // depending on whether locations are being added or removed. |
| // |
| // This list must always include the cluster's primary zone. |
| DesiredLocations []string `json:"desiredLocations,omitempty"` |
| |
| // DesiredLoggingService: The logging service the cluster should use to |
| // write logs. |
| // Currently available options: |
| // |
| // * `logging.googleapis.com/kubernetes` - The Cloud Logging |
| // service with a Kubernetes-native resource model |
| // * `logging.googleapis.com` - The legacy Cloud Logging service (no |
| // longer |
| // available as of GKE 1.15). |
| // * `none` - no logs will be exported from the cluster. |
| // |
| // If left as an empty string,`logging.googleapis.com/kubernetes` will |
| // be |
| // used for GKE 1.14+ or `logging.googleapis.com` for earlier versions. |
| DesiredLoggingService string `json:"desiredLoggingService,omitempty"` |
| |
| // DesiredMaster: Configuration for master components. |
| DesiredMaster *Master `json:"desiredMaster,omitempty"` |
| |
| // DesiredMasterAuthorizedNetworksConfig: The desired configuration |
| // options for master authorized networks feature. |
| DesiredMasterAuthorizedNetworksConfig *MasterAuthorizedNetworksConfig `json:"desiredMasterAuthorizedNetworksConfig,omitempty"` |
| |
| // DesiredMasterVersion: The Kubernetes version to change the master to. |
| // The only valid value is the |
| // latest supported version. |
| // |
| // Users may specify either explicit versions offered by |
| // Kubernetes Engine or version aliases, which have the following |
| // behavior: |
| // |
| // - "latest": picks the highest valid Kubernetes version |
| // - "1.X": picks the highest valid patch+gke.N patch in the 1.X |
| // version |
| // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version |
| // - "1.X.Y-gke.N": picks an explicit Kubernetes version |
| // - "-": picks the default Kubernetes version |
| DesiredMasterVersion string `json:"desiredMasterVersion,omitempty"` |
| |
| // DesiredMonitoringService: The monitoring service the cluster should |
| // use to write metrics. |
| // Currently available options: |
| // |
| // * "monitoring.googleapis.com/kubernetes" - The Cloud |
| // Monitoring |
| // service with a Kubernetes-native resource model |
| // * `monitoring.googleapis.com` - The legacy Cloud Monitoring service |
| // (no |
| // longer available as of GKE 1.15). |
| // * `none` - No metrics will be exported from the cluster. |
| // |
| // If left as an empty string,`monitoring.googleapis.com/kubernetes` |
| // will be |
| // used for GKE 1.14+ or `monitoring.googleapis.com` for earlier |
| // versions. |
| DesiredMonitoringService string `json:"desiredMonitoringService,omitempty"` |
| |
| // DesiredNodePoolAutoscaling: Autoscaler configuration for the node |
| // pool specified in |
| // desired_node_pool_id. If there is only one pool in the |
| // cluster and desired_node_pool_id is not provided then |
| // the change applies to that single node pool. |
| DesiredNodePoolAutoscaling *NodePoolAutoscaling `json:"desiredNodePoolAutoscaling,omitempty"` |
| |
| // DesiredNodePoolId: The node pool to be upgraded. This field is |
| // mandatory if |
| // "desired_node_version", |
| // "desired_image_family", |
| // "desired_node_pool_autoscaling", or |
| // "desired_workload_metadata_config" |
| // is specified and there is more than one node pool on the cluster. |
| DesiredNodePoolId string `json:"desiredNodePoolId,omitempty"` |
| |
| // DesiredNodeVersion: The Kubernetes version to change the nodes to |
| // (typically an |
| // upgrade). |
| // |
| // Users may specify either explicit versions offered by |
| // Kubernetes Engine or version aliases, which have the following |
| // behavior: |
| // |
| // - "latest": picks the highest valid Kubernetes version |
| // - "1.X": picks the highest valid patch+gke.N patch in the 1.X |
| // version |
| // - "1.X.Y": picks the highest valid gke.N patch in the 1.X.Y version |
| // - "1.X.Y-gke.N": picks an explicit Kubernetes version |
| // - "-": picks the Kubernetes master version |
| DesiredNodeVersion string `json:"desiredNodeVersion,omitempty"` |
| |
| // DesiredPodSecurityPolicyConfig: The desired configuration options for |
| // the PodSecurityPolicy feature. |
| DesiredPodSecurityPolicyConfig *PodSecurityPolicyConfig `json:"desiredPodSecurityPolicyConfig,omitempty"` |
| |
| // DesiredPrivateClusterConfig: The desired private cluster |
| // configuration. |
| DesiredPrivateClusterConfig *PrivateClusterConfig `json:"desiredPrivateClusterConfig,omitempty"` |
| |
| // DesiredReleaseChannel: The desired release channel configuration. |
| DesiredReleaseChannel *ReleaseChannel `json:"desiredReleaseChannel,omitempty"` |
| |
| // DesiredResourceUsageExportConfig: The desired configuration for |
| // exporting resource usage. |
| DesiredResourceUsageExportConfig *ResourceUsageExportConfig `json:"desiredResourceUsageExportConfig,omitempty"` |
| |
| // DesiredShieldedNodes: Configuration for Shielded Nodes. |
| DesiredShieldedNodes *ShieldedNodes `json:"desiredShieldedNodes,omitempty"` |
| |
| // DesiredTpuConfig: The desired Cloud TPU configuration. |
| DesiredTpuConfig *TpuConfig `json:"desiredTpuConfig,omitempty"` |
| |
| // DesiredVerticalPodAutoscaling: Cluster-level Vertical Pod Autoscaling |
| // configuration. |
| DesiredVerticalPodAutoscaling *VerticalPodAutoscaling `json:"desiredVerticalPodAutoscaling,omitempty"` |
| |
| // DesiredWorkloadIdentityConfig: Configuration for Workload Identity. |
| DesiredWorkloadIdentityConfig *WorkloadIdentityConfig `json:"desiredWorkloadIdentityConfig,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "DesiredAddonsConfig") |
| // 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. "DesiredAddonsConfig") 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 *ClusterUpdate) MarshalJSON() ([]byte, error) { |
| type NoMethod ClusterUpdate |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // CompleteIPRotationRequest: CompleteIPRotationRequest moves the |
| // cluster master back into single-IP mode. |
| type CompleteIPRotationRequest struct { |
| // ClusterId: Required. Deprecated. The name of the cluster. |
| // This field has been deprecated and replaced by the name field. |
| ClusterId string `json:"clusterId,omitempty"` |
| |
| // Name: The name (project, location, cluster id) of the cluster to |
| // complete IP |
| // rotation. Specified in the format |
| // `projects/*/locations/*/clusters/*`. |
| Name string `json:"name,omitempty"` |
| |
| // ProjectId: Required. Deprecated. The Google Developers Console |
| // [project ID or |
| // project |
| // number](https://developers.google.com/console/help/new/#projec |
| // tnumber). |
| // This field has been deprecated and replaced by the name field. |
| ProjectId string `json:"projectId,omitempty"` |
| |
| // Zone: Required. Deprecated. The name of the Google Compute |
| // Engine |
| // [zone](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // cluster resides. This field has been deprecated and replaced by the |
| // name |
| // field. |
| Zone string `json:"zone,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "ClusterId") 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. "ClusterId") 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 *CompleteIPRotationRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod CompleteIPRotationRequest |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ConfigConnectorConfig: Configuration options for the Config Connector |
| // add-on. |
| type ConfigConnectorConfig struct { |
| // Enabled: Whether Cloud Connector is enabled for this cluster. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ConfigConnectorConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod ConfigConnectorConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ConsumptionMeteringConfig: Parameters for controlling consumption |
| // metering. |
| type ConsumptionMeteringConfig struct { |
| // Enabled: Whether to enable consumption metering for this cluster. If |
| // enabled, a |
| // second BigQuery table will be created to hold resource |
| // consumption |
| // records. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ConsumptionMeteringConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod ConsumptionMeteringConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // CreateClusterRequest: CreateClusterRequest creates a cluster. |
| type CreateClusterRequest struct { |
| // Cluster: Required. A |
| // [cluster |
| // resource](https://cloud.google.com/container-engine/reference |
| // /rest/v1beta1/projects.locations.clusters) |
| Cluster *Cluster `json:"cluster,omitempty"` |
| |
| // Parent: The parent (project and location) where the cluster will be |
| // created. |
| // Specified in the format `projects/*/locations/*`. |
| Parent string `json:"parent,omitempty"` |
| |
| // ProjectId: Required. Deprecated. The Google Developers Console |
| // [project ID or |
| // project |
| // number](https://support.google.com/cloud/answer/6158840). |
| // This |
| // field has been deprecated and replaced by the parent field. |
| ProjectId string `json:"projectId,omitempty"` |
| |
| // Zone: Required. Deprecated. The name of the Google Compute |
| // Engine |
| // [zone](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // cluster resides. This field has been deprecated and replaced by the |
| // parent |
| // field. |
| Zone string `json:"zone,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Cluster") 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. "Cluster") 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 *CreateClusterRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod CreateClusterRequest |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // CreateNodePoolRequest: CreateNodePoolRequest creates a node pool for |
| // a cluster. |
| type CreateNodePoolRequest struct { |
| // ClusterId: Required. Deprecated. The name of the cluster. |
| // This field has been deprecated and replaced by the parent field. |
| ClusterId string `json:"clusterId,omitempty"` |
| |
| // NodePool: Required. The node pool to create. |
| NodePool *NodePool `json:"nodePool,omitempty"` |
| |
| // Parent: The parent (project, location, cluster id) where the node |
| // pool will be |
| // created. Specified in the format |
| // `projects/*/locations/*/clusters/*`. |
| Parent string `json:"parent,omitempty"` |
| |
| // ProjectId: Required. Deprecated. The Google Developers Console |
| // [project ID or |
| // project |
| // number](https://developers.google.com/console/help/new/#projec |
| // tnumber). |
| // This field has been deprecated and replaced by the parent field. |
| ProjectId string `json:"projectId,omitempty"` |
| |
| // Zone: Required. Deprecated. The name of the Google Compute |
| // Engine |
| // [zone](https://cloud.google.com/compute/docs/zones#available) in |
| // which the |
| // cluster resides. This field has been deprecated and replaced by the |
| // parent |
| // field. |
| Zone string `json:"zone,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "ClusterId") 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. "ClusterId") 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 *CreateNodePoolRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod CreateNodePoolRequest |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // DailyMaintenanceWindow: Time window specified for daily maintenance |
| // operations. |
| type DailyMaintenanceWindow struct { |
| // Duration: [Output only] Duration of the time window, automatically |
| // chosen to be |
| // smallest possible in the given scenario. |
| Duration string `json:"duration,omitempty"` |
| |
| // StartTime: Time within the maintenance window to start the |
| // maintenance operations. |
| // It must be in format "HH:MM", where HH : [00-23] and MM : [00-59] |
| // GMT. |
| StartTime string `json:"startTime,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Duration") 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. "Duration") 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 *DailyMaintenanceWindow) MarshalJSON() ([]byte, error) { |
| type NoMethod DailyMaintenanceWindow |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // DatabaseEncryption: Configuration of etcd encryption. |
| type DatabaseEncryption struct { |
| // KeyName: Name of CloudKMS key to use for the encryption of secrets in |
| // etcd. |
| // Ex. |
| // projects/my-project/locations/global/keyRings/my-ring/cryptoKeys/my-ke |
| // y |
| KeyName string `json:"keyName,omitempty"` |
| |
| // State: Denotes the state of etcd encryption. |
| // |
| // Possible values: |
| // "UNKNOWN" - Should never be set |
| // "ENCRYPTED" - Secrets in etcd are encrypted. |
| // "DECRYPTED" - Secrets in etcd are stored in plain text (at etcd |
| // level) - this is |
| // unrelated to Compute Engine level full disk encryption. |
| State string `json:"state,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "KeyName") 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. "KeyName") 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 *DatabaseEncryption) MarshalJSON() ([]byte, error) { |
| type NoMethod DatabaseEncryption |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // DefaultSnatStatus: DefaultSnatStatus contains the desired state of |
| // whether default sNAT should |
| // be disabled on the cluster. |
| type DefaultSnatStatus struct { |
| // Disabled: Disables cluster default sNAT rules. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Disabled") 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. "Disabled") 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 *DefaultSnatStatus) MarshalJSON() ([]byte, error) { |
| type NoMethod DefaultSnatStatus |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // DnsCacheConfig: Configuration for NodeLocal DNSCache |
| type DnsCacheConfig struct { |
| // Enabled: Whether NodeLocal DNSCache is enabled for this cluster. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *DnsCacheConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod DnsCacheConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // Empty: A generic empty message that you can re-use to avoid defining |
| // duplicated |
| // empty messages in your APIs. A typical example is to use it as the |
| // request |
| // or the response type of an API method. For instance: |
| // |
| // service Foo { |
| // rpc Bar(google.protobuf.Empty) returns |
| // (google.protobuf.Empty); |
| // } |
| // |
| // The JSON representation for `Empty` is empty JSON object `{}`. |
| type Empty struct { |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| } |
| |
| // GcePersistentDiskCsiDriverConfig: Configuration for the Compute |
| // Engine PD CSI driver. This option can only be |
| // enabled at cluster creation time. |
| type GcePersistentDiskCsiDriverConfig struct { |
| // Enabled: Whether the Compute Engine PD CSI driver is enabled for this |
| // cluster. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GcePersistentDiskCsiDriverConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod GcePersistentDiskCsiDriverConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // GetJSONWebKeysResponse: GetJSONWebKeysResponse is a valid JSON Web |
| // Key Set as specififed in rfc 7517 |
| type GetJSONWebKeysResponse struct { |
| // CacheHeader: OnePlatform automatically extracts this field and uses |
| // it to set the HTTP |
| // Cache-Control header. |
| CacheHeader *HttpCacheControlResponseHeader `json:"cacheHeader,omitempty"` |
| |
| // Keys: The public component of the keys used by the cluster to sign |
| // token |
| // requests. |
| Keys []*Jwk `json:"keys,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "CacheHeader") 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. "CacheHeader") 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 *GetJSONWebKeysResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod GetJSONWebKeysResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // GetOpenIDConfigResponse: GetOpenIDConfigResponse is an OIDC discovery |
| // document for the cluster. |
| // See the OpenID Connect Discovery 1.0 specification for details. |
| type GetOpenIDConfigResponse struct { |
| // CacheHeader: OnePlatform automatically extracts this field and uses |
| // it to set the HTTP |
| // Cache-Control header. |
| CacheHeader *HttpCacheControlResponseHeader `json:"cacheHeader,omitempty"` |
| |
| // ClaimsSupported: Supported claims. |
| ClaimsSupported []string `json:"claims_supported,omitempty"` |
| |
| // GrantTypes: Supported grant types. |
| GrantTypes []string `json:"grant_types,omitempty"` |
| |
| // IdTokenSigningAlgValuesSupported: supported ID Token signing |
| // Algorithms. |
| IdTokenSigningAlgValuesSupported []string `json:"id_token_signing_alg_values_supported,omitempty"` |
| |
| // Issuer: OIDC Issuer. |
| Issuer string `json:"issuer,omitempty"` |
| |
| // JwksUri: JSON Web Key uri. |
| JwksUri string `json:"jwks_uri,omitempty"` |
| |
| // ResponseTypesSupported: Supported response types. |
| ResponseTypesSupported []string `json:"response_types_supported,omitempty"` |
| |
| // SubjectTypesSupported: Supported subject types. |
| SubjectTypesSupported []string `json:"subject_types_supported,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "CacheHeader") 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. "CacheHeader") 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 *GetOpenIDConfigResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod GetOpenIDConfigResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // HorizontalPodAutoscaling: Configuration options for the horizontal |
| // pod autoscaling feature, which |
| // increases or decreases the number of replica pods a replication |
| // controller |
| // has based on the resource usage of the existing pods. |
| type HorizontalPodAutoscaling struct { |
| // Disabled: Whether the Horizontal Pod Autoscaling feature is enabled |
| // in the cluster. |
| // When enabled, it ensures that metrics are collected into |
| // Stackdriver |
| // Monitoring. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Disabled") 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. "Disabled") 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 *HorizontalPodAutoscaling) MarshalJSON() ([]byte, error) { |
| type NoMethod HorizontalPodAutoscaling |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // HttpCacheControlResponseHeader: RFC-2616: cache control support |
| type HttpCacheControlResponseHeader struct { |
| // Age: 14.6 response cache age, in seconds since the response is |
| // generated |
| Age int64 `json:"age,omitempty,string"` |
| |
| // Directive: 14.9 request and response directives |
| Directive string `json:"directive,omitempty"` |
| |
| // Expires: 14.21 response cache expires, in RFC 1123 date format |
| Expires string `json:"expires,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Age") 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. "Age") 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 *HttpCacheControlResponseHeader) MarshalJSON() ([]byte, error) { |
| type NoMethod HttpCacheControlResponseHeader |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // HttpLoadBalancing: Configuration options for the HTTP (L7) load |
| // balancing controller addon, |
| // which makes it easy to set up HTTP load balancers for services in a |
| // cluster. |
| type HttpLoadBalancing struct { |
| // Disabled: Whether the HTTP Load Balancing controller is enabled in |
| // the cluster. |
| // When enabled, it runs a small pod in the cluster that manages the |
| // load |
| // balancers. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Disabled") 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. "Disabled") 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 *HttpLoadBalancing) MarshalJSON() ([]byte, error) { |
| type NoMethod HttpLoadBalancing |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // IPAllocationPolicy: Configuration for controlling how IPs are |
| // allocated in the cluster. |
| type IPAllocationPolicy struct { |
| // AllowRouteOverlap: If true, allow allocation of cluster CIDR ranges |
| // that overlap with certain |
| // kinds of network routes. By default we do not allow cluster CIDR |
| // ranges to |
| // intersect with any user declared routes. With allow_route_overlap == |
| // true, |
| // we allow overlapping with CIDR ranges that are larger than the |
| // cluster CIDR |
| // range. |
| // |
| // If this field is set to true, then cluster and services CIDRs must |
| // be |
| // fully-specified (e.g. `10.96.0.0/14`, but not `/14`), which means: |
| // 1) When `use_ip_aliases` is true, `cluster_ipv4_cidr_block` and |
| // `services_ipv4_cidr_block` must be fully-specified. |
| // 2) When `use_ip_aliases` is false, `cluster.cluster_ipv4_cidr` muse |
| // be |
| // fully-specified. |
| AllowRouteOverlap bool `json:"allowRouteOverlap,omitempty"` |
| |
| // ClusterIpv4Cidr: This field is deprecated, use |
| // cluster_ipv4_cidr_block. |
| ClusterIpv4Cidr string `json:"clusterIpv4Cidr,omitempty"` |
| |
| // ClusterIpv4CidrBlock: The IP address range for the cluster pod IPs. |
| // If this field is set, then |
| // `cluster.cluster_ipv4_cidr` must be left blank. |
| // |
| // This field is only applicable when `use_ip_aliases` is true. |
| // |
| // Set to blank to have a range chosen with the default size. |
| // |
| // Set to /netmask (e.g. `/14`) to have a range chosen with a |
| // specific |
| // netmask. |
| // |
| // Set to |
| // a |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks |
| // (e.g. |
| // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific |
| // range |
| // to use. |
| ClusterIpv4CidrBlock string `json:"clusterIpv4CidrBlock,omitempty"` |
| |
| // ClusterSecondaryRangeName: The name of the secondary range to be used |
| // for the cluster CIDR |
| // block. The secondary range will be used for pod IP |
| // addresses. This must be an existing secondary range associated |
| // with the cluster subnetwork. |
| // |
| // This field is only applicable with use_ip_aliases |
| // and |
| // create_subnetwork is false. |
| ClusterSecondaryRangeName string `json:"clusterSecondaryRangeName,omitempty"` |
| |
| // CreateSubnetwork: Whether a new subnetwork will be created |
| // automatically for the cluster. |
| // |
| // This field is only applicable when `use_ip_aliases` is true. |
| CreateSubnetwork bool `json:"createSubnetwork,omitempty"` |
| |
| // NodeIpv4Cidr: This field is deprecated, use node_ipv4_cidr_block. |
| NodeIpv4Cidr string `json:"nodeIpv4Cidr,omitempty"` |
| |
| // NodeIpv4CidrBlock: The IP address range of the instance IPs in this |
| // cluster. |
| // |
| // This is applicable only if `create_subnetwork` is true. |
| // |
| // Set to blank to have a range chosen with the default size. |
| // |
| // Set to /netmask (e.g. `/14`) to have a range chosen with a |
| // specific |
| // netmask. |
| // |
| // Set to |
| // a |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks |
| // (e.g. |
| // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific |
| // range |
| // to use. |
| NodeIpv4CidrBlock string `json:"nodeIpv4CidrBlock,omitempty"` |
| |
| // ServicesIpv4Cidr: This field is deprecated, use |
| // services_ipv4_cidr_block. |
| ServicesIpv4Cidr string `json:"servicesIpv4Cidr,omitempty"` |
| |
| // ServicesIpv4CidrBlock: The IP address range of the services IPs in |
| // this cluster. If blank, a range |
| // will be automatically chosen with the default size. |
| // |
| // This field is only applicable when `use_ip_aliases` is true. |
| // |
| // Set to blank to have a range chosen with the default size. |
| // |
| // Set to /netmask (e.g. `/14`) to have a range chosen with a |
| // specific |
| // netmask. |
| // |
| // Set to |
| // a |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks |
| // (e.g. |
| // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific |
| // range |
| // to use. |
| ServicesIpv4CidrBlock string `json:"servicesIpv4CidrBlock,omitempty"` |
| |
| // ServicesSecondaryRangeName: The name of the secondary range to be |
| // used as for the services |
| // CIDR block. The secondary range will be used for service |
| // ClusterIPs. This must be an existing secondary range associated |
| // with the cluster subnetwork. |
| // |
| // This field is only applicable with use_ip_aliases |
| // and |
| // create_subnetwork is false. |
| ServicesSecondaryRangeName string `json:"servicesSecondaryRangeName,omitempty"` |
| |
| // SubnetworkName: A custom subnetwork name to be used if |
| // `create_subnetwork` is true. If |
| // this field is empty, then an automatic name will be chosen for the |
| // new |
| // subnetwork. |
| SubnetworkName string `json:"subnetworkName,omitempty"` |
| |
| // TpuIpv4CidrBlock: The IP address range of the Cloud TPUs in this |
| // cluster. If unspecified, a |
| // range will be automatically chosen with the default size. |
| // |
| // This field is only applicable when `use_ip_aliases` is true. |
| // |
| // If unspecified, the range will use the default size. |
| // |
| // Set to /netmask (e.g. `/14`) to have a range chosen with a |
| // specific |
| // netmask. |
| // |
| // Set to |
| // a |
| // [CIDR](http://en.wikipedia.org/wiki/Classless_Inter-Domain_Routing) |
| // |
| // notation (e.g. `10.96.0.0/14`) from the RFC-1918 private networks |
| // (e.g. |
| // `10.0.0.0/8`, `172.16.0.0/12`, `192.168.0.0/16`) to pick a specific |
| // range |
| // to use. |
| // This field is deprecated, use cluster.tpu_config.ipv4_cidr_block |
| // instead. |
| TpuIpv4CidrBlock string `json:"tpuIpv4CidrBlock,omitempty"` |
| |
| // UseIpAliases: Whether alias IPs will be used for pod IPs in the |
| // cluster. |
| // This is used in conjunction with use_routes. It cannot |
| // be true if use_routes is true. If both use_ip_aliases and use_routes |
| // are |
| // false, then the server picks the default IP allocation mode |
| UseIpAliases bool `json:"useIpAliases,omitempty"` |
| |
| // UseRoutes: Whether routes will be used for pod IPs in the |
| // cluster. |
| // This is used in conjunction with use_ip_aliases. It cannot be true |
| // if |
| // use_ip_aliases is true. If both use_ip_aliases and use_routes are |
| // false, |
| // then the server picks the default IP allocation mode |
| UseRoutes bool `json:"useRoutes,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "AllowRouteOverlap") |
| // 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. "AllowRouteOverlap") 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 *IPAllocationPolicy) MarshalJSON() ([]byte, error) { |
| type NoMethod IPAllocationPolicy |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // IntraNodeVisibilityConfig: IntraNodeVisibilityConfig contains the |
| // desired config of the intra-node |
| // visibility on this cluster. |
| type IntraNodeVisibilityConfig struct { |
| // Enabled: Enables intra node visibility for this cluster. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *IntraNodeVisibilityConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod IntraNodeVisibilityConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // IstioConfig: Configuration options for Istio addon. |
| type IstioConfig struct { |
| // Auth: The specified Istio auth mode, either none, or mutual TLS. |
| // |
| // Possible values: |
| // "AUTH_NONE" - auth not enabled |
| // "AUTH_MUTUAL_TLS" - auth mutual TLS enabled |
| Auth string `json:"auth,omitempty"` |
| |
| // Disabled: Whether Istio is enabled for this cluster. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Auth") 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. "Auth") 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 *IstioConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod IstioConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // Jwk: Jwk is a JSON Web Key as specified in RFC 7517 |
| type Jwk struct { |
| // Alg: Algorithm. |
| Alg string `json:"alg,omitempty"` |
| |
| // Crv: Used for ECDSA keys. |
| Crv string `json:"crv,omitempty"` |
| |
| // E: Used for RSA keys. |
| E string `json:"e,omitempty"` |
| |
| // Kid: Key ID. |
| Kid string `json:"kid,omitempty"` |
| |
| // Kty: Key Type. |
| Kty string `json:"kty,omitempty"` |
| |
| // N: Used for RSA keys. |
| N string `json:"n,omitempty"` |
| |
| // Use: Permitted uses for the public keys. |
| Use string `json:"use,omitempty"` |
| |
| // X: Used for ECDSA keys. |
| X string `json:"x,omitempty"` |
| |
| // Y: Used for ECDSA keys. |
| Y string `json:"y,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Alg") 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. "Alg") 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 *Jwk) MarshalJSON() ([]byte, error) { |
| type NoMethod Jwk |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // KalmConfig: Configuration options for the KALM addon. |
| type KalmConfig struct { |
| // Enabled: Whether KALM is enabled for this cluster. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *KalmConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod KalmConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // KubernetesDashboard: Configuration for the Kubernetes Dashboard. |
| type KubernetesDashboard struct { |
| // Disabled: Whether the Kubernetes Dashboard is enabled for this |
| // cluster. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Disabled") 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. "Disabled") 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 *KubernetesDashboard) MarshalJSON() ([]byte, error) { |
| type NoMethod KubernetesDashboard |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // LegacyAbac: Configuration for the legacy Attribute Based Access |
| // Control authorization |
| // mode. |
| type LegacyAbac struct { |
| // Enabled: Whether the ABAC authorizer is enabled for this cluster. |
| // When enabled, |
| // identities in the system, including service accounts, nodes, |
| // and |
| // controllers, will have statically granted permissions beyond |
| // those |
| // provided by the RBAC configuration or IAM. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *LegacyAbac) MarshalJSON() ([]byte, error) { |
| type NoMethod LegacyAbac |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // LinuxNodeConfig: Parameters that can be configured on Linux nodes. |
| type LinuxNodeConfig struct { |
| // Sysctls: The Linux kernel parameters to be applied to the nodes and |
| // all pods running |
| // on the nodes. |
| // |
| // The following parameters are |
| // supported. |
| // |
| // net.core.netdev_max_backlog |
| // net.core.rmem_max |
| // net.core.wme |
| // m_default |
| // net.core.wmem_max |
| // net.core.optmem_max |
| // net.core.somaxconn |
| // net |
| // .ipv4.tcp_rmem |
| // net.ipv4.tcp_wmem |
| // net.ipv4.tcp_tw_reuse |
| Sysctls map[string]string `json:"sysctls,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Sysctls") 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. "Sysctls") 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 *LinuxNodeConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod LinuxNodeConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListClustersResponse: ListClustersResponse is the result of |
| // ListClustersRequest. |
| type ListClustersResponse struct { |
| // Clusters: A list of clusters in the project in the specified zone, |
| // or |
| // across all ones. |
| Clusters []*Cluster `json:"clusters,omitempty"` |
| |
| // MissingZones: If any zones are listed here, the list of clusters |
| // returned |
| // may be missing those zones. |
| MissingZones []string `json:"missingZones,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "Clusters") 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. "Clusters") 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 *ListClustersResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListClustersResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListLocationsResponse: ListLocationsResponse returns the list of all |
| // GKE locations and their |
| // recommendation state. |
| type ListLocationsResponse struct { |
| // Locations: A full list of GKE locations. |
| Locations []*Location `json:"locations,omitempty"` |
| |
| // NextPageToken: Only return ListLocationsResponse that occur after the |
| // page_token. This |
| // value should be populated from the |
| // ListLocationsResponse.next_page_token if |
| // that response token was set (which happens when listing more |
| // Locations than |
| // fit in a single ListLocationsResponse). |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "Locations") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Locations") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListLocationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListLocationsResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListNodePoolsResponse: ListNodePoolsResponse is the result of |
| // ListNodePoolsRequest. |
| type ListNodePoolsResponse struct { |
| // NodePools: A list of node pools for a cluster. |
| NodePools []*NodePool `json:"nodePools,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "NodePools") 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. "NodePools") 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 *ListNodePoolsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListNodePoolsResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListOperationsResponse: ListOperationsResponse is the result of |
| // ListOperationsRequest. |
| type ListOperationsResponse struct { |
| // MissingZones: If any zones are listed here, the list of operations |
| // returned |
| // may be missing the operations from those zones. |
| MissingZones []string `json:"missingZones,omitempty"` |
| |
| // Operations: A list of operations in the project in the specified |
| // zone. |
| Operations []*Operation `json:"operations,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "MissingZones") 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. "MissingZones") to include |
| // in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. However, any field with |
| // an empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListOperationsResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListUsableSubnetworksResponse: ListUsableSubnetworksResponse is the |
| // response of |
| // ListUsableSubnetworksRequest. |
| type ListUsableSubnetworksResponse struct { |
| // NextPageToken: This token allows you to get the next page of results |
| // for list requests. |
| // If the number of results is larger than `page_size`, use |
| // the |
| // `next_page_token` as a value for the query parameter `page_token` in |
| // the |
| // next request. The value will become empty when there are no more |
| // pages. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| |
| // Subnetworks: A list of usable subnetworks in the specified network |
| // project. |
| Subnetworks []*UsableSubnetwork `json:"subnetworks,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the |
| // server. |
| googleapi.ServerResponse `json:"-"` |
| |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "NextPageToken") to include |
| // in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. However, any field with |
| // an empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListUsableSubnetworksResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListUsableSubnetworksResponse |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // Location: Location returns the location name, and if the location is |
| // recommended |
| // for GKE cluster scheduling. |
| type Location struct { |
| // Name: Contains the name of the resource requested. |
| // Specified in the format `projects/*/locations/*`. |
| Name string `json:"name,omitempty"` |
| |
| // Recommended: Whether the location is recomended for GKE cluster |
| // scheduling. |
| Recommended bool `json:"recommended,omitempty"` |
| |
| // Type: Contains the type of location this Location is for. |
| // Regional or Zonal. |
| // |
| // Possible values: |
| // "LOCATION_TYPE_UNSPECIFIED" - LOCATION_TYPE_UNSPECIFIED means the |
| // location type was not determined. |
| // "ZONE" - A GKE Location where Zonal clusters can be created. |
| // "REGION" - A GKE Location where Regional clusters can be created. |
| Type string `json:"type,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Name") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Name") to include in API |
| // requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Location) MarshalJSON() ([]byte, error) { |
| type NoMethod Location |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // MaintenancePolicy: MaintenancePolicy defines the maintenance policy |
| // to be used for the cluster. |
| type MaintenancePolicy struct { |
| // ResourceVersion: A hash identifying the version of this policy, so |
| // that updates to fields of |
| // the policy won't accidentally undo intermediate changes (and so that |
| // users |
| // of the API unaware of some fields won't accidentally remove other |
| // fields). |
| // Make a <code>get()</code> request to the cluster to get the |
| // current |
| // resource version and include it with requests to set the policy. |
| ResourceVersion string `json:"resourceVersion,omitempty"` |
| |
| // Window: Specifies the maintenance window in which maintenance may be |
| // performed. |
| Window *MaintenanceWindow `json:"window,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "ResourceVersion") 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. "ResourceVersion") 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 *MaintenancePolicy) MarshalJSON() ([]byte, error) { |
| type NoMethod MaintenancePolicy |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // MaintenanceWindow: MaintenanceWindow defines the maintenance window |
| // to be used for the cluster. |
| type MaintenanceWindow struct { |
| // DailyMaintenanceWindow: DailyMaintenanceWindow specifies a daily |
| // maintenance operation window. |
| DailyMaintenanceWindow *DailyMaintenanceWindow `json:"dailyMaintenanceWindow,omitempty"` |
| |
| // MaintenanceExclusions: Exceptions to maintenance window. |
| // Non-emergency maintenance should not |
| // occur in these windows. |
| MaintenanceExclusions map[string]TimeWindow `json:"maintenanceExclusions,omitempty"` |
| |
| // RecurringWindow: RecurringWindow specifies some number of recurring |
| // time periods for |
| // maintenance to occur. The time windows may be overlapping. If |
| // no |
| // maintenance windows are set, maintenance can occur at any time. |
| RecurringWindow *RecurringTimeWindow `json:"recurringWindow,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. |
| // "DailyMaintenanceWindow") 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. "DailyMaintenanceWindow") |
| // 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 *MaintenanceWindow) MarshalJSON() ([]byte, error) { |
| type NoMethod MaintenanceWindow |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // Master: Master is the configuration for components on master. |
| type Master struct { |
| } |
| |
| // MasterAuth: The authentication information for accessing the master |
| // endpoint. |
| // Authentication can be done using HTTP basic auth or using |
| // client |
| // certificates. |
| type MasterAuth struct { |
| // ClientCertificate: [Output only] Base64-encoded public certificate |
| // used by clients to |
| // authenticate to the cluster endpoint. |
| ClientCertificate string `json:"clientCertificate,omitempty"` |
| |
| // ClientCertificateConfig: Configuration for client certificate |
| // authentication on the cluster. For |
| // clusters before v1.12, if no configuration is specified, a |
| // client |
| // certificate is issued. |
| ClientCertificateConfig *ClientCertificateConfig `json:"clientCertificateConfig,omitempty"` |
| |
| // ClientKey: [Output only] Base64-encoded private key used by clients |
| // to authenticate |
| // to the cluster endpoint. |
| ClientKey string `json:"clientKey,omitempty"` |
| |
| ClusterCaCertificate string `json:"clusterCaCertificate,omitempty"` |
| |
| // Password: The password to use for HTTP basic authentication to the |
| // master endpoint. |
| // Because the master endpoint is open to the Internet, you should |
| // create a |
| // strong password. If a password is provided for cluster creation, |
| // username |
| // must be non-empty. |
| Password string `json:"password,omitempty"` |
| |
| // Username: The username to use for HTTP basic authentication to the |
| // master endpoint. |
| // For clusters v1.6.0 and later, basic authentication can be disabled |
| // by |
| // leaving username unspecified (or setting it to the empty string). |
| Username string `json:"username,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "ClientCertificate") |
| // 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. "ClientCertificate") 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 *MasterAuth) MarshalJSON() ([]byte, error) { |
| type NoMethod MasterAuth |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // MasterAuthorizedNetworksConfig: Configuration options for the master |
| // authorized networks feature. Enabled |
| // master authorized networks will disallow all external traffic to |
| // access |
| // Kubernetes master through HTTPS except traffic from the given CIDR |
| // blocks, |
| // Google Compute Engine Public IPs and Google Prod IPs. |
| type MasterAuthorizedNetworksConfig struct { |
| // CidrBlocks: cidr_blocks define up to 10 external networks that could |
| // access |
| // Kubernetes master through HTTPS. |
| CidrBlocks []*CidrBlock `json:"cidrBlocks,omitempty"` |
| |
| // Enabled: Whether or not master authorized networks is enabled. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "CidrBlocks") 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. "CidrBlocks") 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 *MasterAuthorizedNetworksConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod MasterAuthorizedNetworksConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // MaxPodsConstraint: Constraints applied to pods. |
| type MaxPodsConstraint struct { |
| // MaxPodsPerNode: Constraint enforced on the max num of pods per node. |
| MaxPodsPerNode int64 `json:"maxPodsPerNode,omitempty,string"` |
| |
| // ForceSendFields is a list of field names (e.g. "MaxPodsPerNode") 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. "MaxPodsPerNode") 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 *MaxPodsConstraint) MarshalJSON() ([]byte, error) { |
| type NoMethod MaxPodsConstraint |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // Metric: Progress metric is (string, int|float|string) pair. |
| type Metric struct { |
| // DoubleValue: For metrics with floating point value. |
| DoubleValue float64 `json:"doubleValue,omitempty"` |
| |
| // IntValue: For metrics with integer value. |
| IntValue int64 `json:"intValue,omitempty,string"` |
| |
| // Name: Required. Metric name, e.g., "nodes total", "percent done". |
| Name string `json:"name,omitempty"` |
| |
| // StringValue: For metrics with custom values (ratios, visual progress, |
| // etc.). |
| StringValue string `json:"stringValue,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "DoubleValue") 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. "DoubleValue") 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 *Metric) MarshalJSON() ([]byte, error) { |
| type NoMethod Metric |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| func (s *Metric) UnmarshalJSON(data []byte) error { |
| type NoMethod Metric |
| var s1 struct { |
| DoubleValue gensupport.JSONFloat64 `json:"doubleValue"` |
| *NoMethod |
| } |
| s1.NoMethod = (*NoMethod)(s) |
| if err := json.Unmarshal(data, &s1); err != nil { |
| return err |
| } |
| s.DoubleValue = float64(s1.DoubleValue) |
| return nil |
| } |
| |
| // NetworkConfig: NetworkConfig reports the relative names of network & |
| // subnetwork. |
| type NetworkConfig struct { |
| // DefaultSnatStatus: Whether the cluster disables default in-node sNAT |
| // rules. In-node sNAT rules |
| // will be disabled when default_snat_status is disabled. When disabled |
| // is set |
| // to false, default IP masquerade rules will be applied to the nodes |
| // to |
| // prevent sNAT on cluster internal traffic. |
| DefaultSnatStatus *DefaultSnatStatus `json:"defaultSnatStatus,omitempty"` |
| |
| // EnableIntraNodeVisibility: Whether Intra-node visibility is enabled |
| // for this cluster. |
| // This makes same node pod to pod traffic visible for VPC network. |
| EnableIntraNodeVisibility bool `json:"enableIntraNodeVisibility,omitempty"` |
| |
| // Network: Output only. The relative name of the Google Compute |
| // Engine |
| // network(https://cloud.google.com/compute/docs/networks-and-fire |
| // walls#networks) |
| // to which the cluster is connected. |
| // Example: |
| // projects/my-project/global/networks/my-network |
| Network string `json:"network,omitempty"` |
| |
| // Subnetwork: Output only. The relative name of the Google Compute |
| // Engine |
| // [subnetwork](https://cloud.google.com/compute/docs/vpc) to which |
| // the |
| // cluster is connected. |
| // Example: |
| // projects/my-project/regions/us-central1/subnetworks/my-subnet |
| Subnetwork string `json:"subnetwork,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "DefaultSnatStatus") |
| // 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. "DefaultSnatStatus") 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 *NetworkConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod NetworkConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // NetworkPolicy: Configuration options for the NetworkPolicy |
| // feature. |
| // https://kubernetes.io/docs/concepts/services-networking/netwo |
| // rkpolicies/ |
| type NetworkPolicy struct { |
| // Enabled: Whether network policy is enabled on the cluster. |
| Enabled bool `json:"enabled,omitempty"` |
| |
| // Provider: The selected network policy provider. |
| // |
| // Possible values: |
| // "PROVIDER_UNSPECIFIED" - Not set |
| // "CALICO" - Tigera (Calico Felix). |
| Provider string `json:"provider,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Enabled") to |
| // unconditionally include in API requests. By default, fields with |
| // empty values are omitted from API requests. However, any non-pointer, |
| // non-interface field appearing in ForceSendFields will be sent to the |
| // server regardless of whether the field is empty or not. This may be |
| // used to include empty fields in Patch requests. |
| ForceSendFields []string `json:"-"` |
| |
| // NullFields is a list of field names (e.g. "Enabled") to include in |
| // API requests with the JSON null value. By default, fields with empty |
| // values are omitted from API requests. However, any field with an |
| // empty value appearing in NullFields will be sent to the server as |
| // null. It is an error if a field in this list has a non-empty value. |
| // This may be used to include null fields in Patch requests. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *NetworkPolicy) MarshalJSON() ([]byte, error) { |
| type NoMethod NetworkPolicy |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // NetworkPolicyConfig: Configuration for NetworkPolicy. This only |
| // tracks whether the addon |
| // is enabled or not on the Master, it does not track whether network |
| // policy |
| // is enabled for the nodes. |
| type NetworkPolicyConfig struct { |
| // Disabled: Whether NetworkPolicy is enabled for this cluster. |
| Disabled bool `json:"disabled,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Disabled") 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. "Disabled") 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 *NetworkPolicyConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod NetworkPolicyConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // NodeConfig: Parameters that describe the nodes in a cluster. |
| type NodeConfig struct { |
| // Accelerators: A list of hardware accelerators to be attached to each |
| // node. |
| // See https://cloud.google.com/compute/docs/gpus for more information |
| // about |
| // support for GPUs. |
| Accelerators []*AcceleratorConfig `json:"accelerators,omitempty"` |
| |
| // BootDiskKmsKey: |
| // The Customer Managed Encryption Key used to encrypt the boot disk |
| // attached |
| // to each node in the node pool. This should be of the |
| // form |
| // projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAM |
| // E]/cryptoKeys/[KEY_NAME]. |
| // For more information about protecting resources with Cloud KMS Keys |
| // please |
| // see: |
| // https://cloud.google.com/compute/docs/disks/customer-manag |
| // ed-encryption |
| BootDiskKmsKey string `json:"bootDiskKmsKey,omitempty"` |
| |
| // DiskSizeGb: Size of the disk attached to each node, specified in |
| // GB. |
| // The smallest allowed disk size is 10GB. |
| // |
| // If unspecified, the default disk size is 100GB. |
| DiskSizeGb int64 `json:"diskSizeGb,omitempty"` |
| |
| // DiskType: Type of the disk attached to each node (e.g. 'pd-standard' |
| // or 'pd-ssd') |
| // |
| // If unspecified, the default disk type is 'pd-standard' |
| DiskType string `json:"diskType,omitempty"` |
| |
| // ImageType: The image type to use for this node. Note that for a given |
| // image type, |
| // the latest version of it will be used. |
| ImageType string `json:"imageType,omitempty"` |
| |
| // KubeletConfig: Node kubelet configs. |
| KubeletConfig *NodeKubeletConfig `json:"kubeletConfig,omitempty"` |
| |
| // Labels: The map of Kubernetes labels (key/value pairs) to be applied |
| // to each node. |
| // These will added in addition to any default label(s) that |
| // Kubernetes may apply to the node. |
| // In case of conflict in label keys, the applied set may differ |
| // depending on |
| // the Kubernetes version -- it's best to assume the behavior is |
| // undefined |
| // and conflicts should be avoided. |
| // For more information, including usage and the valid values, |
| // see: |
| // https://kubernetes.io/docs/concepts/overview/working-with-objects |
| // /labels/ |
| Labels map[string]string `json:"labels,omitempty"` |
| |
| // LinuxNodeConfig: Parameters that can be configured on Linux nodes. |
| LinuxNodeConfig *LinuxNodeConfig `json:"linuxNodeConfig,omitempty"` |
| |
| // LocalSsdCount: The number of local SSD disks to be attached to the |
| // node. |
| // |
| // The limit for this value is dependent upon the maximum number |
| // of |
| // disks available on a machine per zone. |
| // See: |
| // https://cloud.google.com/compute/docs/disks/local-ssd |
| // for more information. |
| LocalSsdCount int64 `json:"localSsdCount,omitempty"` |
| |
| // MachineType: The name of a Google Compute Engine |
| // [machine |
| // type](https://cloud.google.com/compute/docs/machine-types) |
| // (e.g. |
| // `n1-standard-1`). |
| // |
| // If unspecified, the default machine type is |
| // `n1-standard-1`. |
| MachineType string `json:"machineType,omitempty"` |
| |
| // Metadata: The metadata key/value pairs assigned to instances in the |
| // cluster. |
| // |
| // Keys must conform to the regexp [a-zA-Z0-9-_]+ and be less than 128 |
| // bytes |
| // in length. These are reflected as part of a URL in the metadata |
| // server. |
| // Additionally, to avoid ambiguity, keys must not conflict with any |
| // other |
| // metadata keys for the project or be one of the reserved keys: |
| // "cluster-location" |
| // "cluster-name" |
| // "cluster-uid" |
| // "configure-sh" |
| // "containerd-configure-sh" |
| // "enable-oslogin" |
| // "gci-ensure-gke-docker" |
| // "gci-metrics-enabled" |
| // "gci-update-strategy" |
| // "instance-template" |
| // "kube-env" |
| // "startup-script" |
| // "user-data" |
| // "disable-address-manager" |
| // "windows-startup-script-ps1" |
| // "common-psm1" |
| // "k8s-node-setup-psm1" |
| // "install-ssh-psm1" |
| // "user-profile-psm1" |
| // "serial-port-logging-enable" |
| // Values are free-form strings, and only have meaning as interpreted |
| // by |
| // the image running in the instance. The only restriction placed on |
| // them is |
| // that each value's size must be less than or equal to 32 KB. |
| // |
| // The total size of all keys and values must be less than 512 KB. |
| Metadata map[string]string `json:"metadata,omitempty"` |
| |
| // MinCpuPlatform: Minimum CPU platform to be used by this instance. The |
| // instance may be |
| // scheduled on the specified or newer CPU platform. Applicable values |
| // are the |
| // friendly names of CPU platforms, such as |
| // <code>minCpuPlatform: "Intel Haswell"</code> |
| // or |
| // <code>minCpuPlatform: "Intel Sandy Bridge"</code>. For |
| // more |
| // information, read [how to specify min |
| // CPU |
| // platform](https://cloud.google.com/compute/docs/instances/specify- |
| // min-cpu-platform) |
| MinCpuPlatform string `json:"minCpuPlatform,omitempty"` |
| |
| // OauthScopes: The set of Google API scopes to be made available on all |
| // of the |
| // node VMs under the "default" service account. |
| // |
| // The following scopes are recommended, but not required, and by |
| // default are |
| // not included: |
| // |
| // * `https://www.googleapis.com/auth/compute` is required for |
| // mounting |
| // persistent storage on your nodes. |
| // * `https://www.googleapis.com/auth/devstorage.read_only` is required |
| // for |
| // communicating with **gcr.io** |
| // (the [Google |
| // Container |
| // Registry](https://cloud.google.com/container-registry/)). |
| // |
| // I |
| // f unspecified, no scopes are added, unless Cloud Logging or |
| // Cloud |
| // Monitoring are enabled, in which case their required scopes will be |
| // added. |
| OauthScopes []string `json:"oauthScopes,omitempty"` |
| |
| // Preemptible: Whether the nodes are created as preemptible VM |
| // instances. |
| // See: |
| // https://cloud.google.com/compute/docs/instances/preemptible for |
| // more |
| // inforamtion about preemptible VM instances. |
| Preemptible bool `json:"preemptible,omitempty"` |
| |
| // ReservationAffinity: The optional reservation affinity. Setting this |
| // field will apply |
| // the specified [Zonal |
| // Compute |
| // Reservation](https://cloud.google.com/compute/docs/instances/r |
| // eserving-zonal-resources) |
| // to this node pool. |
| ReservationAffinity *ReservationAffinity `json:"reservationAffinity,omitempty"` |
| |
| // SandboxConfig: Sandbox configuration for this node. |
| SandboxConfig *SandboxConfig `json:"sandboxConfig,omitempty"` |
| |
| // ServiceAccount: The Google Cloud Platform Service Account to be used |
| // by the node VMs. |
| // Specify the email address of the Service Account; otherwise, if no |
| // Service |
| // Account is specified, the "default" service account is used. |
| ServiceAccount string `json:"serviceAccount,omitempty"` |
| |
| // ShieldedInstanceConfig: Shielded Instance options. |
| ShieldedInstanceConfig *ShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty"` |
| |
| // Tags: The list of instance tags applied to all nodes. Tags are used |
| // to identify |
| // valid sources or targets for network firewalls and are specified |
| // by |
| // the client during cluster or node pool creation. Each tag within the |
| // list |
| // must comply with RFC1035. |
| Tags []string `json:"tags,omitempty"` |
| |
| // Taints: List of kubernetes taints to be applied to each node. |
| // |
| // For more information, including usage and the valid values, |
| // see: |
| // https://kubernetes.io/docs/concepts/configuration/taint-and-toler |
| // ation/ |
| Taints []*NodeTaint `json:"taints,omitempty"` |
| |
| // WorkloadMetadataConfig: The workload metadata configuration for this |
| // node. |
| WorkloadMetadataConfig *WorkloadMetadataConfig `json:"workloadMetadataConfig,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "Accelerators") 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. "Accelerators") 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 *NodeConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod NodeConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // NodeKubeletConfig: Node kubelet configs. |
| type NodeKubeletConfig struct { |
| // CpuCfsQuota: Enable CPU CFS quota enforcement for containers that |
| // specify CPU limits. |
| // |
| // If this option is enabled, kubelet uses CFS |
| // quota |
| // (https://www.kernel.org/doc/Documentation/scheduler/sched-bwc.tx |
| // t) to |
| // enforce container CPU limits. Otherwise, CPU limits will not be |
| // enforced at |
| // all. |
| // |
| // Disable this option to mitigate CPU throttling problems while still |
| // having |
| // your pods to be in Guaranteed QoS class by specifying the CPU |
| // limits. |
| // |
| // The default value is 'true' if unspecified. |
| CpuCfsQuota bool `json:"cpuCfsQuota,omitempty"` |
| |
| // CpuCfsQuotaPeriod: Set the CPU CFS quota period value |
| // 'cpu.cfs_period_us'. |
| // |
| // The string must be a sequence of decimal numbers, each with |
| // optional |
| // fraction and a unit suffix, such as "300ms". |
| // Valid time units are "ns", "us" (or "µs"), "ms", "s", "m", "h". |
| // The value must be a positive duration. |
| CpuCfsQuotaPeriod string `json:"cpuCfsQuotaPeriod,omitempty"` |
| |
| // CpuManagerPolicy: Control the CPU management policy on the |
| // node. |
| // See |
| // https://kubernetes.io/docs/tasks/administer-cluster/cpu-mana |
| // gement-policies/ |
| // |
| // The following values are allowed. |
| // - "none": the default, which represents the existing scheduling |
| // behavior. |
| // - "static": allows pods with certain resource characteristics to |
| // be |
| // granted increased CPU affinity and exclusivity on the |
| // node. |
| CpuManagerPolicy string `json:"cpuManagerPolicy,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "CpuCfsQuota") 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. "CpuCfsQuota") 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 *NodeKubeletConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod NodeKubeletConfig |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // NodeManagement: NodeManagement defines the set of node management |
| // services turned on for the |
| // node pool. |
| type NodeManagement struct { |
| // AutoRepair: Whether the nodes will be automatically repaired. |
| AutoRepair bool `json:"autoRepair,omitempty"` |
| |
| // AutoUpgrade: Whether the nodes will be automatically upgraded. |
| AutoUpgrade bool `json:"autoUpgrade,omitempty"` |
| |
| // UpgradeOptions: Specifies the Auto Upgrade knobs for the node pool. |
| UpgradeOptions *AutoUpgradeOptions `json:"upgradeOptions,omitempty"` |
| |
| // ForceSendFields is a list of field names (e.g. "AutoRepair") 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. "AutoRepair") 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 *NodeManagement) MarshalJSON() ([]byte, error) { |
| type NoMethod NodeManagement |
| raw := NoMethod(*s) |
| return gensupport.MarshalJSON(raw, s.ForceSendFields, s.NullFields) |
| } |
| |
| // NodePool: NodePool contains the name and configuration for a |
| // cluster's node pool. |
| // Node pools are a set of nodes (i.e. VM's), with a common |
| // configuration and |
| // specification, under the control of the cluster master. They may have |
| // a set |
| // of Kubernetes labels applied to them, which may be used to reference |
| // them |
| // during pod scheduling. They may also be resized up or down, to |
| // accommodate |
| // the workload. |
| type NodePool struct { |
| // Autoscaling: Autoscaler configuration for this NodePool. Autoscaler |
| // is enabled |
| // only if a valid configuration is present. |
| Autoscaling *NodePoolAutoscaling `json:"autoscaling,omitempty"` |
| |
| // Conditions: Which conditions caused the current node pool state. |
| Conditions []*StatusCondition `json:"conditions,omitempty"` |
| |
| // Config: The node configuration of the pool. |
| Config *NodeConfig `json:"config,omitempty"` |
| |
| // InitialNodeCount: The initial node count for the pool. You must |
| // ensure that your |
| // Compute Engine [resource |
| // quota](https://cloud.google.com/compute/quotas) |
| // is sufficient for this number of instances. You must also have |
| // available |
| // firewall and routes quota. |
| InitialNodeCount int64 `json:"initialNodeCount,omitempty"` |
| |
| // InstanceGroupUrls: [Output only] The resource URLs of the [managed |
| // instance |
|