Interface WorkstationConfig.Host.GceInstanceOrBuilder

All Superinterfaces:
com.google.protobuf.MessageLiteOrBuilder, com.google.protobuf.MessageOrBuilder
All Known Implementing Classes:
WorkstationConfig.Host.GceInstance, WorkstationConfig.Host.GceInstance.Builder
Enclosing class:
WorkstationConfig.Host

public static interface WorkstationConfig.Host.GceInstanceOrBuilder extends com.google.protobuf.MessageOrBuilder
  • Method Details

    • getMachineType

      String getMachineType()
       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).
       
      string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The machineType.
    • getMachineTypeBytes

      com.google.protobuf.ByteString getMachineTypeBytes()
       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).
       
      string machine_type = 1 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The bytes for machineType.
    • getServiceAccount

      String getServiceAccount()
       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 `logginglogEntries.create` permission
       on the project so it can write logs out to Cloud Logging. If using a
       custom container image, the service account must have permissions 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.
       
      string service_account = 2 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The serviceAccount.
    • getServiceAccountBytes

      com.google.protobuf.ByteString getServiceAccountBytes()
       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 `logginglogEntries.create` permission
       on the project so it can write logs out to Cloud Logging. If using a
       custom container image, the service account must have permissions 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.
       
      string service_account = 2 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The bytes for serviceAccount.
    • getServiceAccountScopesList

      List<String> getServiceAccountScopesList()
       Optional. Scopes to grant to the
       [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
       Various scopes are automatically added based on feature usage. When
       specified, users of workstations under this configuration must have
       `iam.serviceAccounts.actAs` on the service account.
       
      repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      A list containing the serviceAccountScopes.
    • getServiceAccountScopesCount

      int getServiceAccountScopesCount()
       Optional. Scopes to grant to the
       [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
       Various scopes are automatically added based on feature usage. When
       specified, users of workstations under this configuration must have
       `iam.serviceAccounts.actAs` on the service account.
       
      repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The count of serviceAccountScopes.
    • getServiceAccountScopes

      String getServiceAccountScopes(int index)
       Optional. Scopes to grant to the
       [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
       Various scopes are automatically added based on feature usage. When
       specified, users of workstations under this configuration must have
       `iam.serviceAccounts.actAs` on the service account.
       
      repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL];
      Parameters:
      index - The index of the element to return.
      Returns:
      The serviceAccountScopes at the given index.
    • getServiceAccountScopesBytes

      com.google.protobuf.ByteString getServiceAccountScopesBytes(int index)
       Optional. Scopes to grant to the
       [service_account][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.service_account].
       Various scopes are automatically added based on feature usage. When
       specified, users of workstations under this configuration must have
       `iam.serviceAccounts.actAs` on the service account.
       
      repeated string service_account_scopes = 3 [(.google.api.field_behavior) = OPTIONAL];
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the serviceAccountScopes at the given index.
    • getTagsList

      List<String> getTagsList()
       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).
       
      repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      A list containing the tags.
    • getTagsCount

      int getTagsCount()
       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).
       
      repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The count of tags.
    • getTags

      String getTags(int index)
       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).
       
      repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL];
      Parameters:
      index - The index of the element to return.
      Returns:
      The tags at the given index.
    • getTagsBytes

      com.google.protobuf.ByteString getTagsBytes(int index)
       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).
       
      repeated string tags = 4 [(.google.api.field_behavior) = OPTIONAL];
      Parameters:
      index - The index of the value to return.
      Returns:
      The bytes of the tags at the given index.
    • getPoolSize

      int getPoolSize()
       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.
       
      int32 pool_size = 5 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The poolSize.
    • getPooledInstances

      int getPooledInstances()
       Output only. Number of instances currently available in the pool for
       faster workstation startup.
       
      int32 pooled_instances = 12 [(.google.api.field_behavior) = OUTPUT_ONLY];
      Returns:
      The pooledInstances.
    • getDisablePublicIpAddresses

      boolean getDisablePublicIpAddresses()
       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).
       
      bool disable_public_ip_addresses = 6 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The disablePublicIpAddresses.
    • getEnableNestedVirtualization

      boolean getEnableNestedVirtualization()
       Optional. Whether to enable nested virtualization on Cloud Workstations
       VMs created under 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][google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.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.
       
      bool enable_nested_virtualization = 7 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The enableNestedVirtualization.
    • hasShieldedInstanceConfig

      boolean hasShieldedInstanceConfig()
       Optional. A set of Compute Engine Shielded instance options.
       
      .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      Whether the shieldedInstanceConfig field is set.
    • getShieldedInstanceConfig

       Optional. A set of Compute Engine Shielded instance options.
       
      .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The shieldedInstanceConfig.
    • getShieldedInstanceConfigOrBuilder

       Optional. A set of Compute Engine Shielded instance options.
       
      .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceShieldedInstanceConfig shielded_instance_config = 8 [(.google.api.field_behavior) = OPTIONAL];
    • hasConfidentialInstanceConfig

      boolean hasConfidentialInstanceConfig()
       Optional. A set of Compute Engine Confidential VM instance options.
       
      .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      Whether the confidentialInstanceConfig field is set.
    • getConfidentialInstanceConfig

       Optional. A set of Compute Engine Confidential VM instance options.
       
      .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The confidentialInstanceConfig.
    • getConfidentialInstanceConfigOrBuilder

       Optional. A set of Compute Engine Confidential VM instance options.
       
      .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.GceConfidentialInstanceConfig confidential_instance_config = 10 [(.google.api.field_behavior) = OPTIONAL];
    • getBootDiskSizeGb

      int getBootDiskSizeGb()
       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.
       
      int32 boot_disk_size_gb = 9 [(.google.api.field_behavior) = OPTIONAL];
      Returns:
      The bootDiskSizeGb.
    • getAcceleratorsList

       Optional. A list of the type and count of accelerator cards attached to
       the instance.
       
      repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL];
    • getAccelerators

       Optional. A list of the type and count of accelerator cards attached to
       the instance.
       
      repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL];
    • getAcceleratorsCount

      int getAcceleratorsCount()
       Optional. A list of the type and count of accelerator cards attached to
       the instance.
       
      repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL];
    • getAcceleratorsOrBuilderList

      List<? extends WorkstationConfig.Host.GceInstance.AcceleratorOrBuilder> getAcceleratorsOrBuilderList()
       Optional. A list of the type and count of accelerator cards attached to
       the instance.
       
      repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL];
    • getAcceleratorsOrBuilder

      WorkstationConfig.Host.GceInstance.AcceleratorOrBuilder getAcceleratorsOrBuilder(int index)
       Optional. A list of the type and count of accelerator cards attached to
       the instance.
       
      repeated .google.cloud.workstations.v1beta.WorkstationConfig.Host.GceInstance.Accelerator accelerators = 11 [(.google.api.field_behavior) = OPTIONAL];