workstation_clusters
Creates, updates, deletes, gets or lists a workstation_clusters resource.
Overview
| Name | workstation_clusters |
| Type | Resource |
| Id | google.workstations.workstation_clusters |
Fields
The following fields are returned by SELECT queries:
- get
- list
| Name | Datatype | Description |
|---|---|---|
name | string | Identifier. Full name of this workstation cluster. |
annotations | object | Optional. Client-specified annotations. |
conditions | array | Output only. Status conditions describing the workstation cluster's current state. |
controlPlaneIp | string | 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. |
createTime | string (google-datetime) | Output only. Time when this workstation cluster was created. |
degraded | boolean | Output only. Whether this workstation cluster is in degraded mode, in which case it may require user action to restore full functionality. The conditions field contains detailed information about the status of the cluster. |
deleteTime | string (google-datetime) | Output only. Time when this workstation cluster was soft-deleted. |
displayName | string | Optional. Human-readable name for this workstation cluster. |
domainConfig | object | Optional. Configuration options for a custom domain. (id: DomainConfig) |
etag | string | 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. |
gatewayConfig | object | Optional. Configuration options for Cluster HTTP Gateway. (id: GatewayConfig) |
labels | object | Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources. |
network | string | Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created. |
privateClusterConfig | object | Optional. Configuration for private workstation cluster. (id: PrivateClusterConfig) |
reconciling | boolean | Output only. Indicates whether this workstation cluster is currently being updated to match its intended state. |
subnetwork | string | 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. |
tags | object | Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" |
uid | string | Output only. A system-assigned unique identifier for this workstation cluster. |
updateTime | string (google-datetime) | Output only. Time when this workstation cluster was most recently updated. |
workstationAuthorizationUrl | string | Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded state query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using GenerateAccessToken and redirecting back to the original hostname with the token. |
workstationLaunchUrl | string | Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a workstation and project query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches STATE_RUNNING, and then issuing a redirect to the workstation's host URL. |
| Name | Datatype | Description |
|---|---|---|
name | string | Identifier. Full name of this workstation cluster. |
annotations | object | Optional. Client-specified annotations. |
conditions | array | Output only. Status conditions describing the workstation cluster's current state. |
controlPlaneIp | string | 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. |
createTime | string (google-datetime) | Output only. Time when this workstation cluster was created. |
degraded | boolean | Output only. Whether this workstation cluster is in degraded mode, in which case it may require user action to restore full functionality. The conditions field contains detailed information about the status of the cluster. |
deleteTime | string (google-datetime) | Output only. Time when this workstation cluster was soft-deleted. |
displayName | string | Optional. Human-readable name for this workstation cluster. |
domainConfig | object | Optional. Configuration options for a custom domain. (id: DomainConfig) |
etag | string | 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. |
gatewayConfig | object | Optional. Configuration options for Cluster HTTP Gateway. (id: GatewayConfig) |
labels | object | Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources. |
network | string | Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created. |
privateClusterConfig | object | Optional. Configuration for private workstation cluster. (id: PrivateClusterConfig) |
reconciling | boolean | Output only. Indicates whether this workstation cluster is currently being updated to match its intended state. |
subnetwork | string | 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. |
tags | object | Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing" |
uid | string | Output only. A system-assigned unique identifier for this workstation cluster. |
updateTime | string (google-datetime) | Output only. Time when this workstation cluster was most recently updated. |
workstationAuthorizationUrl | string | Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded state query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using GenerateAccessToken and redirecting back to the original hostname with the token. |
workstationLaunchUrl | string | Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a workstation and project query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches STATE_RUNNING, and then issuing a redirect to the workstation's host URL. |
Methods
The following methods are available for this resource:
| Name | Accessible by | Required Params | Optional Params | Description |
|---|---|---|---|---|
get | select | projectsId, locationsId, workstationClustersId | Returns the requested workstation cluster. | |
list | select | projectsId, locationsId | pageToken, filter, pageSize | Returns all workstation clusters in the specified location. |
create | insert | projectsId, locationsId | workstationClusterId, validateOnly | Creates a new workstation cluster. |
patch | update | projectsId, locationsId, workstationClustersId | updateMask, allowMissing, validateOnly | Updates an existing workstation cluster. |
delete | delete | projectsId, locationsId, workstationClustersId | force, validateOnly, etag | Deletes the specified workstation cluster. |
Parameters
Parameters can be passed in the WHERE clause of a query. Check the Methods section to see which parameters are required or optional for each operation.
| Name | Datatype | Description |
|---|---|---|
locationsId | string | |
projectsId | string | |
workstationClustersId | string | |
allowMissing | boolean | |
etag | string | |
filter | string | |
force | boolean | |
pageSize | integer (int32) | |
pageToken | string | |
updateMask | string (google-fieldmask) | |
validateOnly | boolean | |
workstationClusterId | string |
SELECT examples
- get
- list
Returns the requested workstation cluster.
SELECT
name,
annotations,
conditions,
controlPlaneIp,
createTime,
degraded,
deleteTime,
displayName,
domainConfig,
etag,
gatewayConfig,
labels,
network,
privateClusterConfig,
reconciling,
subnetwork,
tags,
uid,
updateTime,
workstationAuthorizationUrl,
workstationLaunchUrl
FROM google.workstations.workstation_clusters
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND workstationClustersId = '{{ workstationClustersId }}' -- required
;
Returns all workstation clusters in the specified location.
SELECT
name,
annotations,
conditions,
controlPlaneIp,
createTime,
degraded,
deleteTime,
displayName,
domainConfig,
etag,
gatewayConfig,
labels,
network,
privateClusterConfig,
reconciling,
subnetwork,
tags,
uid,
updateTime,
workstationAuthorizationUrl,
workstationLaunchUrl
FROM google.workstations.workstation_clusters
WHERE projectsId = '{{ projectsId }}' -- required
AND locationsId = '{{ locationsId }}' -- required
AND pageToken = '{{ pageToken }}'
AND filter = '{{ filter }}'
AND pageSize = '{{ pageSize }}'
;
INSERT examples
- create
- Manifest
Creates a new workstation cluster.
INSERT INTO google.workstations.workstation_clusters (
data__name,
data__tags,
data__workstationAuthorizationUrl,
data__etag,
data__privateClusterConfig,
data__workstationLaunchUrl,
data__labels,
data__subnetwork,
data__displayName,
data__domainConfig,
data__gatewayConfig,
data__network,
data__annotations,
projectsId,
locationsId,
workstationClusterId,
validateOnly
)
SELECT
'{{ name }}',
'{{ tags }}',
'{{ workstationAuthorizationUrl }}',
'{{ etag }}',
'{{ privateClusterConfig }}',
'{{ workstationLaunchUrl }}',
'{{ labels }}',
'{{ subnetwork }}',
'{{ displayName }}',
'{{ domainConfig }}',
'{{ gatewayConfig }}',
'{{ network }}',
'{{ annotations }}',
'{{ projectsId }}',
'{{ locationsId }}',
'{{ workstationClusterId }}',
'{{ validateOnly }}'
RETURNING
name,
done,
error,
metadata,
response
;
# Description fields are for documentation purposes
- name: workstation_clusters
props:
- name: projectsId
value: "{{ projectsId }}"
description: Required parameter for the workstation_clusters resource.
- name: locationsId
value: "{{ locationsId }}"
description: Required parameter for the workstation_clusters resource.
- name: name
value: "{{ name }}"
description: |
Identifier. Full name of this workstation cluster.
- name: tags
value: "{{ tags }}"
description: |
Optional. Input only. Immutable. Tag keys/values directly bound to this resource. For example: "123/environment": "production", "123/costCenter": "marketing"
- name: workstationAuthorizationUrl
value: "{{ workstationAuthorizationUrl }}"
description: |
Optional. Specifies the redirect URL for unauthorized requests received by workstation VMs in this cluster. Redirects to this endpoint will send a base64 encoded `state` query param containing the target workstation name and original request hostname. The endpoint is responsible for retrieving a token using `GenerateAccessToken` and redirecting back to the original hostname with the token.
- name: etag
value: "{{ etag }}"
description: |
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.
- name: privateClusterConfig
description: |
Optional. Configuration for private workstation cluster.
value:
enablePrivateEndpoint: {{ enablePrivateEndpoint }}
serviceAttachmentUri: "{{ serviceAttachmentUri }}"
clusterHostname: "{{ clusterHostname }}"
allowedProjects:
- "{{ allowedProjects }}"
- name: workstationLaunchUrl
value: "{{ workstationLaunchUrl }}"
description: |
Optional. Specifies the launch URL for workstations in this cluster. Requests sent to unstarted workstations will be redirected to this URL. Requests redirected to the launch endpoint will be sent with a `workstation` and `project` query parameter containing the full workstation resource name and project ID, respectively. The launch endpoint is responsible for starting the workstation, polling it until it reaches `STATE_RUNNING`, and then issuing a redirect to the workstation's host URL.
- name: labels
value: "{{ labels }}"
description: |
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.
- name: subnetwork
value: "{{ subnetwork }}"
description: |
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.
- name: displayName
value: "{{ displayName }}"
description: |
Optional. Human-readable name for this workstation cluster.
- name: domainConfig
description: |
Optional. Configuration options for a custom domain.
value:
domain: "{{ domain }}"
- name: gatewayConfig
description: |
Optional. Configuration options for Cluster HTTP Gateway.
value:
http2Enabled: {{ http2Enabled }}
- name: network
value: "{{ network }}"
description: |
Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- name: annotations
value: "{{ annotations }}"
description: |
Optional. Client-specified annotations.
- name: workstationClusterId
value: "{{ workstationClusterId }}"
- name: validateOnly
value: {{ validateOnly }}
UPDATE examples
- patch
Updates an existing workstation cluster.
UPDATE google.workstations.workstation_clusters
SET
data__name = '{{ name }}',
data__tags = '{{ tags }}',
data__workstationAuthorizationUrl = '{{ workstationAuthorizationUrl }}',
data__etag = '{{ etag }}',
data__privateClusterConfig = '{{ privateClusterConfig }}',
data__workstationLaunchUrl = '{{ workstationLaunchUrl }}',
data__labels = '{{ labels }}',
data__subnetwork = '{{ subnetwork }}',
data__displayName = '{{ displayName }}',
data__domainConfig = '{{ domainConfig }}',
data__gatewayConfig = '{{ gatewayConfig }}',
data__network = '{{ network }}',
data__annotations = '{{ annotations }}'
WHERE
projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND workstationClustersId = '{{ workstationClustersId }}' --required
AND updateMask = '{{ updateMask}}'
AND allowMissing = {{ allowMissing}}
AND validateOnly = {{ validateOnly}}
RETURNING
name,
done,
error,
metadata,
response;
DELETE examples
- delete
Deletes the specified workstation cluster.
DELETE FROM google.workstations.workstation_clusters
WHERE projectsId = '{{ projectsId }}' --required
AND locationsId = '{{ locationsId }}' --required
AND workstationClustersId = '{{ workstationClustersId }}' --required
AND force = '{{ force }}'
AND validateOnly = '{{ validateOnly }}'
AND etag = '{{ etag }}'
;