| // Copyright 2024 Google LLC. |
| // Use of this source code is governed by a BSD-style |
| // license that can be found in the LICENSE file. |
| |
| // Code generated file. DO NOT EDIT. |
| |
| // Package workstations provides access to the Cloud Workstations API. |
| // |
| // For product documentation, see: https://cloud.google.com/workstations |
| // |
| // # Library status |
| // |
| // These client libraries are officially supported by Google. However, this |
| // library is considered complete and is in maintenance mode. This means |
| // that we will address critical bugs and security issues but will not add |
| // any new features. |
| // |
| // When possible, we recommend using our newer |
| // [Cloud Client Libraries for Go](https://pkg.go.dev/cloud.google.com/go) |
| // that are still actively being worked and iterated on. |
| // |
| // # Creating a client |
| // |
| // Usage example: |
| // |
| // import "google.golang.org/api/workstations/v1beta" |
| // ... |
| // ctx := context.Background() |
| // workstationsService, err := workstations.NewService(ctx) |
| // |
| // In this example, Google Application Default Credentials are used for |
| // authentication. For information on how to create and obtain Application |
| // Default Credentials, see https://developers.google.com/identity/protocols/application-default-credentials. |
| // |
| // # Other authentication options |
| // |
| // To use an API key for authentication (note: some APIs do not support API |
| // keys), use [google.golang.org/api/option.WithAPIKey]: |
| // |
| // workstationsService, err := workstations.NewService(ctx, option.WithAPIKey("AIza...")) |
| // |
| // To use an OAuth token (e.g., a user token obtained via a three-legged OAuth |
| // flow, use [google.golang.org/api/option.WithTokenSource]: |
| // |
| // config := &oauth2.Config{...} |
| // // ... |
| // token, err := config.Exchange(ctx, ...) |
| // workstationsService, err := workstations.NewService(ctx, option.WithTokenSource(config.TokenSource(ctx, token))) |
| // |
| // See [google.golang.org/api/option.ClientOption] for details on options. |
| package workstations // import "google.golang.org/api/workstations/v1beta" |
| |
| import ( |
| "bytes" |
| "context" |
| "encoding/json" |
| "errors" |
| "fmt" |
| "io" |
| "net/http" |
| "net/url" |
| "strconv" |
| "strings" |
| |
| googleapi "google.golang.org/api/googleapi" |
| internal "google.golang.org/api/internal" |
| gensupport "google.golang.org/api/internal/gensupport" |
| option "google.golang.org/api/option" |
| internaloption "google.golang.org/api/option/internaloption" |
| htransport "google.golang.org/api/transport/http" |
| ) |
| |
| // Always reference these packages, just in case the auto-generated code |
| // below doesn't. |
| var _ = bytes.NewBuffer |
| var _ = strconv.Itoa |
| var _ = fmt.Sprintf |
| var _ = json.NewDecoder |
| var _ = io.Copy |
| var _ = url.Parse |
| var _ = gensupport.MarshalJSON |
| var _ = googleapi.Version |
| var _ = errors.New |
| var _ = strings.Replace |
| var _ = context.Canceled |
| var _ = internaloption.WithDefaultEndpoint |
| var _ = internal.Version |
| |
| const apiId = "workstations:v1beta" |
| const apiName = "workstations" |
| const apiVersion = "v1beta" |
| const basePath = "https://workstations.googleapis.com/" |
| const basePathTemplate = "https://workstations.UNIVERSE_DOMAIN/" |
| const mtlsBasePath = "https://workstations.mtls.googleapis.com/" |
| |
| // OAuth2 scopes used by this API. |
| const ( |
| // See, edit, configure, and delete your Google Cloud data and see the email |
| // address for your Google Account. |
| CloudPlatformScope = "https://www.googleapis.com/auth/cloud-platform" |
| ) |
| |
| // NewService creates a new Service. |
| func NewService(ctx context.Context, opts ...option.ClientOption) (*Service, error) { |
| scopesOption := internaloption.WithDefaultScopes( |
| "https://www.googleapis.com/auth/cloud-platform", |
| ) |
| // NOTE: prepend, so we don't override user-specified scopes. |
| opts = append([]option.ClientOption{scopesOption}, opts...) |
| opts = append(opts, internaloption.WithDefaultEndpoint(basePath)) |
| opts = append(opts, internaloption.WithDefaultEndpointTemplate(basePathTemplate)) |
| opts = append(opts, internaloption.WithDefaultMTLSEndpoint(mtlsBasePath)) |
| opts = append(opts, internaloption.EnableNewAuthLibrary()) |
| client, endpoint, err := htransport.NewClient(ctx, opts...) |
| if err != nil { |
| return nil, err |
| } |
| s, err := New(client) |
| if err != nil { |
| return nil, err |
| } |
| if endpoint != "" { |
| s.BasePath = endpoint |
| } |
| return s, nil |
| } |
| |
| // New creates a new Service. It uses the provided http.Client for requests. |
| // |
| // Deprecated: please use NewService instead. |
| // To provide a custom HTTP client, use option.WithHTTPClient. |
| // If you are using google.golang.org/api/googleapis/transport.APIKey, use option.WithAPIKey with NewService instead. |
| func New(client *http.Client) (*Service, error) { |
| if client == nil { |
| return nil, errors.New("client is nil") |
| } |
| s := &Service{client: client, BasePath: basePath} |
| s.Projects = NewProjectsService(s) |
| return s, nil |
| } |
| |
| type Service struct { |
| client *http.Client |
| BasePath string // API endpoint base URL |
| UserAgent string // optional additional User-Agent fragment |
| |
| Projects *ProjectsService |
| } |
| |
| func (s *Service) userAgent() string { |
| if s.UserAgent == "" { |
| return googleapi.UserAgent |
| } |
| return googleapi.UserAgent + " " + s.UserAgent |
| } |
| |
| func NewProjectsService(s *Service) *ProjectsService { |
| rs := &ProjectsService{s: s} |
| rs.Locations = NewProjectsLocationsService(s) |
| return rs |
| } |
| |
| type ProjectsService struct { |
| s *Service |
| |
| Locations *ProjectsLocationsService |
| } |
| |
| func NewProjectsLocationsService(s *Service) *ProjectsLocationsService { |
| rs := &ProjectsLocationsService{s: s} |
| rs.Operations = NewProjectsLocationsOperationsService(s) |
| rs.WorkstationClusters = NewProjectsLocationsWorkstationClustersService(s) |
| return rs |
| } |
| |
| type ProjectsLocationsService struct { |
| s *Service |
| |
| Operations *ProjectsLocationsOperationsService |
| |
| WorkstationClusters *ProjectsLocationsWorkstationClustersService |
| } |
| |
| func NewProjectsLocationsOperationsService(s *Service) *ProjectsLocationsOperationsService { |
| rs := &ProjectsLocationsOperationsService{s: s} |
| return rs |
| } |
| |
| type ProjectsLocationsOperationsService struct { |
| s *Service |
| } |
| |
| func NewProjectsLocationsWorkstationClustersService(s *Service) *ProjectsLocationsWorkstationClustersService { |
| rs := &ProjectsLocationsWorkstationClustersService{s: s} |
| rs.WorkstationConfigs = NewProjectsLocationsWorkstationClustersWorkstationConfigsService(s) |
| return rs |
| } |
| |
| type ProjectsLocationsWorkstationClustersService struct { |
| s *Service |
| |
| WorkstationConfigs *ProjectsLocationsWorkstationClustersWorkstationConfigsService |
| } |
| |
| func NewProjectsLocationsWorkstationClustersWorkstationConfigsService(s *Service) *ProjectsLocationsWorkstationClustersWorkstationConfigsService { |
| rs := &ProjectsLocationsWorkstationClustersWorkstationConfigsService{s: s} |
| rs.Workstations = NewProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService(s) |
| return rs |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsService struct { |
| s *Service |
| |
| Workstations *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService |
| } |
| |
| func NewProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService(s *Service) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService { |
| rs := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService{s: s} |
| return rs |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService struct { |
| s *Service |
| } |
| |
| // Accelerator: An accelerator card attached to the instance. |
| type Accelerator struct { |
| // Count: Optional. Number of accelerator cards exposed to the instance. |
| Count int64 `json:"count,omitempty"` |
| // Type: Optional. Type of accelerator resource to attach to the instance, for |
| // example, "nvidia-tesla-p100". |
| Type string `json:"type,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Count") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Count") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Accelerator) MarshalJSON() ([]byte, error) { |
| type NoMethod Accelerator |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // AuditConfig: Specifies the audit configuration for a service. The |
| // configuration determines which permission types are logged, and what |
| // identities, if any, are exempted from logging. An AuditConfig must have one |
| // or more AuditLogConfigs. If there are AuditConfigs for both `allServices` |
| // and a specific service, the union of the two AuditConfigs is used for that |
| // service: the log_types specified in each AuditConfig are enabled, and the |
| // exempted_members in each AuditLogConfig are exempted. Example Policy with |
| // multiple AuditConfigs: { "audit_configs": [ { "service": "allServices", |
| // "audit_log_configs": [ { "log_type": "DATA_READ", "exempted_members": [ |
| // "user:jose@example.com" ] }, { "log_type": "DATA_WRITE" }, { "log_type": |
| // "ADMIN_READ" } ] }, { "service": "sampleservice.googleapis.com", |
| // "audit_log_configs": [ { "log_type": "DATA_READ" }, { "log_type": |
| // "DATA_WRITE", "exempted_members": [ "user:aliya@example.com" ] } ] } ] } For |
| // sampleservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ |
| // logging. It also exempts `jose@example.com` from DATA_READ logging, and |
| // `aliya@example.com` from DATA_WRITE logging. |
| type AuditConfig struct { |
| // AuditLogConfigs: The configuration for logging of each type of permission. |
| AuditLogConfigs []*AuditLogConfig `json:"auditLogConfigs,omitempty"` |
| // Service: Specifies a service that will be enabled for audit logging. For |
| // example, `storage.googleapis.com`, `cloudsql.googleapis.com`. `allServices` |
| // is a special value that covers all services. |
| Service string `json:"service,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AuditLogConfigs") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AuditLogConfigs") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *AuditConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod AuditConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // AuditLogConfig: Provides the configuration for logging a type of |
| // permissions. Example: { "audit_log_configs": [ { "log_type": "DATA_READ", |
| // "exempted_members": [ "user:jose@example.com" ] }, { "log_type": |
| // "DATA_WRITE" } ] } This enables 'DATA_READ' and 'DATA_WRITE' logging, while |
| // exempting jose@example.com from DATA_READ logging. |
| type AuditLogConfig struct { |
| // ExemptedMembers: Specifies the identities that do not cause logging for this |
| // type of permission. Follows the same format of Binding.members. |
| ExemptedMembers []string `json:"exemptedMembers,omitempty"` |
| // LogType: The log type that this config enables. |
| // |
| // Possible values: |
| // "LOG_TYPE_UNSPECIFIED" - Default case. Should never be this. |
| // "ADMIN_READ" - Admin reads. Example: CloudIAM getIamPolicy |
| // "DATA_WRITE" - Data writes. Example: CloudSQL Users create |
| // "DATA_READ" - Data reads. Example: CloudSQL Users list |
| LogType string `json:"logType,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ExemptedMembers") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ExemptedMembers") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *AuditLogConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod AuditLogConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Binding: Associates `members`, or principals, with a `role`. |
| type Binding struct { |
| // Condition: The condition that is associated with this binding. If the |
| // condition evaluates to `true`, then this binding applies to the current |
| // request. If the condition evaluates to `false`, then this binding does not |
| // apply to the current request. However, a different role binding might grant |
| // the same role to one or more of the principals in this binding. To learn |
| // which resources support conditions in their IAM policies, see the IAM |
| // documentation |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). |
| Condition *Expr `json:"condition,omitempty"` |
| // Members: Specifies the principals requesting access for a Google Cloud |
| // resource. `members` can have the following values: * `allUsers`: A special |
| // identifier that represents anyone who is on the internet; with or without a |
| // Google account. * `allAuthenticatedUsers`: A special identifier that |
| // represents anyone who is authenticated with a Google account or a service |
| // account. Does not include identities that come from external identity |
| // providers (IdPs) through identity federation. * `user:{emailid}`: An email |
| // address that represents a specific Google account. For example, |
| // `alice@example.com` . * `serviceAccount:{emailid}`: An email address that |
| // represents a Google service account. For example, |
| // `my-other-app@appspot.gserviceaccount.com`. * |
| // `serviceAccount:{projectid}.svc.id.goog[{namespace}/{kubernetes-sa}]`: An |
| // identifier for a Kubernetes service account |
| // (https://cloud.google.com/kubernetes-engine/docs/how-to/kubernetes-service-accounts). |
| // For example, `my-project.svc.id.goog[my-namespace/my-kubernetes-sa]`. * |
| // `group:{emailid}`: An email address that represents a Google group. For |
| // example, `admins@example.com`. * `domain:{domain}`: The G Suite domain |
| // (primary) that represents all the users of that domain. For example, |
| // `google.com` or `example.com`. * |
| // `principal://iam.googleapis.com/locations/global/workforcePools/{pool_id}/sub |
| // ject/{subject_attribute_value}`: A single identity in a workforce identity |
| // pool. * |
| // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ |
| // group/{group_id}`: All workforce identities in a group. * |
| // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ |
| // attribute.{attribute_name}/{attribute_value}`: All workforce identities with |
| // a specific attribute value. * |
| // `principalSet://iam.googleapis.com/locations/global/workforcePools/{pool_id}/ |
| // *`: All identities in a workforce identity pool. * |
| // `principal://iam.googleapis.com/projects/{project_number}/locations/global/wo |
| // rkloadIdentityPools/{pool_id}/subject/{subject_attribute_value}`: A single |
| // identity in a workload identity pool. * |
| // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global |
| // /workloadIdentityPools/{pool_id}/group/{group_id}`: A workload identity pool |
| // group. * |
| // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global |
| // /workloadIdentityPools/{pool_id}/attribute.{attribute_name}/{attribute_value} |
| // `: All identities in a workload identity pool with a certain attribute. * |
| // `principalSet://iam.googleapis.com/projects/{project_number}/locations/global |
| // /workloadIdentityPools/{pool_id}/*`: All identities in a workload identity |
| // pool. * `deleted:user:{emailid}?uid={uniqueid}`: An email address (plus |
| // unique identifier) representing a user that has been recently deleted. For |
| // example, `alice@example.com?uid=123456789012345678901`. If the user is |
| // recovered, this value reverts to `user:{emailid}` and the recovered user |
| // retains the role in the binding. * |
| // `deleted:serviceAccount:{emailid}?uid={uniqueid}`: An email address (plus |
| // unique identifier) representing a service account that has been recently |
| // deleted. For example, |
| // `my-other-app@appspot.gserviceaccount.com?uid=123456789012345678901`. If the |
| // service account is undeleted, this value reverts to |
| // `serviceAccount:{emailid}` and the undeleted service account retains the |
| // role in the binding. * `deleted:group:{emailid}?uid={uniqueid}`: An email |
| // address (plus unique identifier) representing a Google group that has been |
| // recently deleted. For example, |
| // `admins@example.com?uid=123456789012345678901`. If the group is recovered, |
| // this value reverts to `group:{emailid}` and the recovered group retains the |
| // role in the binding. * |
| // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/{pool |
| // _id}/subject/{subject_attribute_value}`: Deleted single identity in a |
| // workforce identity pool. For example, |
| // `deleted:principal://iam.googleapis.com/locations/global/workforcePools/my-po |
| // ol-id/subject/my-subject-attribute-value`. |
| Members []string `json:"members,omitempty"` |
| // Role: Role that is assigned to the list of `members`, or principals. For |
| // example, `roles/viewer`, `roles/editor`, or `roles/owner`. For an overview |
| // of the IAM roles and permissions, see the IAM documentation |
| // (https://cloud.google.com/iam/docs/roles-overview). For a list of the |
| // available pre-defined roles, see here |
| // (https://cloud.google.com/iam/docs/understanding-roles). |
| Role string `json:"role,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Condition") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Condition") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Binding) MarshalJSON() ([]byte, error) { |
| type NoMethod Binding |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // BoostConfig: A configuration that workstations can boost to. |
| type BoostConfig struct { |
| // Accelerators: Optional. A list of the type and count of accelerator cards |
| // attached to the boost instance. Defaults to `none`. |
| Accelerators []*Accelerator `json:"accelerators,omitempty"` |
| // BootDiskSizeGb: Optional. The size of the boot disk for the VM in gigabytes |
| // (GB). The minimum boot disk size is `30` GB. Defaults to `50` GB. |
| BootDiskSizeGb int64 `json:"bootDiskSizeGb,omitempty"` |
| // EnableNestedVirtualization: Optional. Whether to enable nested |
| // virtualization on boosted Cloud Workstations VMs running using this boost |
| // configuration. Nested virtualization lets you run virtual machine (VM) |
| // instances inside your workstation. Before enabling nested virtualization, |
| // consider the following important considerations. Cloud Workstations |
| // instances are subject to the same restrictions as Compute Engine instances |
| // (https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): |
| // * **Organization policy**: projects, folders, or organizations may be |
| // restricted from creating nested VMs if the **Disable VM nested |
| // virtualization** constraint is enforced in the organization policy. For more |
| // information, see the Compute Engine section, Checking whether nested |
| // virtualization is allowed |
| // (https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed). |
| // * **Performance**: nested VMs might experience a 10% or greater decrease in |
| // performance for workloads that are CPU-bound and possibly greater than a 10% |
| // decrease for workloads that are input/output bound. * **Machine Type**: |
| // nested virtualization can only be enabled on boost configurations that |
| // specify a machine_type in the N1 or N2 machine series. * **GPUs**: nested |
| // virtualization may not be enabled on boost configurations with accelerators. |
| // * **Operating System**: Because Container-Optimized OS |
| // (https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos) |
| // does not support nested virtualization, when nested virtualization is |
| // enabled, the underlying Compute Engine VM instances boot from an Ubuntu LTS |
| // (https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts) image. |
| // Defaults to false. |
| EnableNestedVirtualization bool `json:"enableNestedVirtualization,omitempty"` |
| // Id: Optional. Required. The id to be used for the boost config. |
| Id string `json:"id,omitempty"` |
| // MachineType: Optional. The type of machine that boosted VM instances will |
| // use—for example, `e2-standard-4`. For more information about machine types |
| // that Cloud Workstations supports, see the list of available machine types |
| // (https://cloud.google.com/workstations/docs/available-machine-types). |
| // Defaults to `e2-standard-4`. |
| MachineType string `json:"machineType,omitempty"` |
| // PoolSize: Optional. The number of boost VMs that the system should keep idle |
| // so that workstations can be boosted quickly. Defaults to `0`. |
| PoolSize int64 `json:"poolSize,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Accelerators") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Accelerators") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *BoostConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod BoostConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CancelOperationRequest: The request message for Operations.CancelOperation. |
| type CancelOperationRequest struct { |
| } |
| |
| // Container: A Docker container. |
| type Container struct { |
| // Args: Optional. Arguments passed to the entrypoint. |
| Args []string `json:"args,omitempty"` |
| // Command: Optional. If set, overrides the default ENTRYPOINT specified by the |
| // image. |
| Command []string `json:"command,omitempty"` |
| // Env: Optional. Environment variables passed to the container's entrypoint. |
| Env map[string]string `json:"env,omitempty"` |
| // Image: Optional. A Docker container image that defines a custom environment. |
| // Cloud Workstations provides a number of preconfigured images |
| // (https://cloud.google.com/workstations/docs/preconfigured-base-images), but |
| // you can create your own custom container images |
| // (https://cloud.google.com/workstations/docs/custom-container-images). If |
| // using a private image, the `host.gceInstance.serviceAccount` field must be |
| // specified in the workstation configuration. If using a custom container |
| // image, the service account must have Artifact Registry Reader |
| // (https://cloud.google.com/artifact-registry/docs/access-control#roles) |
| // permission to pull the specified image. Otherwise, the image must be |
| // publicly accessible. |
| Image string `json:"image,omitempty"` |
| // RunAsUser: Optional. If set, overrides the USER specified in the image with |
| // the given uid. |
| RunAsUser int64 `json:"runAsUser,omitempty"` |
| // WorkingDir: Optional. If set, overrides the default DIR specified by the |
| // image. |
| WorkingDir string `json:"workingDir,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Args") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Args") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Container) MarshalJSON() ([]byte, error) { |
| type NoMethod Container |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // CustomerEncryptionKey: A customer-managed encryption key (CMEK) for the |
| // Compute Engine resources of the associated workstation configuration. |
| // Specify the name of your Cloud KMS encryption key and the default service |
| // account. We recommend that you use a separate service account and follow |
| // Cloud KMS best practices |
| // (https://cloud.google.com/kms/docs/separation-of-duties). |
| type CustomerEncryptionKey struct { |
| // KmsKey: Immutable. The name of the Google Cloud KMS encryption key. For |
| // example, |
| // "projects/PROJECT_ID/locations/REGION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" |
| // `. The key must be in the same region as the workstation configuration. |
| KmsKey string `json:"kmsKey,omitempty"` |
| // KmsKeyServiceAccount: Immutable. The service account to use with the |
| // specified KMS key. We recommend that you use a separate service account and |
| // follow KMS best practices. For more information, see Separation of duties |
| // (https://cloud.google.com/kms/docs/separation-of-duties) and `gcloud kms |
| // keys add-iam-policy-binding` `--member` |
| // (https://cloud.google.com/sdk/gcloud/reference/kms/keys/add-iam-policy-binding#--member). |
| KmsKeyServiceAccount string `json:"kmsKeyServiceAccount,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "KmsKey") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "KmsKey") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *CustomerEncryptionKey) MarshalJSON() ([]byte, error) { |
| type NoMethod CustomerEncryptionKey |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // DomainConfig: Configuration options for private workstation clusters. |
| type DomainConfig struct { |
| // Domain: Immutable. Whether Workstations endpoint is private. |
| Domain string `json:"domain,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Domain") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Domain") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *DomainConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod DomainConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // EphemeralDirectory: An ephemeral directory which won't persist across |
| // workstation sessions. It is freshly created on every workstation start |
| // operation. |
| type EphemeralDirectory struct { |
| // GcePd: An EphemeralDirectory backed by a Compute Engine persistent disk. |
| GcePd *GcePersistentDisk `json:"gcePd,omitempty"` |
| // MountPath: Required. Location of this directory in the running workstation. |
| MountPath string `json:"mountPath,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "GcePd") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "GcePd") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *EphemeralDirectory) MarshalJSON() ([]byte, error) { |
| type NoMethod EphemeralDirectory |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Expr: Represents a textual expression in the Common Expression Language |
| // (CEL) syntax. CEL is a C-like expression language. The syntax and semantics |
| // of CEL are documented at https://github.com/google/cel-spec. Example |
| // (Comparison): title: "Summary size limit" description: "Determines if a |
| // summary is less than 100 chars" expression: "document.summary.size() < 100" |
| // Example (Equality): title: "Requestor is owner" description: "Determines if |
| // requestor is the document owner" expression: "document.owner == |
| // request.auth.claims.email" Example (Logic): title: "Public documents" |
| // description: "Determine whether the document should be publicly visible" |
| // expression: "document.type != 'private' && document.type != 'internal'" |
| // Example (Data Manipulation): title: "Notification string" description: |
| // "Create a notification string with a timestamp." expression: "'New message |
| // received at ' + string(document.create_time)" The exact variables and |
| // functions that may be referenced within an expression are determined by the |
| // service that evaluates it. See the service documentation for additional |
| // information. |
| type Expr struct { |
| // Description: Optional. Description of the expression. This is a longer text |
| // which describes the expression, e.g. when hovered over it in a UI. |
| Description string `json:"description,omitempty"` |
| // Expression: Textual representation of an expression in Common Expression |
| // Language syntax. |
| Expression string `json:"expression,omitempty"` |
| // Location: Optional. String indicating the location of the expression for |
| // error reporting, e.g. a file name and a position in the file. |
| Location string `json:"location,omitempty"` |
| // Title: Optional. Title for the expression, i.e. a short string describing |
| // its purpose. This can be used e.g. in UIs which allow to enter the |
| // expression. |
| Title string `json:"title,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Description") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Description") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Expr) MarshalJSON() ([]byte, error) { |
| type NoMethod Expr |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GceConfidentialInstanceConfig: A set of Compute Engine Confidential VM |
| // instance options. |
| type GceConfidentialInstanceConfig struct { |
| // EnableConfidentialCompute: Optional. Whether the instance has confidential |
| // compute enabled. |
| EnableConfidentialCompute bool `json:"enableConfidentialCompute,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "EnableConfidentialCompute") |
| // to unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "EnableConfidentialCompute") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GceConfidentialInstanceConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod GceConfidentialInstanceConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GceInstance: A runtime using a Compute Engine instance. |
| type GceInstance struct { |
| // Accelerators: Optional. A list of the type and count of accelerator cards |
| // attached to the instance. |
| Accelerators []*Accelerator `json:"accelerators,omitempty"` |
| // BoostConfigs: Optional. A list of the boost configurations that workstations |
| // created using this workstation configuration are allowed to use. |
| BoostConfigs []*BoostConfig `json:"boostConfigs,omitempty"` |
| // BootDiskSizeGb: Optional. The size of the boot disk for the VM in gigabytes |
| // (GB). The minimum boot disk size is `30` GB. Defaults to `50` GB. |
| BootDiskSizeGb int64 `json:"bootDiskSizeGb,omitempty"` |
| // ConfidentialInstanceConfig: Optional. A set of Compute Engine Confidential |
| // VM instance options. |
| ConfidentialInstanceConfig *GceConfidentialInstanceConfig `json:"confidentialInstanceConfig,omitempty"` |
| // DisablePublicIpAddresses: Optional. When set to true, disables public IP |
| // addresses for VMs. If you disable public IP addresses, you must set up |
| // Private Google Access or Cloud NAT on your network. If you use Private |
| // Google Access and you use `private.googleapis.com` or |
| // `restricted.googleapis.com` for Container Registry and Artifact Registry, |
| // make sure that you set up DNS records for domains `*.gcr.io` and |
| // `*.pkg.dev`. Defaults to false (VMs have public IP addresses). |
| DisablePublicIpAddresses bool `json:"disablePublicIpAddresses,omitempty"` |
| // DisableSsh: Optional. Whether to disable SSH access to the VM. |
| DisableSsh bool `json:"disableSsh,omitempty"` |
| // EnableNestedVirtualization: Optional. Whether to enable nested |
| // virtualization on Cloud Workstations VMs created using this workstation |
| // configuration. Nested virtualization lets you run virtual machine (VM) |
| // instances inside your workstation. Before enabling nested virtualization, |
| // consider the following important considerations. Cloud Workstations |
| // instances are subject to the same restrictions as Compute Engine instances |
| // (https://cloud.google.com/compute/docs/instances/nested-virtualization/overview#restrictions): |
| // * **Organization policy**: projects, folders, or organizations may be |
| // restricted from creating nested VMs if the **Disable VM nested |
| // virtualization** constraint is enforced in the organization policy. For more |
| // information, see the Compute Engine section, Checking whether nested |
| // virtualization is allowed |
| // (https://cloud.google.com/compute/docs/instances/nested-virtualization/managing-constraint#checking_whether_nested_virtualization_is_allowed). |
| // * **Performance**: nested VMs might experience a 10% or greater decrease in |
| // performance for workloads that are CPU-bound and possibly greater than a 10% |
| // decrease for workloads that are input/output bound. * **Machine Type**: |
| // nested virtualization can only be enabled on workstation configurations that |
| // specify a machine_type in the N1 or N2 machine series. * **GPUs**: nested |
| // virtualization may not be enabled on workstation configurations with |
| // accelerators. * **Operating System**: because Container-Optimized OS |
| // (https://cloud.google.com/compute/docs/images/os-details#container-optimized_os_cos) |
| // does not support nested virtualization, when nested virtualization is |
| // enabled, the underlying Compute Engine VM instances boot from an Ubuntu LTS |
| // (https://cloud.google.com/compute/docs/images/os-details#ubuntu_lts) image. |
| EnableNestedVirtualization bool `json:"enableNestedVirtualization,omitempty"` |
| // MachineType: Optional. The type of machine to use for VM instances—for |
| // example, "e2-standard-4". For more information about machine types that |
| // Cloud Workstations supports, see the list of available machine types |
| // (https://cloud.google.com/workstations/docs/available-machine-types). |
| MachineType string `json:"machineType,omitempty"` |
| // PoolSize: Optional. The number of VMs that the system should keep idle so |
| // that new workstations can be started quickly for new users. Defaults to `0` |
| // in the API. |
| PoolSize int64 `json:"poolSize,omitempty"` |
| // PooledInstances: Output only. Number of instances currently available in the |
| // pool for faster workstation startup. |
| PooledInstances int64 `json:"pooledInstances,omitempty"` |
| // ServiceAccount: Optional. The email address of the service account for Cloud |
| // Workstations VMs created with this configuration. When specified, be sure |
| // that the service account has `logging.logEntries.create` and |
| // `monitoring.timeSeries.create` permissions on the project so it can write |
| // logs out to Cloud Logging. If using a custom container image, the service |
| // account must have Artifact Registry Reader |
| // (https://cloud.google.com/artifact-registry/docs/access-control#roles) |
| // permission to pull the specified image. If you as the administrator want to |
| // be able to `ssh` into the underlying VM, you need to set this value to a |
| // service account for which you have the `iam.serviceAccounts.actAs` |
| // permission. Conversely, if you don't want anyone to be able to `ssh` into |
| // the underlying VM, use a service account where no one has that permission. |
| // If not set, VMs run with a service account provided by the Cloud |
| // Workstations service, and the image must be publicly accessible. |
| ServiceAccount string `json:"serviceAccount,omitempty"` |
| // ServiceAccountScopes: Optional. Scopes to grant to the service_account. When |
| // specified, users of workstations under this configuration must have |
| // `iam.serviceAccounts.actAs` on the service account. |
| ServiceAccountScopes []string `json:"serviceAccountScopes,omitempty"` |
| // ShieldedInstanceConfig: Optional. A set of Compute Engine Shielded instance |
| // options. |
| ShieldedInstanceConfig *GceShieldedInstanceConfig `json:"shieldedInstanceConfig,omitempty"` |
| // Tags: Optional. Network tags to add to the Compute Engine VMs backing the |
| // workstations. This option applies network tags |
| // (https://cloud.google.com/vpc/docs/add-remove-network-tags) to VMs created |
| // with this configuration. These network tags enable the creation of firewall |
| // rules (https://cloud.google.com/workstations/docs/configure-firewall-rules). |
| Tags []string `json:"tags,omitempty"` |
| // VmTags: Optional. Resource manager tags to be bound to this instance. Tag |
| // keys and values have the same definition as |
| // https://cloud.google.com/resource-manager/docs/tags/tags-overview Keys must |
| // be in the format `tagKeys/{tag_key_id}`, and values are in the format |
| // `tagValues/456`. |
| VmTags map[string]string `json:"vmTags,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Accelerators") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Accelerators") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GceInstance) MarshalJSON() ([]byte, error) { |
| type NoMethod GceInstance |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GcePersistentDisk: An EphemeralDirectory is backed by a Compute Engine |
| // persistent disk. |
| type GcePersistentDisk struct { |
| // DiskType: Optional. Type of the disk to use. Defaults to "pd-standard". |
| DiskType string `json:"diskType,omitempty"` |
| // ReadOnly: Optional. Whether the disk is read only. If true, the disk may be |
| // shared by multiple VMs and source_snapshot must be set. |
| ReadOnly bool `json:"readOnly,omitempty"` |
| // SourceImage: Optional. Name of the disk image to use as the source for the |
| // disk. Must be empty if source_snapshot is set. Updating source_image will |
| // update content in the ephemeral directory after the workstation is |
| // restarted. This field is mutable. |
| SourceImage string `json:"sourceImage,omitempty"` |
| // SourceSnapshot: Optional. Name of the snapshot to use as the source for the |
| // disk. Must be empty if source_image is set. Must be empty if read_only is |
| // false. Updating source_snapshot will update content in the ephemeral |
| // directory after the workstation is restarted. This field is mutable. |
| SourceSnapshot string `json:"sourceSnapshot,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DiskType") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DiskType") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GcePersistentDisk) MarshalJSON() ([]byte, error) { |
| type NoMethod GcePersistentDisk |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GceRegionalPersistentDisk: A Persistent Directory backed by a Compute Engine |
| // regional persistent disk. The persistent_directories field is repeated, but |
| // it may contain only one entry. It creates a persistent disk |
| // (https://cloud.google.com/compute/docs/disks/persistent-disks) that mounts |
| // to the workstation VM at `/home` when the session starts and detaches when |
| // the session ends. If this field is empty, workstations created with this |
| // configuration do not have a persistent home directory. |
| type GceRegionalPersistentDisk struct { |
| // DiskType: Optional. The type of the persistent disk |
| // (https://cloud.google.com/compute/docs/disks#disk-types) for the home |
| // directory. Defaults to "pd-standard". |
| DiskType string `json:"diskType,omitempty"` |
| // FsType: Optional. Type of file system that the disk should be formatted |
| // with. The workstation image must support this file system type. Must be |
| // empty if source_snapshot is set. Defaults to "ext4". |
| FsType string `json:"fsType,omitempty"` |
| // ReclaimPolicy: Optional. Whether the persistent disk should be deleted when |
| // the workstation is deleted. Valid values are `DELETE` and `RETAIN`. Defaults |
| // to `DELETE`. |
| // |
| // Possible values: |
| // "RECLAIM_POLICY_UNSPECIFIED" - Do not use. |
| // "DELETE" - Delete the persistent disk when deleting the workstation. |
| // "RETAIN" - Keep the persistent disk when deleting the workstation. An |
| // administrator must manually delete the disk. |
| ReclaimPolicy string `json:"reclaimPolicy,omitempty"` |
| // SizeGb: Optional. The GB capacity of a persistent home directory for each |
| // workstation created with this configuration. Must be empty if |
| // source_snapshot is set. Valid values are `10`, `50`, `100`, `200`, `500`, or |
| // `1000`. Defaults to `200`. If less than `200` GB, the disk_type must be |
| // "pd-balanced" or "pd-ssd". |
| SizeGb int64 `json:"sizeGb,omitempty"` |
| // SourceSnapshot: Optional. Name of the snapshot to use as the source for the |
| // disk. If set, size_gb and fs_type must be empty. |
| SourceSnapshot string `json:"sourceSnapshot,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "DiskType") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "DiskType") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GceRegionalPersistentDisk) MarshalJSON() ([]byte, error) { |
| type NoMethod GceRegionalPersistentDisk |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GceShieldedInstanceConfig: A set of Compute Engine Shielded instance |
| // options. |
| type GceShieldedInstanceConfig struct { |
| // EnableIntegrityMonitoring: Optional. Whether the instance has integrity |
| // monitoring enabled. |
| EnableIntegrityMonitoring bool `json:"enableIntegrityMonitoring,omitempty"` |
| // EnableSecureBoot: Optional. Whether the instance has Secure Boot enabled. |
| EnableSecureBoot bool `json:"enableSecureBoot,omitempty"` |
| // EnableVtpm: Optional. Whether the instance has the vTPM enabled. |
| EnableVtpm bool `json:"enableVtpm,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "EnableIntegrityMonitoring") |
| // to unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "EnableIntegrityMonitoring") to |
| // include in API requests with the JSON null value. By default, fields with |
| // empty values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GceShieldedInstanceConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod GceShieldedInstanceConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GenerateAccessTokenRequest: Request message for GenerateAccessToken. |
| type GenerateAccessTokenRequest struct { |
| // ExpireTime: Desired expiration time of the access token. This value must be |
| // at most 24 hours in the future. If a value is not specified, the token's |
| // expiration time will be set to a default value of 1 hour in the future. |
| ExpireTime string `json:"expireTime,omitempty"` |
| // Port: Optional. Port for which the access token should be generated. If |
| // specified, the generated access token grants access only to the specified |
| // port of the workstation. If specified, values must be within the range [1 - |
| // 65535]. If not specified, the generated access token grants access to all |
| // ports of the workstation. |
| Port int64 `json:"port,omitempty"` |
| // Ttl: Desired lifetime duration of the access token. This value must be at |
| // most 24 hours. If a value is not specified, the token's lifetime will be set |
| // to a default value of 1 hour. |
| Ttl string `json:"ttl,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ExpireTime") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ExpireTime") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GenerateAccessTokenRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod GenerateAccessTokenRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GenerateAccessTokenResponse: Response message for GenerateAccessToken. |
| type GenerateAccessTokenResponse struct { |
| // AccessToken: The generated bearer access token. To use this token, include |
| // it in an Authorization header of an HTTP request sent to the associated |
| // workstation's hostname—for example, `Authorization: Bearer `. |
| AccessToken string `json:"accessToken,omitempty"` |
| // ExpireTime: Time at which the generated token will expire. |
| ExpireTime string `json:"expireTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AccessToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AccessToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *GenerateAccessTokenResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod GenerateAccessTokenResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // GoogleProtobufEmpty: 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); } |
| type GoogleProtobufEmpty struct { |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| } |
| |
| // Host: Runtime host for a workstation. |
| type Host struct { |
| // GceInstance: Specifies a Compute Engine instance as the host. |
| GceInstance *GceInstance `json:"gceInstance,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "GceInstance") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "GceInstance") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Host) MarshalJSON() ([]byte, error) { |
| type NoMethod Host |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListOperationsResponse: The response message for Operations.ListOperations. |
| type ListOperationsResponse struct { |
| // NextPageToken: The standard List next-page token. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Operations: A list of operations that matches the specified filter in the |
| // request. |
| Operations []*Operation `json:"operations,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListOperationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListOperationsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListUsableWorkstationConfigsResponse: Response message for |
| // ListUsableWorkstationConfigs. |
| type ListUsableWorkstationConfigsResponse struct { |
| // NextPageToken: Token to retrieve the next page of results, or empty if there |
| // are no more results in the list. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Unreachable: Unreachable resources. |
| Unreachable []string `json:"unreachable,omitempty"` |
| // WorkstationConfigs: The requested configs. |
| WorkstationConfigs []*WorkstationConfig `json:"workstationConfigs,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListUsableWorkstationConfigsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListUsableWorkstationConfigsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListUsableWorkstationsResponse: Response message for ListUsableWorkstations. |
| type ListUsableWorkstationsResponse struct { |
| // NextPageToken: Token to retrieve the next page of results, or empty if there |
| // are no more results in the list. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Unreachable: Unreachable resources. |
| Unreachable []string `json:"unreachable,omitempty"` |
| // Workstations: The requested workstations. |
| Workstations []*Workstation `json:"workstations,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListUsableWorkstationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListUsableWorkstationsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListWorkstationClustersResponse: Response message for |
| // ListWorkstationClusters. |
| type ListWorkstationClustersResponse struct { |
| // NextPageToken: Token to retrieve the next page of results, or empty if there |
| // are no more results in the list. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Unreachable: Unreachable resources. |
| Unreachable []string `json:"unreachable,omitempty"` |
| // WorkstationClusters: The requested workstation clusters. |
| WorkstationClusters []*WorkstationCluster `json:"workstationClusters,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListWorkstationClustersResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListWorkstationClustersResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListWorkstationConfigsResponse: Response message for ListWorkstationConfigs. |
| type ListWorkstationConfigsResponse struct { |
| // NextPageToken: Token to retrieve the next page of results, or empty if there |
| // are no more results in the list. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Unreachable: Unreachable resources. |
| Unreachable []string `json:"unreachable,omitempty"` |
| // WorkstationConfigs: The requested configs. |
| WorkstationConfigs []*WorkstationConfig `json:"workstationConfigs,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListWorkstationConfigsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListWorkstationConfigsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ListWorkstationsResponse: Response message for ListWorkstations. |
| type ListWorkstationsResponse struct { |
| // NextPageToken: Optional. Token to retrieve the next page of results, or |
| // empty if there are no more results in the list. |
| NextPageToken string `json:"nextPageToken,omitempty"` |
| // Unreachable: Optional. Unreachable resources. |
| Unreachable []string `json:"unreachable,omitempty"` |
| // Workstations: The requested workstations. |
| Workstations []*Workstation `json:"workstations,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "NextPageToken") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "NextPageToken") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ListWorkstationsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod ListWorkstationsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Operation: This resource represents a long-running operation that is the |
| // result of a network API call. |
| type Operation struct { |
| // Done: If the value is `false`, it means the operation is still in progress. |
| // If `true`, the operation is completed, and either `error` or `response` is |
| // available. |
| Done bool `json:"done,omitempty"` |
| // Error: The error result of the operation in case of failure or cancellation. |
| Error *Status `json:"error,omitempty"` |
| // Metadata: Service-specific metadata associated with the operation. It |
| // typically contains progress information and common metadata such as create |
| // time. Some services might not provide such metadata. Any method that returns |
| // a long-running operation should document the metadata type, if any. |
| Metadata googleapi.RawMessage `json:"metadata,omitempty"` |
| // Name: The server-assigned name, which is only unique within the same service |
| // that originally returns it. If you use the default HTTP mapping, the `name` |
| // should be a resource name ending with `operations/{unique_id}`. |
| Name string `json:"name,omitempty"` |
| // Response: The normal, successful response of the operation. If the original |
| // method returns no data on success, such as `Delete`, the response is |
| // `google.protobuf.Empty`. If the original method is standard |
| // `Get`/`Create`/`Update`, the response should be the resource. For other |
| // methods, the response should have the type `XxxResponse`, where `Xxx` is the |
| // original method name. For example, if the original method name is |
| // `TakeSnapshot()`, the inferred response type is `TakeSnapshotResponse`. |
| Response googleapi.RawMessage `json:"response,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Done") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Done") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Operation) MarshalJSON() ([]byte, error) { |
| type NoMethod Operation |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // OperationMetadata: Metadata for long-running operations. |
| type OperationMetadata struct { |
| // ApiVersion: Output only. API version used to start the operation. |
| ApiVersion string `json:"apiVersion,omitempty"` |
| // CreateTime: Output only. Time that the operation was created. |
| CreateTime string `json:"createTime,omitempty"` |
| // EndTime: Output only. Time that the operation finished running. |
| EndTime string `json:"endTime,omitempty"` |
| // RequestedCancellation: Output only. Identifies whether the user has |
| // requested cancellation of the operation. |
| RequestedCancellation bool `json:"requestedCancellation,omitempty"` |
| // StatusMessage: Output only. Human-readable status of the operation, if any. |
| StatusMessage string `json:"statusMessage,omitempty"` |
| // Target: Output only. Server-defined resource path for the target of the |
| // operation. |
| Target string `json:"target,omitempty"` |
| // Verb: Output only. Name of the verb executed by the operation. |
| Verb string `json:"verb,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "ApiVersion") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "ApiVersion") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *OperationMetadata) MarshalJSON() ([]byte, error) { |
| type NoMethod OperationMetadata |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PersistentDirectory: A directory to persist across workstation sessions. |
| type PersistentDirectory struct { |
| // GcePd: A PersistentDirectory backed by a Compute Engine persistent disk. |
| GcePd *GceRegionalPersistentDisk `json:"gcePd,omitempty"` |
| // MountPath: Optional. Location of this directory in the running workstation. |
| MountPath string `json:"mountPath,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "GcePd") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "GcePd") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *PersistentDirectory) MarshalJSON() ([]byte, error) { |
| type NoMethod PersistentDirectory |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Policy: An Identity and Access Management (IAM) policy, which specifies |
| // access controls for Google Cloud resources. A `Policy` is a collection of |
| // `bindings`. A `binding` binds one or more `members`, or principals, to a |
| // single `role`. Principals can be user accounts, service accounts, Google |
| // groups, and domains (such as G Suite). A `role` is a named list of |
| // permissions; each `role` can be an IAM predefined role or a user-created |
| // custom role. For some types of Google Cloud resources, a `binding` can also |
| // specify a `condition`, which is a logical expression that allows access to a |
| // resource only if the expression evaluates to `true`. A condition can add |
| // constraints based on attributes of the request, the resource, or both. To |
| // learn which resources support conditions in their IAM policies, see the IAM |
| // documentation |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). **JSON |
| // example:** ``` { "bindings": [ { "role": |
| // "roles/resourcemanager.organizationAdmin", "members": [ |
| // "user:mike@example.com", "group:admins@example.com", "domain:google.com", |
| // "serviceAccount:my-project-id@appspot.gserviceaccount.com" ] }, { "role": |
| // "roles/resourcemanager.organizationViewer", "members": [ |
| // "user:eve@example.com" ], "condition": { "title": "expirable access", |
| // "description": "Does not grant access after Sep 2020", "expression": |
| // "request.time < timestamp('2020-10-01T00:00:00.000Z')", } } ], "etag": |
| // "BwWWja0YfJA=", "version": 3 } ``` **YAML example:** ``` bindings: - |
| // members: - user:mike@example.com - group:admins@example.com - |
| // domain:google.com - serviceAccount:my-project-id@appspot.gserviceaccount.com |
| // role: roles/resourcemanager.organizationAdmin - members: - |
| // user:eve@example.com role: roles/resourcemanager.organizationViewer |
| // condition: title: expirable access description: Does not grant access after |
| // Sep 2020 expression: request.time < timestamp('2020-10-01T00:00:00.000Z') |
| // etag: BwWWja0YfJA= version: 3 ``` For a description of IAM and its features, |
| // see the IAM documentation (https://cloud.google.com/iam/docs/). |
| type Policy struct { |
| // AuditConfigs: Specifies cloud audit logging configuration for this policy. |
| AuditConfigs []*AuditConfig `json:"auditConfigs,omitempty"` |
| // Bindings: Associates a list of `members`, or principals, with a `role`. |
| // Optionally, may specify a `condition` that determines how and when the |
| // `bindings` are applied. Each of the `bindings` must contain at least one |
| // principal. The `bindings` in a `Policy` can refer to up to 1,500 principals; |
| // up to 250 of these principals can be Google groups. Each occurrence of a |
| // principal counts towards these limits. For example, if the `bindings` grant |
| // 50 different roles to `user:alice@example.com`, and not to any other |
| // principal, then you can add another 1,450 principals to the `bindings` in |
| // the `Policy`. |
| Bindings []*Binding `json:"bindings,omitempty"` |
| // Etag: `etag` is used for optimistic concurrency control as a way to help |
| // prevent simultaneous updates of a policy from overwriting each other. It is |
| // strongly suggested that systems make use of the `etag` in the |
| // read-modify-write cycle to perform policy updates in order to avoid race |
| // conditions: An `etag` is returned in the response to `getIamPolicy`, and |
| // systems are expected to put that etag in the request to `setIamPolicy` to |
| // ensure that their change will be applied to the same version of the policy. |
| // **Important:** If you use IAM Conditions, you must include the `etag` field |
| // whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| // you to overwrite a version `3` policy with a version `1` policy, and all of |
| // the conditions in the version `3` policy are lost. |
| Etag string `json:"etag,omitempty"` |
| // Version: Specifies the format of the policy. Valid values are `0`, `1`, and |
| // `3`. Requests that specify an invalid value are rejected. Any operation that |
| // affects conditional role bindings must specify version `3`. This requirement |
| // applies to the following operations: * Getting a policy that includes a |
| // conditional role binding * Adding a conditional role binding to a policy * |
| // Changing a conditional role binding in a policy * Removing any role binding, |
| // with or without a condition, from a policy that includes conditions |
| // **Important:** If you use IAM Conditions, you must include the `etag` field |
| // whenever you call `setIamPolicy`. If you omit this field, then IAM allows |
| // you to overwrite a version `3` policy with a version `1` policy, and all of |
| // the conditions in the version `3` policy are lost. If a policy does not |
| // include any conditions, operations on that policy may specify any valid |
| // version or leave the field unset. To learn which resources support |
| // conditions in their IAM policies, see the IAM documentation |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). |
| Version int64 `json:"version,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AuditConfigs") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AuditConfigs") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Policy) MarshalJSON() ([]byte, error) { |
| type NoMethod Policy |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // PortRange: A PortsConfig defines a range of ports. Both first and last are |
| // inclusive. To specify a single port, both first and last should be the same. |
| type PortRange struct { |
| // First: Required. Starting port number for the current range of ports. |
| First int64 `json:"first,omitempty"` |
| // Last: Required. Ending port number for the current range of ports. |
| Last int64 `json:"last,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "First") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "First") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *PortRange) MarshalJSON() ([]byte, error) { |
| type NoMethod PortRange |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| type PrivateClusterConfig struct { |
| AllowedProjects []string `json:"allowedProjects,omitempty"` |
| ClusterHostname string `json:"clusterHostname,omitempty"` |
| EnablePrivateEndpoint bool `json:"enablePrivateEndpoint,omitempty"` |
| ServiceAttachmentUri string `json:"serviceAttachmentUri,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "AllowedProjects") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AllowedProjects") to include in |
| // API requests with the JSON null value. By default, fields with empty values |
| // are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *PrivateClusterConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod PrivateClusterConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // ReadinessCheck: A readiness check to be performed on a workstation. |
| type ReadinessCheck struct { |
| // Path: Optional. Path to which the request should be sent. |
| Path string `json:"path,omitempty"` |
| // Port: Optional. Port to which the request should be sent. |
| Port int64 `json:"port,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Path") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Path") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *ReadinessCheck) MarshalJSON() ([]byte, error) { |
| type NoMethod ReadinessCheck |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // SetIamPolicyRequest: Request message for `SetIamPolicy` method. |
| type SetIamPolicyRequest struct { |
| // Policy: REQUIRED: The complete policy to be applied to the `resource`. The |
| // size of the policy is limited to a few 10s of KB. An empty policy is a valid |
| // policy but certain Google Cloud services (such as Projects) might reject |
| // them. |
| Policy *Policy `json:"policy,omitempty"` |
| // UpdateMask: OPTIONAL: A FieldMask specifying which fields of the policy to |
| // modify. Only the fields in the mask will be modified. If no mask is |
| // provided, the following default mask is used: `paths: "bindings, etag" |
| UpdateMask string `json:"updateMask,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Policy") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Policy") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *SetIamPolicyRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod SetIamPolicyRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // StartWorkstationRequest: Request message for StartWorkstation. |
| type StartWorkstationRequest struct { |
| // BoostConfig: Optional. If set, the workstation starts using the boost |
| // configuration with the specified ID. |
| BoostConfig string `json:"boostConfig,omitempty"` |
| // Etag: Optional. If set, the request will be rejected if the latest version |
| // of the workstation on the server does not have this ETag. |
| Etag string `json:"etag,omitempty"` |
| // ValidateOnly: Optional. If set, validate the request and preview the review, |
| // but do not actually apply it. |
| ValidateOnly bool `json:"validateOnly,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "BoostConfig") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "BoostConfig") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *StartWorkstationRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod StartWorkstationRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Status: The `Status` type defines a logical error model that is suitable for |
| // different programming environments, including REST APIs and RPC APIs. It is |
| // used by gRPC (https://github.com/grpc). Each `Status` message contains three |
| // pieces of data: error code, error message, and error details. You can find |
| // out more about this error model and how to work with it in the API Design |
| // Guide (https://cloud.google.com/apis/design/errors). |
| type Status struct { |
| // Code: The status code, which should be an enum value of google.rpc.Code. |
| Code int64 `json:"code,omitempty"` |
| // Details: A list of messages that carry the error details. There is a common |
| // set of message types for APIs to use. |
| Details []googleapi.RawMessage `json:"details,omitempty"` |
| // Message: A developer-facing error message, which should be in English. Any |
| // user-facing error message should be localized and sent in the |
| // google.rpc.Status.details field, or localized by the client. |
| Message string `json:"message,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Code") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Code") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Status) MarshalJSON() ([]byte, error) { |
| type NoMethod Status |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // StopWorkstationRequest: Request message for StopWorkstation. |
| type StopWorkstationRequest struct { |
| // Etag: Optional. If set, the request will be rejected if the latest version |
| // of the workstation on the server does not have this ETag. |
| Etag string `json:"etag,omitempty"` |
| // ValidateOnly: Optional. If set, validate the request and preview the review, |
| // but do not actually apply it. |
| ValidateOnly bool `json:"validateOnly,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Etag") to unconditionally |
| // include in API requests. By default, fields with empty or default values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Etag") to include in API requests |
| // with the JSON null value. By default, fields with empty values are omitted |
| // from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *StopWorkstationRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod StopWorkstationRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // TestIamPermissionsRequest: Request message for `TestIamPermissions` method. |
| type TestIamPermissionsRequest struct { |
| // Permissions: The set of permissions to check for the `resource`. Permissions |
| // with wildcards (such as `*` or `storage.*`) are not allowed. For more |
| // information see IAM Overview |
| // (https://cloud.google.com/iam/docs/overview#permissions). |
| Permissions []string `json:"permissions,omitempty"` |
| // ForceSendFields is a list of field names (e.g. "Permissions") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Permissions") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *TestIamPermissionsRequest) MarshalJSON() ([]byte, error) { |
| type NoMethod TestIamPermissionsRequest |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // TestIamPermissionsResponse: Response message for `TestIamPermissions` |
| // method. |
| type TestIamPermissionsResponse struct { |
| // Permissions: A subset of `TestPermissionsRequest.permissions` that the |
| // caller is allowed. |
| Permissions []string `json:"permissions,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Permissions") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Permissions") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *TestIamPermissionsResponse) MarshalJSON() ([]byte, error) { |
| type NoMethod TestIamPermissionsResponse |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // Workstation: A single instance of a developer workstation with its own |
| // persistent storage. |
| type Workstation struct { |
| // Annotations: Optional. Client-specified annotations. |
| Annotations map[string]string `json:"annotations,omitempty"` |
| // CreateTime: Output only. Time when this workstation was created. |
| CreateTime string `json:"createTime,omitempty"` |
| // DeleteTime: Output only. Time when this workstation was soft-deleted. |
| DeleteTime string `json:"deleteTime,omitempty"` |
| // DisplayName: Optional. Human-readable name for this workstation. |
| DisplayName string `json:"displayName,omitempty"` |
| // Env: Optional. Environment variables passed to the workstation container's |
| // entrypoint. |
| Env map[string]string `json:"env,omitempty"` |
| // Etag: Optional. Checksum computed by the server. May be sent on update and |
| // delete requests to make sure that the client has an up-to-date value before |
| // proceeding. |
| Etag string `json:"etag,omitempty"` |
| // Host: Output only. Host to which clients can send HTTPS traffic that will be |
| // received by the workstation. Authorized traffic will be received to the |
| // workstation as HTTP on port 80. To send traffic to a different port, clients |
| // may prefix the host with the destination port in the format `{port}-{host}`. |
| Host string `json:"host,omitempty"` |
| // KmsKey: Output only. The name of the Google Cloud KMS encryption key used to |
| // encrypt this workstation. The KMS key can only be configured in the |
| // WorkstationConfig. The expected format is |
| // `projects/*/locations/*/keyRings/*/cryptoKeys/*`. |
| KmsKey string `json:"kmsKey,omitempty"` |
| // Labels: Optional. Labels |
| // (https://cloud.google.com/workstations/docs/label-resources) that are |
| // applied to the workstation and that are also propagated to the underlying |
| // Compute Engine resources. |
| Labels map[string]string `json:"labels,omitempty"` |
| // Name: Identifier. Full name of this workstation. |
| Name string `json:"name,omitempty"` |
| // Reconciling: Output only. Indicates whether this workstation is currently |
| // being updated to match its intended state. |
| Reconciling bool `json:"reconciling,omitempty"` |
| // StartTime: Output only. Time when this workstation was most recently |
| // successfully started, regardless of the workstation's initial state. |
| StartTime string `json:"startTime,omitempty"` |
| // State: Output only. Current state of the workstation. |
| // |
| // Possible values: |
| // "STATE_UNSPECIFIED" - Do not use. |
| // "STATE_STARTING" - The workstation is not yet ready to accept requests |
| // from users but will be soon. |
| // "STATE_RUNNING" - The workstation is ready to accept requests from users. |
| // "STATE_STOPPING" - The workstation is being stopped. |
| // "STATE_STOPPED" - The workstation is stopped and will not be able to |
| // receive requests until it is started. |
| State string `json:"state,omitempty"` |
| // Uid: Output only. A system-assigned unique identifier for this workstation. |
| Uid string `json:"uid,omitempty"` |
| // UpdateTime: Output only. Time when this workstation was most recently |
| // updated. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Annotations") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Annotations") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *Workstation) MarshalJSON() ([]byte, error) { |
| type NoMethod Workstation |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // WorkstationCluster: A workstation cluster resource in the Cloud Workstations |
| // API. Defines a group of workstations in a particular region and the VPC |
| // network they're attached to. |
| type WorkstationCluster struct { |
| // Annotations: Optional. Client-specified annotations. |
| Annotations map[string]string `json:"annotations,omitempty"` |
| // Conditions: Output only. Status conditions describing the workstation |
| // cluster's current state. |
| Conditions []*Status `json:"conditions,omitempty"` |
| // ControlPlaneIp: Output only. The private IP address of the control plane for |
| // this workstation cluster. Workstation VMs need access to this IP address to |
| // work with the service, so make sure that your firewall rules allow egress |
| // from the workstation VMs to this address. |
| ControlPlaneIp string `json:"controlPlaneIp,omitempty"` |
| // CreateTime: Output only. Time when this workstation cluster was created. |
| CreateTime string `json:"createTime,omitempty"` |
| // Degraded: Output only. Whether this workstation cluster is in degraded mode, |
| // in which case it may require user action to restore full functionality. |
| // Details can be found in conditions. |
| Degraded bool `json:"degraded,omitempty"` |
| // DeleteTime: Output only. Time when this workstation cluster was |
| // soft-deleted. |
| DeleteTime string `json:"deleteTime,omitempty"` |
| // DisplayName: Optional. Human-readable name for this workstation cluster. |
| DisplayName string `json:"displayName,omitempty"` |
| // DomainConfig: Optional. Configuration options for a custom domain. |
| DomainConfig *DomainConfig `json:"domainConfig,omitempty"` |
| // Etag: Optional. Checksum computed by the server. May be sent on update and |
| // delete requests to make sure that the client has an up-to-date value before |
| // proceeding. |
| Etag string `json:"etag,omitempty"` |
| // Labels: Optional. Labels |
| // (https://cloud.google.com/workstations/docs/label-resources) that are |
| // applied to the workstation cluster and that are also propagated to the |
| // underlying Compute Engine resources. |
| Labels map[string]string `json:"labels,omitempty"` |
| // Name: Identifier. Full name of this workstation cluster. |
| Name string `json:"name,omitempty"` |
| // Network: Immutable. Name of the Compute Engine network in which instances |
| // associated with this workstation cluster will be created. |
| Network string `json:"network,omitempty"` |
| // PrivateClusterConfig: Optional. Configuration for private workstation |
| // cluster. |
| PrivateClusterConfig *PrivateClusterConfig `json:"privateClusterConfig,omitempty"` |
| // Reconciling: Output only. Indicates whether this workstation cluster is |
| // currently being updated to match its intended state. |
| Reconciling bool `json:"reconciling,omitempty"` |
| // Subnetwork: Immutable. Name of the Compute Engine subnetwork in which |
| // instances associated with this workstation cluster will be created. Must be |
| // part of the subnetwork specified for this workstation cluster. |
| Subnetwork string `json:"subnetwork,omitempty"` |
| // Uid: Output only. A system-assigned unique identifier for this workstation |
| // cluster. |
| Uid string `json:"uid,omitempty"` |
| // UpdateTime: Output only. Time when this workstation cluster was most |
| // recently updated. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "Annotations") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "Annotations") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *WorkstationCluster) MarshalJSON() ([]byte, error) { |
| type NoMethod WorkstationCluster |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| // WorkstationConfig: A workstation configuration resource in the Cloud |
| // Workstations API. Workstation configurations act as templates for |
| // workstations. The workstation configuration defines details such as the |
| // workstation virtual machine (VM) instance type, persistent storage, |
| // container image defining environment, which IDE or Code Editor to use, and |
| // more. Administrators and platform teams can also use Identity and Access |
| // Management (IAM) (https://cloud.google.com/iam/docs/overview) rules to grant |
| // access to teams or to individual developers. |
| type WorkstationConfig struct { |
| // AllowedPorts: Optional. A Single or Range of ports externally accessible in |
| // the workstation. If not specified defaults to ports 22, 80 and ports |
| // 1024-65535. |
| AllowedPorts []*PortRange `json:"allowedPorts,omitempty"` |
| // Annotations: Optional. Client-specified annotations. |
| Annotations map[string]string `json:"annotations,omitempty"` |
| // Conditions: Output only. Status conditions describing the current resource |
| // state. |
| Conditions []*Status `json:"conditions,omitempty"` |
| // Container: Optional. Container that runs upon startup for each workstation |
| // using this workstation configuration. |
| Container *Container `json:"container,omitempty"` |
| // CreateTime: Output only. Time when this workstation configuration was |
| // created. |
| CreateTime string `json:"createTime,omitempty"` |
| // Degraded: Output only. Whether this resource is degraded, in which case it |
| // may require user action to restore full functionality. See also the |
| // conditions field. |
| Degraded bool `json:"degraded,omitempty"` |
| // DeleteTime: Output only. Time when this workstation configuration was |
| // soft-deleted. |
| DeleteTime string `json:"deleteTime,omitempty"` |
| // DisableTcpConnections: Optional. Disables support for plain TCP connections |
| // in the workstation. By default the service supports TCP connections through |
| // a websocket relay. Setting this option to true disables that relay, which |
| // prevents the usage of services that require plain TCP connections, such as |
| // SSH. When enabled, all communication must occur over HTTPS or WSS. |
| DisableTcpConnections bool `json:"disableTcpConnections,omitempty"` |
| // DisplayName: Optional. Human-readable name for this workstation |
| // configuration. |
| DisplayName string `json:"displayName,omitempty"` |
| // EnableAuditAgent: Optional. Whether to enable Linux `auditd` logging on the |
| // workstation. When enabled, a service account must also be specified that has |
| // `logging.buckets.write` permission on the project. Operating system audit |
| // logging is distinct from Cloud Audit Logs |
| // (https://cloud.google.com/workstations/docs/audit-logging). |
| EnableAuditAgent bool `json:"enableAuditAgent,omitempty"` |
| // EncryptionKey: Immutable. Encrypts resources of this workstation |
| // configuration using a customer-managed encryption key (CMEK). If specified, |
| // the boot disk of the Compute Engine instance and the persistent disk are |
| // encrypted using this encryption key. If this field is not set, the disks are |
| // encrypted using a generated key. Customer-managed encryption keys do not |
| // protect disk metadata. If the customer-managed encryption key is rotated, |
| // when the workstation instance is stopped, the system attempts to recreate |
| // the persistent disk with the new version of the key. Be sure to keep older |
| // versions of the key until the persistent disk is recreated. Otherwise, data |
| // on the persistent disk might be lost. If the encryption key is revoked, the |
| // workstation session automatically stops within 7 hours. Immutable after the |
| // workstation configuration is created. |
| EncryptionKey *CustomerEncryptionKey `json:"encryptionKey,omitempty"` |
| // EphemeralDirectories: Optional. Ephemeral directories which won't persist |
| // across workstation sessions. |
| EphemeralDirectories []*EphemeralDirectory `json:"ephemeralDirectories,omitempty"` |
| // Etag: Optional. Checksum computed by the server. May be sent on update and |
| // delete requests to make sure that the client has an up-to-date value before |
| // proceeding. |
| Etag string `json:"etag,omitempty"` |
| // Host: Optional. Runtime host for the workstation. |
| Host *Host `json:"host,omitempty"` |
| // IdleTimeout: Optional. Number of seconds to wait before automatically |
| // stopping a workstation after it last received user traffic. A value of |
| // "0s" indicates that Cloud Workstations VMs created with this configuration |
| // should never time out due to idleness. Provide duration |
| // (https://developers.google.com/protocol-buffers/docs/reference/google.protobuf#duration) |
| // terminated by `s` for seconds—for example, "7200s" (2 hours). The |
| // default is "1200s" (20 minutes). |
| IdleTimeout string `json:"idleTimeout,omitempty"` |
| // Labels: Optional. Labels |
| // (https://cloud.google.com/workstations/docs/label-resources) that are |
| // applied to the workstation configuration and that are also propagated to the |
| // underlying Compute Engine resources. |
| Labels map[string]string `json:"labels,omitempty"` |
| // Name: Identifier. Full name of this workstation configuration. |
| Name string `json:"name,omitempty"` |
| // PersistentDirectories: Optional. Directories to persist across workstation |
| // sessions. |
| PersistentDirectories []*PersistentDirectory `json:"persistentDirectories,omitempty"` |
| // ReadinessChecks: Optional. Readiness checks to perform when starting a |
| // workstation using this workstation configuration. Mark a workstation as |
| // running only after all specified readiness checks return 200 status codes. |
| ReadinessChecks []*ReadinessCheck `json:"readinessChecks,omitempty"` |
| // Reconciling: Output only. Indicates whether this workstation configuration |
| // is currently being updated to match its intended state. |
| Reconciling bool `json:"reconciling,omitempty"` |
| // ReplicaZones: Optional. Immutable. Specifies the zones used to replicate the |
| // VM and disk resources within the region. If set, exactly two zones within |
| // the workstation cluster's region must be specified—for example, |
| // `['us-central1-a', 'us-central1-f']`. If this field is empty, two default |
| // zones within the region are used. Immutable after the workstation |
| // configuration is created. |
| ReplicaZones []string `json:"replicaZones,omitempty"` |
| // RunningTimeout: Optional. Number of seconds that a workstation can run until |
| // it is automatically shut down. We recommend that workstations be shut down |
| // daily to reduce costs and so that security updates can be applied upon |
| // restart. The idle_timeout and running_timeout fields are independent of each |
| // other. Note that the running_timeout field shuts down VMs after the |
| // specified time, regardless of whether or not the VMs are idle. Provide |
| // duration terminated by `s` for seconds—for example, "54000s" (15 hours). |
| // Defaults to "43200s" (12 hours). A value of "0s" indicates that |
| // workstations using this configuration should never time out. If |
| // encryption_key is set, it must be greater than "0s" and less than |
| // "86400s" (24 hours). Warning: A value of "0s" indicates that Cloud |
| // Workstations VMs created with this configuration have no maximum running |
| // time. This is strongly discouraged because you incur costs and will not pick |
| // up security updates. |
| RunningTimeout string `json:"runningTimeout,omitempty"` |
| // Uid: Output only. A system-assigned unique identifier for this workstation |
| // configuration. |
| Uid string `json:"uid,omitempty"` |
| // UpdateTime: Output only. Time when this workstation configuration was most |
| // recently updated. |
| UpdateTime string `json:"updateTime,omitempty"` |
| |
| // ServerResponse contains the HTTP response code and headers from the server. |
| googleapi.ServerResponse `json:"-"` |
| // ForceSendFields is a list of field names (e.g. "AllowedPorts") to |
| // unconditionally include in API requests. By default, fields with empty or |
| // default values are omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-ForceSendFields for more |
| // details. |
| ForceSendFields []string `json:"-"` |
| // NullFields is a list of field names (e.g. "AllowedPorts") to include in API |
| // requests with the JSON null value. By default, fields with empty values are |
| // omitted from API requests. See |
| // https://pkg.go.dev/google.golang.org/api#hdr-NullFields for more details. |
| NullFields []string `json:"-"` |
| } |
| |
| func (s *WorkstationConfig) MarshalJSON() ([]byte, error) { |
| type NoMethod WorkstationConfig |
| return gensupport.MarshalJSON(NoMethod(*s), s.ForceSendFields, s.NullFields) |
| } |
| |
| type ProjectsLocationsOperationsCancelCall struct { |
| s *Service |
| name string |
| canceloperationrequest *CancelOperationRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Cancel: Starts asynchronous cancellation on a long-running operation. The |
| // server makes a best effort to cancel the operation, but success is not |
| // guaranteed. If the server doesn't support this method, it returns |
| // `google.rpc.Code.UNIMPLEMENTED`. Clients can use Operations.GetOperation or |
| // other methods to check whether the cancellation succeeded or whether the |
| // operation completed despite cancellation. On successful cancellation, the |
| // operation is not deleted; instead, it becomes an operation with an |
| // Operation.error value with a google.rpc.Status.code of 1, corresponding to |
| // `Code.CANCELLED`. |
| // |
| // - name: The name of the operation resource to be cancelled. |
| func (r *ProjectsLocationsOperationsService) Cancel(name string, canceloperationrequest *CancelOperationRequest) *ProjectsLocationsOperationsCancelCall { |
| c := &ProjectsLocationsOperationsCancelCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.canceloperationrequest = canceloperationrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsOperationsCancelCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsCancelCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsOperationsCancelCall) Context(ctx context.Context) *ProjectsLocationsOperationsCancelCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsOperationsCancelCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsOperationsCancelCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.canceloperationrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:cancel") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.operations.cancel" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *ProjectsLocationsOperationsCancelCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &GoogleProtobufEmpty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsOperationsDeleteCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes a long-running operation. This method indicates that the |
| // client is no longer interested in the operation result. It does not cancel |
| // the operation. If the server doesn't support this method, it returns |
| // `google.rpc.Code.UNIMPLEMENTED`. |
| // |
| // - name: The name of the operation resource to be deleted. |
| func (r *ProjectsLocationsOperationsService) Delete(name string) *ProjectsLocationsOperationsDeleteCall { |
| c := &ProjectsLocationsOperationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsOperationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsOperationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsOperationsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsOperationsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsOperationsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.operations.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *GoogleProtobufEmpty.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *ProjectsLocationsOperationsDeleteCall) Do(opts ...googleapi.CallOption) (*GoogleProtobufEmpty, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &GoogleProtobufEmpty{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsOperationsGetCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Gets the latest state of a long-running operation. Clients can use this |
| // method to poll the operation result at intervals as recommended by the API |
| // service. |
| // |
| // - name: The name of the operation resource. |
| func (r *ProjectsLocationsOperationsService) Get(name string) *ProjectsLocationsOperationsGetCall { |
| c := &ProjectsLocationsOperationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsOperationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsOperationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsOperationsGetCall) Context(ctx context.Context) *ProjectsLocationsOperationsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsOperationsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsOperationsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.operations.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsOperationsGetCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsOperationsListCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Lists operations that match the specified filter in the request. If |
| // the server doesn't support this method, it returns `UNIMPLEMENTED`. |
| // |
| // - name: The name of the operation's parent resource. |
| func (r *ProjectsLocationsOperationsService) List(name string) *ProjectsLocationsOperationsListCall { |
| c := &ProjectsLocationsOperationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Filter sets the optional parameter "filter": The standard list filter. |
| func (c *ProjectsLocationsOperationsListCall) Filter(filter string) *ProjectsLocationsOperationsListCall { |
| c.urlParams_.Set("filter", filter) |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": The standard list page |
| // size. |
| func (c *ProjectsLocationsOperationsListCall) PageSize(pageSize int64) *ProjectsLocationsOperationsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": The standard list page |
| // token. |
| func (c *ProjectsLocationsOperationsListCall) PageToken(pageToken string) *ProjectsLocationsOperationsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsOperationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsOperationsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsOperationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsOperationsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsOperationsListCall) Context(ctx context.Context) *ProjectsLocationsOperationsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsOperationsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsOperationsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}/operations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.operations.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListOperationsResponse.ServerResponse.Header or (if a response was returned |
| // at all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *ProjectsLocationsOperationsListCall) Do(opts ...googleapi.CallOption) (*ListOperationsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListOperationsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *ProjectsLocationsOperationsListCall) Pages(ctx context.Context, f func(*ListOperationsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type ProjectsLocationsWorkstationClustersCreateCall struct { |
| s *Service |
| parent string |
| workstationcluster *WorkstationCluster |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a new workstation cluster. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersService) Create(parent string, workstationcluster *WorkstationCluster) *ProjectsLocationsWorkstationClustersCreateCall { |
| c := &ProjectsLocationsWorkstationClustersCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| c.workstationcluster = workstationcluster |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersCreateCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // WorkstationClusterId sets the optional parameter "workstationClusterId": |
| // Required. ID to use for the workstation cluster. |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) WorkstationClusterId(workstationClusterId string) *ProjectsLocationsWorkstationClustersCreateCall { |
| c.urlParams_.Set("workstationClusterId", workstationClusterId) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.workstationcluster) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstationClusters") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersDeleteCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes the specified workstation cluster. |
| // |
| // - name: Name of the workstation cluster to delete. |
| func (r *ProjectsLocationsWorkstationClustersService) Delete(name string) *ProjectsLocationsWorkstationClustersDeleteCall { |
| c := &ProjectsLocationsWorkstationClustersDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Etag sets the optional parameter "etag": If set, the request will be |
| // rejected if the latest version of the workstation cluster on the server does |
| // not have this ETag. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) Etag(etag string) *ProjectsLocationsWorkstationClustersDeleteCall { |
| c.urlParams_.Set("etag", etag) |
| return c |
| } |
| |
| // Force sets the optional parameter "force": If set, any workstation |
| // configurations and workstations in the workstation cluster are also deleted. |
| // Otherwise, the request only works if the workstation cluster has no |
| // configurations or workstations. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) Force(force bool) *ProjectsLocationsWorkstationClustersDeleteCall { |
| c.urlParams_.Set("force", fmt.Sprint(force)) |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not apply it. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersDeleteCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersGetCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns the requested workstation cluster. |
| // |
| // - name: Name of the requested resource. |
| func (r *ProjectsLocationsWorkstationClustersService) Get(name string) *ProjectsLocationsWorkstationClustersGetCall { |
| c := &ProjectsLocationsWorkstationClustersGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersGetCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *WorkstationCluster.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *ProjectsLocationsWorkstationClustersGetCall) Do(opts ...googleapi.CallOption) (*WorkstationCluster, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &WorkstationCluster{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersListCall struct { |
| s *Service |
| parent string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns all workstation clusters in the specified location. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersService) List(parent string) *ProjectsLocationsWorkstationClustersListCall { |
| c := &ProjectsLocationsWorkstationClustersListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. |
| func (c *ProjectsLocationsWorkstationClustersListCall) PageSize(pageSize int64) *ProjectsLocationsWorkstationClustersListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": next_page_token value |
| // returned from a previous List request, if any. |
| func (c *ProjectsLocationsWorkstationClustersListCall) PageToken(pageToken string) *ProjectsLocationsWorkstationClustersListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersListCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersListCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersListCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstationClusters") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListWorkstationClustersResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersListCall) Do(opts ...googleapi.CallOption) (*ListWorkstationClustersResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListWorkstationClustersResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *ProjectsLocationsWorkstationClustersListCall) Pages(ctx context.Context, f func(*ListWorkstationClustersResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type ProjectsLocationsWorkstationClustersPatchCall struct { |
| s *Service |
| name string |
| workstationcluster *WorkstationCluster |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates an existing workstation cluster. |
| // |
| // - name: Identifier. Full name of this workstation cluster. |
| func (r *ProjectsLocationsWorkstationClustersService) Patch(name string, workstationcluster *WorkstationCluster) *ProjectsLocationsWorkstationClustersPatchCall { |
| c := &ProjectsLocationsWorkstationClustersPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.workstationcluster = workstationcluster |
| return c |
| } |
| |
| // AllowMissing sets the optional parameter "allowMissing": If set, and the |
| // workstation cluster is not found, a new workstation cluster will be created. |
| // In this situation, update_mask is ignored. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) AllowMissing(allowMissing bool) *ProjectsLocationsWorkstationClustersPatchCall { |
| c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing)) |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Required. Mask that |
| // specifies which fields in the workstation cluster should be updated. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) UpdateMask(updateMask string) *ProjectsLocationsWorkstationClustersPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersPatchCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.workstationcluster) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall struct { |
| s *Service |
| parent string |
| workstationconfig *WorkstationConfig |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a new workstation configuration. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) Create(parent string, workstationconfig *WorkstationConfig) *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| c.workstationconfig = workstationconfig |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // WorkstationConfigId sets the optional parameter "workstationConfigId": |
| // Required. ID to use for the workstation configuration. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) WorkstationConfigId(workstationConfigId string) *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall { |
| c.urlParams_.Set("workstationConfigId", workstationConfigId) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.workstationconfig) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstationConfigs") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes the specified workstation configuration. |
| // |
| // - name: Name of the workstation configuration to delete. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) Delete(name string) *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Etag sets the optional parameter "etag": If set, the request is rejected if |
| // the latest version of the workstation configuration on the server does not |
| // have this ETag. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) Etag(etag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall { |
| c.urlParams_.Set("etag", etag) |
| return c |
| } |
| |
| // Force sets the optional parameter "force": If set, any workstations in the |
| // workstation configuration are also deleted. Otherwise, the request works |
| // only if the workstation configuration has no workstations. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) Force(force bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall { |
| c.urlParams_.Set("force", fmt.Sprint(force)) |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns the requested workstation configuration. |
| // |
| // - name: Name of the requested resource. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) Get(name string) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *WorkstationConfig.ServerResponse.Header or (if a response was returned at |
| // all) in error.(*googleapi.Error).Header. Use googleapi.IsNotModified to |
| // check whether the returned error was because http.StatusNotModified was |
| // returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetCall) Do(opts ...googleapi.CallOption) (*WorkstationConfig, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &WorkstationConfig{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall struct { |
| s *Service |
| resource string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // GetIamPolicy: Gets the access control policy for a resource. Returns an |
| // empty policy if the resource exists and does not have a policy set. |
| // |
| // - resource: REQUIRED: The resource for which the policy is being requested. |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) |
| // for the appropriate value for this field. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) GetIamPolicy(resource string) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.resource = resource |
| return c |
| } |
| |
| // OptionsRequestedPolicyVersion sets the optional parameter |
| // "options.requestedPolicyVersion": The maximum policy version that will be |
| // used to format the policy. Valid values are 0, 1, and 3. Requests specifying |
| // an invalid value will be rejected. Requests for policies with any |
| // conditional role bindings must specify version 3. Policies with no |
| // conditional role bindings may specify any valid value or leave the field |
| // unset. The policy in the response might use the policy version that you |
| // specified, or it might use a lower policy version. For example, if you |
| // specify version 3, but the policy has no conditional role bindings, the |
| // response uses version 1. To learn which resources support conditions in |
| // their IAM policies, see the IAM documentation |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall { |
| c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+resource}:getIamPolicy") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "resource": c.resource, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.getIamPolicy" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Policy{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsListCall struct { |
| s *Service |
| parent string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns all workstation configurations in the specified cluster. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) List(parent string) *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) PageSize(pageSize int64) *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": next_page_token value |
| // returned from a previous List request, if any. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) PageToken(pageToken string) *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstationConfigs") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListWorkstationConfigsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) Do(opts ...googleapi.CallOption) (*ListWorkstationConfigsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListWorkstationConfigsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListCall) Pages(ctx context.Context, f func(*ListWorkstationConfigsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall struct { |
| s *Service |
| parent string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // ListUsable: Returns all workstation configurations in the specified cluster |
| // on which the caller has the "workstations.workstation.create" permission. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) ListUsable(parent string) *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) PageSize(pageSize int64) *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": next_page_token value |
| // returned from a previous List request, if any. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) PageToken(pageToken string) *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstationConfigs:listUsable") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.listUsable" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListUsableWorkstationConfigsResponse.ServerResponse.Header or (if a |
| // response was returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) Do(opts ...googleapi.CallOption) (*ListUsableWorkstationConfigsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListUsableWorkstationConfigsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsListUsableCall) Pages(ctx context.Context, f func(*ListUsableWorkstationConfigsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall struct { |
| s *Service |
| name string |
| workstationconfig *WorkstationConfig |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates an existing workstation configuration. |
| // |
| // - name: Identifier. Full name of this workstation configuration. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) Patch(name string, workstationconfig *WorkstationConfig) *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.workstationconfig = workstationconfig |
| return c |
| } |
| |
| // AllowMissing sets the optional parameter "allowMissing": If set and the |
| // workstation configuration is not found, a new workstation configuration will |
| // be created. In this situation, update_mask is ignored. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) AllowMissing(allowMissing bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall { |
| c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing)) |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Required. Mask |
| // specifying which fields in the workstation configuration should be updated. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.workstationconfig) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall struct { |
| s *Service |
| resource string |
| setiampolicyrequest *SetIamPolicyRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // SetIamPolicy: Sets the access control policy on the specified resource. |
| // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, |
| // and `PERMISSION_DENIED` errors. |
| // |
| // - resource: REQUIRED: The resource for which the policy is being specified. |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) |
| // for the appropriate value for this field. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.resource = resource |
| c.setiampolicyrequest = setiampolicyrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+resource}:setIamPolicy") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "resource": c.resource, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.setIamPolicy" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Policy{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall struct { |
| s *Service |
| resource string |
| testiampermissionsrequest *TestIamPermissionsRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // TestIamPermissions: Returns permissions that a caller has on the specified |
| // resource. If the resource does not exist, this will return an empty set of |
| // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be |
| // used for building permission-aware UIs and command-line tools, not for |
| // authorization checking. This operation may "fail open" without warning. |
| // |
| // - resource: REQUIRED: The resource for which the policy detail is being |
| // requested. See Resource names |
| // (https://cloud.google.com/apis/design/resource_names) for the appropriate |
| // value for this field. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.resource = resource |
| c.testiampermissionsrequest = testiampermissionsrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+resource}:testIamPermissions") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "resource": c.resource, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.testIamPermissions" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &TestIamPermissionsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall struct { |
| s *Service |
| parent string |
| workstation *Workstation |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Create: Creates a new workstation. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) Create(parent string, workstation *Workstation) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| c.workstation = workstation |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // WorkstationId sets the optional parameter "workstationId": Required. ID to |
| // use for the workstation. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) WorkstationId(workstationId string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall { |
| c.urlParams_.Set("workstationId", workstationId) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.workstation) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.create" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsCreateCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Delete: Deletes the specified workstation. |
| // |
| // - name: Name of the workstation to delete. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) Delete(name string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Etag sets the optional parameter "etag": If set, the request will be |
| // rejected if the latest version of the workstation on the server does not |
| // have this ETag. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) Etag(etag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall { |
| c.urlParams_.Set("etag", etag) |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("DELETE", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.delete" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsDeleteCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall struct { |
| s *Service |
| workstation string |
| generateaccesstokenrequest *GenerateAccessTokenRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // GenerateAccessToken: Returns a short-lived credential that can be used to |
| // send authenticated and authorized traffic to a workstation. |
| // |
| // - workstation: Name of the workstation for which the access token should be |
| // generated. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) GenerateAccessToken(workstation string, generateaccesstokenrequest *GenerateAccessTokenRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.workstation = workstation |
| c.generateaccesstokenrequest = generateaccesstokenrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.generateaccesstokenrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+workstation}:generateAccessToken") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "workstation": c.workstation, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.generateAccessToken" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *GenerateAccessTokenResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGenerateAccessTokenCall) Do(opts ...googleapi.CallOption) (*GenerateAccessTokenResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &GenerateAccessTokenResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall struct { |
| s *Service |
| name string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Get: Returns the requested workstation. |
| // |
| // - name: Name of the requested resource. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) Get(name string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.get" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Workstation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetCall) Do(opts ...googleapi.CallOption) (*Workstation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Workstation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall struct { |
| s *Service |
| resource string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // GetIamPolicy: Gets the access control policy for a resource. Returns an |
| // empty policy if the resource exists and does not have a policy set. |
| // |
| // - resource: REQUIRED: The resource for which the policy is being requested. |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) |
| // for the appropriate value for this field. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) GetIamPolicy(resource string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.resource = resource |
| return c |
| } |
| |
| // OptionsRequestedPolicyVersion sets the optional parameter |
| // "options.requestedPolicyVersion": The maximum policy version that will be |
| // used to format the policy. Valid values are 0, 1, and 3. Requests specifying |
| // an invalid value will be rejected. Requests for policies with any |
| // conditional role bindings must specify version 3. Policies with no |
| // conditional role bindings may specify any valid value or leave the field |
| // unset. The policy in the response might use the policy version that you |
| // specified, or it might use a lower policy version. For example, if you |
| // specify version 3, but the policy has no conditional role bindings, the |
| // response uses version 1. To learn which resources support conditions in |
| // their IAM policies, see the IAM documentation |
| // (https://cloud.google.com/iam/help/conditions/resource-policies). |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) OptionsRequestedPolicyVersion(optionsRequestedPolicyVersion int64) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall { |
| c.urlParams_.Set("options.requestedPolicyVersion", fmt.Sprint(optionsRequestedPolicyVersion)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+resource}:getIamPolicy") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "resource": c.resource, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.getIamPolicy" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsGetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Policy{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall struct { |
| s *Service |
| parent string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // List: Returns all Workstations using the specified workstation |
| // configuration. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) List(parent string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) PageSize(pageSize int64) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": next_page_token value |
| // returned from a previous List request, if any. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) PageToken(pageToken string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstations") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.list" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListWorkstationsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) Do(opts ...googleapi.CallOption) (*ListWorkstationsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListWorkstationsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListCall) Pages(ctx context.Context, f func(*ListWorkstationsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall struct { |
| s *Service |
| parent string |
| urlParams_ gensupport.URLParams |
| ifNoneMatch_ string |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // ListUsable: Returns all workstations using the specified workstation |
| // configuration on which the caller has the "workstations.workstations.use" |
| // permission. |
| // |
| // - parent: Parent resource name. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) ListUsable(parent string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.parent = parent |
| return c |
| } |
| |
| // PageSize sets the optional parameter "pageSize": Maximum number of items to |
| // return. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) PageSize(pageSize int64) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall { |
| c.urlParams_.Set("pageSize", fmt.Sprint(pageSize)) |
| return c |
| } |
| |
| // PageToken sets the optional parameter "pageToken": next_page_token value |
| // returned from a previous List request, if any. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) PageToken(pageToken string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall { |
| c.urlParams_.Set("pageToken", pageToken) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // IfNoneMatch sets an optional parameter which makes the operation fail if the |
| // object's ETag matches the given value. This is useful for getting updates |
| // only after the object has changed since the last request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) IfNoneMatch(entityTag string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall { |
| c.ifNoneMatch_ = entityTag |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "", c.header_) |
| if c.ifNoneMatch_ != "" { |
| reqHeaders.Set("If-None-Match", c.ifNoneMatch_) |
| } |
| var body io.Reader = nil |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+parent}/workstations:listUsable") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("GET", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "parent": c.parent, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.listUsable" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *ListUsableWorkstationsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) Do(opts ...googleapi.CallOption) (*ListUsableWorkstationsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &ListUsableWorkstationsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| // Pages invokes f for each page of results. |
| // A non-nil error returned from f will halt the iteration. |
| // The provided context supersedes any context provided to the Context method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsListUsableCall) Pages(ctx context.Context, f func(*ListUsableWorkstationsResponse) error) error { |
| c.ctx_ = ctx |
| defer c.PageToken(c.urlParams_.Get("pageToken")) |
| for { |
| x, err := c.Do() |
| if err != nil { |
| return err |
| } |
| if err := f(x); err != nil { |
| return err |
| } |
| if x.NextPageToken == "" { |
| return nil |
| } |
| c.PageToken(x.NextPageToken) |
| } |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall struct { |
| s *Service |
| name string |
| workstation *Workstation |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Patch: Updates an existing workstation. |
| // |
| // - name: Identifier. Full name of this workstation. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) Patch(name string, workstation *Workstation) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.workstation = workstation |
| return c |
| } |
| |
| // AllowMissing sets the optional parameter "allowMissing": If set and the |
| // workstation configuration is not found, a new workstation configuration is |
| // created. In this situation, update_mask is ignored. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) AllowMissing(allowMissing bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall { |
| c.urlParams_.Set("allowMissing", fmt.Sprint(allowMissing)) |
| return c |
| } |
| |
| // UpdateMask sets the optional parameter "updateMask": Required. Mask |
| // specifying which fields in the workstation configuration should be updated. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) UpdateMask(updateMask string) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall { |
| c.urlParams_.Set("updateMask", updateMask) |
| return c |
| } |
| |
| // ValidateOnly sets the optional parameter "validateOnly": If set, validate |
| // the request and preview the review, but do not actually apply it. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) ValidateOnly(validateOnly bool) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall { |
| c.urlParams_.Set("validateOnly", fmt.Sprint(validateOnly)) |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.workstation) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("PATCH", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.patch" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsPatchCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall struct { |
| s *Service |
| resource string |
| setiampolicyrequest *SetIamPolicyRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // SetIamPolicy: Sets the access control policy on the specified resource. |
| // Replaces any existing policy. Can return `NOT_FOUND`, `INVALID_ARGUMENT`, |
| // and `PERMISSION_DENIED` errors. |
| // |
| // - resource: REQUIRED: The resource for which the policy is being specified. |
| // See Resource names (https://cloud.google.com/apis/design/resource_names) |
| // for the appropriate value for this field. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) SetIamPolicy(resource string, setiampolicyrequest *SetIamPolicyRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.resource = resource |
| c.setiampolicyrequest = setiampolicyrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.setiampolicyrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+resource}:setIamPolicy") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "resource": c.resource, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.setIamPolicy" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Policy.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsSetIamPolicyCall) Do(opts ...googleapi.CallOption) (*Policy, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Policy{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall struct { |
| s *Service |
| name string |
| startworkstationrequest *StartWorkstationRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Start: Starts running a workstation so that users can connect to it. |
| // |
| // - name: Name of the workstation to start. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) Start(name string, startworkstationrequest *StartWorkstationRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.startworkstationrequest = startworkstationrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.startworkstationrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:start") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.start" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStartCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall struct { |
| s *Service |
| name string |
| stopworkstationrequest *StopWorkstationRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // Stop: Stops running a workstation, reducing costs. |
| // |
| // - name: Name of the workstation to stop. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) Stop(name string, stopworkstationrequest *StopWorkstationRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.name = name |
| c.stopworkstationrequest = stopworkstationrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.stopworkstationrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+name}:stop") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "name": c.name, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.stop" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *Operation.ServerResponse.Header or (if a response was returned at all) in |
| // error.(*googleapi.Error).Header. Use googleapi.IsNotModified to check |
| // whether the returned error was because http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsStopCall) Do(opts ...googleapi.CallOption) (*Operation, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &Operation{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |
| |
| type ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall struct { |
| s *Service |
| resource string |
| testiampermissionsrequest *TestIamPermissionsRequest |
| urlParams_ gensupport.URLParams |
| ctx_ context.Context |
| header_ http.Header |
| } |
| |
| // TestIamPermissions: Returns permissions that a caller has on the specified |
| // resource. If the resource does not exist, this will return an empty set of |
| // permissions, not a `NOT_FOUND` error. Note: This operation is designed to be |
| // used for building permission-aware UIs and command-line tools, not for |
| // authorization checking. This operation may "fail open" without warning. |
| // |
| // - resource: REQUIRED: The resource for which the policy detail is being |
| // requested. See Resource names |
| // (https://cloud.google.com/apis/design/resource_names) for the appropriate |
| // value for this field. |
| func (r *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsService) TestIamPermissions(resource string, testiampermissionsrequest *TestIamPermissionsRequest) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall { |
| c := &ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall{s: r.s, urlParams_: make(gensupport.URLParams)} |
| c.resource = resource |
| c.testiampermissionsrequest = testiampermissionsrequest |
| return c |
| } |
| |
| // Fields allows partial responses to be retrieved. See |
| // https://developers.google.com/gdata/docs/2.0/basics#PartialResponse for more |
| // details. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall) Fields(s ...googleapi.Field) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall { |
| c.urlParams_.Set("fields", googleapi.CombineFields(s)) |
| return c |
| } |
| |
| // Context sets the context to be used in this call's Do method. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall) Context(ctx context.Context) *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall { |
| c.ctx_ = ctx |
| return c |
| } |
| |
| // Header returns a http.Header that can be modified by the caller to add |
| // headers to the request. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall) Header() http.Header { |
| if c.header_ == nil { |
| c.header_ = make(http.Header) |
| } |
| return c.header_ |
| } |
| |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall) doRequest(alt string) (*http.Response, error) { |
| reqHeaders := gensupport.SetHeaders(c.s.userAgent(), "application/json", c.header_) |
| var body io.Reader = nil |
| body, err := googleapi.WithoutDataWrapper.JSONReader(c.testiampermissionsrequest) |
| if err != nil { |
| return nil, err |
| } |
| c.urlParams_.Set("alt", alt) |
| c.urlParams_.Set("prettyPrint", "false") |
| urls := googleapi.ResolveRelative(c.s.BasePath, "v1beta/{+resource}:testIamPermissions") |
| urls += "?" + c.urlParams_.Encode() |
| req, err := http.NewRequest("POST", urls, body) |
| if err != nil { |
| return nil, err |
| } |
| req.Header = reqHeaders |
| googleapi.Expand(req.URL, map[string]string{ |
| "resource": c.resource, |
| }) |
| return gensupport.SendRequest(c.ctx_, c.s.client, req) |
| } |
| |
| // Do executes the "workstations.projects.locations.workstationClusters.workstationConfigs.workstations.testIamPermissions" call. |
| // Any non-2xx status code is an error. Response headers are in either |
| // *TestIamPermissionsResponse.ServerResponse.Header or (if a response was |
| // returned at all) in error.(*googleapi.Error).Header. Use |
| // googleapi.IsNotModified to check whether the returned error was because |
| // http.StatusNotModified was returned. |
| func (c *ProjectsLocationsWorkstationClustersWorkstationConfigsWorkstationsTestIamPermissionsCall) Do(opts ...googleapi.CallOption) (*TestIamPermissionsResponse, error) { |
| gensupport.SetOptions(c.urlParams_, opts...) |
| res, err := c.doRequest("json") |
| if res != nil && res.StatusCode == http.StatusNotModified { |
| if res.Body != nil { |
| res.Body.Close() |
| } |
| return nil, gensupport.WrapError(&googleapi.Error{ |
| Code: res.StatusCode, |
| Header: res.Header, |
| }) |
| } |
| if err != nil { |
| return nil, err |
| } |
| defer googleapi.CloseBody(res) |
| if err := googleapi.CheckResponse(res); err != nil { |
| return nil, gensupport.WrapError(err) |
| } |
| ret := &TestIamPermissionsResponse{ |
| ServerResponse: googleapi.ServerResponse{ |
| Header: res.Header, |
| HTTPStatusCode: res.StatusCode, |
| }, |
| } |
| target := &ret |
| if err := gensupport.DecodeResponse(target, res); err != nil { |
| return nil, err |
| } |
| return ret, nil |
| } |