Google Cloud Native is in preview. Google Cloud Classic is fully supported.
google-native.workstations/v1.WorkstationCluster
Explore with Pulumi AI
Google Cloud Native is in preview. Google Cloud Classic is fully supported.
Creates a new workstation cluster.
Create WorkstationCluster Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new WorkstationCluster(name: string, args: WorkstationClusterArgs, opts?: CustomResourceOptions);
@overload
def WorkstationCluster(resource_name: str,
args: WorkstationClusterArgs,
opts: Optional[ResourceOptions] = None)
@overload
def WorkstationCluster(resource_name: str,
opts: Optional[ResourceOptions] = None,
workstation_cluster_id: Optional[str] = None,
annotations: Optional[Mapping[str, str]] = None,
display_name: Optional[str] = None,
etag: Optional[str] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
name: Optional[str] = None,
network: Optional[str] = None,
private_cluster_config: Optional[PrivateClusterConfigArgs] = None,
project: Optional[str] = None,
subnetwork: Optional[str] = None)
func NewWorkstationCluster(ctx *Context, name string, args WorkstationClusterArgs, opts ...ResourceOption) (*WorkstationCluster, error)
public WorkstationCluster(string name, WorkstationClusterArgs args, CustomResourceOptions? opts = null)
public WorkstationCluster(String name, WorkstationClusterArgs args)
public WorkstationCluster(String name, WorkstationClusterArgs args, CustomResourceOptions options)
type: google-native:workstations/v1:WorkstationCluster
properties: # The arguments to resource properties.
options: # Bag of options to control resource's behavior.
Parameters
- name string
- The unique name of the resource.
- args WorkstationClusterArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name str
- The unique name of the resource.
- args WorkstationClusterArgs
- The arguments to resource properties.
- opts ResourceOptions
- Bag of options to control resource's behavior.
- ctx Context
- Context object for the current deployment.
- name string
- The unique name of the resource.
- args WorkstationClusterArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args WorkstationClusterArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args WorkstationClusterArgs
- The arguments to resource properties.
- options CustomResourceOptions
- Bag of options to control resource's behavior.
Constructor example
The following reference example uses placeholder values for all input properties.
var workstationClusterResource = new GoogleNative.Workstations.V1.WorkstationCluster("workstationClusterResource", new()
{
WorkstationClusterId = "string",
Annotations =
{
{ "string", "string" },
},
DisplayName = "string",
Etag = "string",
Labels =
{
{ "string", "string" },
},
Location = "string",
Name = "string",
Network = "string",
PrivateClusterConfig = new GoogleNative.Workstations.V1.Inputs.PrivateClusterConfigArgs
{
AllowedProjects = new[]
{
"string",
},
EnablePrivateEndpoint = false,
},
Project = "string",
Subnetwork = "string",
});
example, err := workstations.NewWorkstationCluster(ctx, "workstationClusterResource", &workstations.WorkstationClusterArgs{
WorkstationClusterId: pulumi.String("string"),
Annotations: pulumi.StringMap{
"string": pulumi.String("string"),
},
DisplayName: pulumi.String("string"),
Etag: pulumi.String("string"),
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Location: pulumi.String("string"),
Name: pulumi.String("string"),
Network: pulumi.String("string"),
PrivateClusterConfig: &workstations.PrivateClusterConfigArgs{
AllowedProjects: pulumi.StringArray{
pulumi.String("string"),
},
EnablePrivateEndpoint: pulumi.Bool(false),
},
Project: pulumi.String("string"),
Subnetwork: pulumi.String("string"),
})
var workstationClusterResource = new WorkstationCluster("workstationClusterResource", WorkstationClusterArgs.builder()
.workstationClusterId("string")
.annotations(Map.of("string", "string"))
.displayName("string")
.etag("string")
.labels(Map.of("string", "string"))
.location("string")
.name("string")
.network("string")
.privateClusterConfig(PrivateClusterConfigArgs.builder()
.allowedProjects("string")
.enablePrivateEndpoint(false)
.build())
.project("string")
.subnetwork("string")
.build());
workstation_cluster_resource = google_native.workstations.v1.WorkstationCluster("workstationClusterResource",
workstation_cluster_id="string",
annotations={
"string": "string",
},
display_name="string",
etag="string",
labels={
"string": "string",
},
location="string",
name="string",
network="string",
private_cluster_config=google_native.workstations.v1.PrivateClusterConfigArgs(
allowed_projects=["string"],
enable_private_endpoint=False,
),
project="string",
subnetwork="string")
const workstationClusterResource = new google_native.workstations.v1.WorkstationCluster("workstationClusterResource", {
workstationClusterId: "string",
annotations: {
string: "string",
},
displayName: "string",
etag: "string",
labels: {
string: "string",
},
location: "string",
name: "string",
network: "string",
privateClusterConfig: {
allowedProjects: ["string"],
enablePrivateEndpoint: false,
},
project: "string",
subnetwork: "string",
});
type: google-native:workstations/v1:WorkstationCluster
properties:
annotations:
string: string
displayName: string
etag: string
labels:
string: string
location: string
name: string
network: string
privateClusterConfig:
allowedProjects:
- string
enablePrivateEndpoint: false
project: string
subnetwork: string
workstationClusterId: string
WorkstationCluster Resource Properties
To learn more about resource properties and how to use them, see Inputs and Outputs in the Architecture and Concepts docs.
Inputs
The WorkstationCluster resource accepts the following input properties:
- Workstation
Cluster stringId - Required. ID to use for the workstation cluster.
- Annotations Dictionary<string, string>
- Optional. Client-specified annotations.
- Display
Name string - Optional. Human-readable name for this workstation cluster.
- 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.
- Labels Dictionary<string, string>
- Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.
- Location string
- Name string
- Identifier. Full name of this workstation cluster.
- Network string
- Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- Private
Cluster Pulumi.Config Google Native. Workstations. V1. Inputs. Private Cluster Config - Optional. Configuration for private workstation cluster.
- Project string
- 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.
- Workstation
Cluster stringId - Required. ID to use for the workstation cluster.
- Annotations map[string]string
- Optional. Client-specified annotations.
- Display
Name string - Optional. Human-readable name for this workstation cluster.
- 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.
- Labels map[string]string
- Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.
- Location string
- Name string
- Identifier. Full name of this workstation cluster.
- Network string
- Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- Private
Cluster PrivateConfig Cluster Config Args - Optional. Configuration for private workstation cluster.
- Project string
- 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.
- workstation
Cluster StringId - Required. ID to use for the workstation cluster.
- annotations Map<String,String>
- Optional. Client-specified annotations.
- display
Name String - Optional. Human-readable name for this workstation cluster.
- 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.
- labels Map<String,String>
- Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.
- location String
- name String
- Identifier. Full name of this workstation cluster.
- network String
- Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- private
Cluster PrivateConfig Cluster Config - Optional. Configuration for private workstation cluster.
- project String
- 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.
- workstation
Cluster stringId - Required. ID to use for the workstation cluster.
- annotations {[key: string]: string}
- Optional. Client-specified annotations.
- display
Name string - Optional. Human-readable name for this workstation cluster.
- 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.
- labels {[key: string]: string}
- Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.
- location string
- name string
- Identifier. Full name of this workstation cluster.
- network string
- Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- private
Cluster PrivateConfig Cluster Config - Optional. Configuration for private workstation cluster.
- project string
- 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.
- workstation_
cluster_ strid - Required. ID to use for the workstation cluster.
- annotations Mapping[str, str]
- Optional. Client-specified annotations.
- display_
name str - Optional. Human-readable name for this workstation cluster.
- etag str
- 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.
- labels Mapping[str, str]
- Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.
- location str
- name str
- Identifier. Full name of this workstation cluster.
- network str
- Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- private_
cluster_ Privateconfig Cluster Config Args - Optional. Configuration for private workstation cluster.
- project str
- subnetwork str
- 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.
- workstation
Cluster StringId - Required. ID to use for the workstation cluster.
- annotations Map<String>
- Optional. Client-specified annotations.
- display
Name String - Optional. Human-readable name for this workstation cluster.
- 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.
- labels Map<String>
- Optional. Labels that are applied to the workstation cluster and that are also propagated to the underlying Compute Engine resources.
- location String
- name String
- Identifier. Full name of this workstation cluster.
- network String
- Immutable. Name of the Compute Engine network in which instances associated with this workstation cluster will be created.
- private
Cluster Property MapConfig - Optional. Configuration for private workstation cluster.
- project String
- 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.
Outputs
All input properties are implicitly available as output properties. Additionally, the WorkstationCluster resource produces the following output properties:
- Conditions
List<Pulumi.
Google Native. Workstations. V1. Outputs. Status Response> - Status conditions describing the workstation cluster's current state.
- Control
Plane stringIp - 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.
- Create
Time string - Time when this workstation cluster was created.
- Degraded bool
- 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.
- Delete
Time string - Time when this workstation cluster was soft-deleted.
- Id string
- The provider-assigned unique ID for this managed resource.
- Reconciling bool
- Indicates whether this workstation cluster is currently being updated to match its intended state.
- Uid string
- A system-assigned unique identifier for this workstation cluster.
- Update
Time string - Time when this workstation cluster was most recently updated.
- Conditions
[]Status
Response - Status conditions describing the workstation cluster's current state.
- Control
Plane stringIp - 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.
- Create
Time string - Time when this workstation cluster was created.
- Degraded bool
- 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.
- Delete
Time string - Time when this workstation cluster was soft-deleted.
- Id string
- The provider-assigned unique ID for this managed resource.
- Reconciling bool
- Indicates whether this workstation cluster is currently being updated to match its intended state.
- Uid string
- A system-assigned unique identifier for this workstation cluster.
- Update
Time string - Time when this workstation cluster was most recently updated.
- conditions
List<Status
Response> - Status conditions describing the workstation cluster's current state.
- control
Plane StringIp - 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.
- create
Time String - Time when this workstation cluster was created.
- degraded Boolean
- 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.
- delete
Time String - Time when this workstation cluster was soft-deleted.
- id String
- The provider-assigned unique ID for this managed resource.
- reconciling Boolean
- Indicates whether this workstation cluster is currently being updated to match its intended state.
- uid String
- A system-assigned unique identifier for this workstation cluster.
- update
Time String - Time when this workstation cluster was most recently updated.
- conditions
Status
Response[] - Status conditions describing the workstation cluster's current state.
- control
Plane stringIp - 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.
- create
Time string - Time when this workstation cluster was created.
- degraded boolean
- 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.
- delete
Time string - Time when this workstation cluster was soft-deleted.
- id string
- The provider-assigned unique ID for this managed resource.
- reconciling boolean
- Indicates whether this workstation cluster is currently being updated to match its intended state.
- uid string
- A system-assigned unique identifier for this workstation cluster.
- update
Time string - Time when this workstation cluster was most recently updated.
- conditions
Sequence[Status
Response] - Status conditions describing the workstation cluster's current state.
- control_
plane_ strip - 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.
- create_
time str - Time when this workstation cluster was created.
- degraded bool
- 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.
- delete_
time str - Time when this workstation cluster was soft-deleted.
- id str
- The provider-assigned unique ID for this managed resource.
- reconciling bool
- Indicates whether this workstation cluster is currently being updated to match its intended state.
- uid str
- A system-assigned unique identifier for this workstation cluster.
- update_
time str - Time when this workstation cluster was most recently updated.
- conditions List<Property Map>
- Status conditions describing the workstation cluster's current state.
- control
Plane StringIp - 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.
- create
Time String - Time when this workstation cluster was created.
- degraded Boolean
- 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.
- delete
Time String - Time when this workstation cluster was soft-deleted.
- id String
- The provider-assigned unique ID for this managed resource.
- reconciling Boolean
- Indicates whether this workstation cluster is currently being updated to match its intended state.
- uid String
- A system-assigned unique identifier for this workstation cluster.
- update
Time String - Time when this workstation cluster was most recently updated.
Supporting Types
PrivateClusterConfig, PrivateClusterConfigArgs
- Allowed
Projects List<string> - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- Enable
Private boolEndpoint - Immutable. Whether Workstations endpoint is private.
- Allowed
Projects []string - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- Enable
Private boolEndpoint - Immutable. Whether Workstations endpoint is private.
- allowed
Projects List<String> - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- enable
Private BooleanEndpoint - Immutable. Whether Workstations endpoint is private.
- allowed
Projects string[] - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- enable
Private booleanEndpoint - Immutable. Whether Workstations endpoint is private.
- allowed_
projects Sequence[str] - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- enable_
private_ boolendpoint - Immutable. Whether Workstations endpoint is private.
- allowed
Projects List<String> - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- enable
Private BooleanEndpoint - Immutable. Whether Workstations endpoint is private.
PrivateClusterConfigResponse, PrivateClusterConfigResponseArgs
- Allowed
Projects List<string> - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- Cluster
Hostname string - Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
- Enable
Private boolEndpoint - Immutable. Whether Workstations endpoint is private.
- Service
Attachment stringUri - Service attachment URI for the workstation cluster. The service attachemnt is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using Private Service Connect.
- Allowed
Projects []string - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- Cluster
Hostname string - Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
- Enable
Private boolEndpoint - Immutable. Whether Workstations endpoint is private.
- Service
Attachment stringUri - Service attachment URI for the workstation cluster. The service attachemnt is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using Private Service Connect.
- allowed
Projects List<String> - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- cluster
Hostname String - Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
- enable
Private BooleanEndpoint - Immutable. Whether Workstations endpoint is private.
- service
Attachment StringUri - Service attachment URI for the workstation cluster. The service attachemnt is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using Private Service Connect.
- allowed
Projects string[] - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- cluster
Hostname string - Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
- enable
Private booleanEndpoint - Immutable. Whether Workstations endpoint is private.
- service
Attachment stringUri - Service attachment URI for the workstation cluster. The service attachemnt is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using Private Service Connect.
- allowed_
projects Sequence[str] - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- cluster_
hostname str - Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
- enable_
private_ boolendpoint - Immutable. Whether Workstations endpoint is private.
- service_
attachment_ struri - Service attachment URI for the workstation cluster. The service attachemnt is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using Private Service Connect.
- allowed
Projects List<String> - Optional. Additional projects that are allowed to attach to the workstation cluster's service attachment. By default, the workstation cluster's project and the VPC host project (if different) are allowed.
- cluster
Hostname String - Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the workstation cluster, create a new DNS zone mapping this domain name to an internal IP address and a forwarding rule mapping that address to the service attachment.
- enable
Private BooleanEndpoint - Immutable. Whether Workstations endpoint is private.
- service
Attachment StringUri - Service attachment URI for the workstation cluster. The service attachemnt is created when private endpoint is enabled. To access workstations in the workstation cluster, configure access to the managed service using Private Service Connect.
StatusResponse, StatusResponseArgs
- Code int
- The status code, which should be an enum value of google.rpc.Code.
- Details
List<Immutable
Dictionary<string, string>> - A list of messages that carry the error details. There is a common set of message types for APIs to use.
- Message string
- 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.
- Code int
- The status code, which should be an enum value of google.rpc.Code.
- Details []map[string]string
- A list of messages that carry the error details. There is a common set of message types for APIs to use.
- Message string
- 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.
- code Integer
- The status code, which should be an enum value of google.rpc.Code.
- details List<Map<String,String>>
- A list of messages that carry the error details. There is a common set of message types for APIs to use.
- message String
- 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.
- code number
- The status code, which should be an enum value of google.rpc.Code.
- details {[key: string]: string}[]
- A list of messages that carry the error details. There is a common set of message types for APIs to use.
- message string
- 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.
- code int
- The status code, which should be an enum value of google.rpc.Code.
- details Sequence[Mapping[str, str]]
- A list of messages that carry the error details. There is a common set of message types for APIs to use.
- message str
- 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.
- code Number
- The status code, which should be an enum value of google.rpc.Code.
- details List<Map<String>>
- A list of messages that carry the error details. There is a common set of message types for APIs to use.
- message String
- 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.
Package Details
- Repository
- Google Cloud Native pulumi/pulumi-google-native
- License
- Apache-2.0
Google Cloud Native is in preview. Google Cloud Classic is fully supported.