gcp.workstations.WorkstationCluster
Explore with Pulumi AI
Example Usage
Workstation Cluster Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const defaultNetwork = new gcp.compute.Network("default", {
name: "workstation-cluster",
autoCreateSubnetworks: false,
});
const defaultSubnetwork = new gcp.compute.Subnetwork("default", {
name: "workstation-cluster",
ipCidrRange: "10.0.0.0/24",
region: "us-central1",
network: defaultNetwork.name,
});
const _default = new gcp.workstations.WorkstationCluster("default", {
workstationClusterId: "workstation-cluster",
network: defaultNetwork.id,
subnetwork: defaultSubnetwork.id,
location: "us-central1",
labels: {
label: "key",
},
annotations: {
"label-one": "value-one",
},
});
const project = gcp.organizations.getProject({});
import pulumi
import pulumi_gcp as gcp
default_network = gcp.compute.Network("default",
name="workstation-cluster",
auto_create_subnetworks=False)
default_subnetwork = gcp.compute.Subnetwork("default",
name="workstation-cluster",
ip_cidr_range="10.0.0.0/24",
region="us-central1",
network=default_network.name)
default = gcp.workstations.WorkstationCluster("default",
workstation_cluster_id="workstation-cluster",
network=default_network.id,
subnetwork=default_subnetwork.id,
location="us-central1",
labels={
"label": "key",
},
annotations={
"label-one": "value-one",
})
project = gcp.organizations.get_project()
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workstations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
defaultNetwork, err := compute.NewNetwork(ctx, "default", &compute.NetworkArgs{
Name: pulumi.String("workstation-cluster"),
AutoCreateSubnetworks: pulumi.Bool(false),
})
if err != nil {
return err
}
defaultSubnetwork, err := compute.NewSubnetwork(ctx, "default", &compute.SubnetworkArgs{
Name: pulumi.String("workstation-cluster"),
IpCidrRange: pulumi.String("10.0.0.0/24"),
Region: pulumi.String("us-central1"),
Network: defaultNetwork.Name,
})
if err != nil {
return err
}
_, err = workstations.NewWorkstationCluster(ctx, "default", &workstations.WorkstationClusterArgs{
WorkstationClusterId: pulumi.String("workstation-cluster"),
Network: defaultNetwork.ID(),
Subnetwork: defaultSubnetwork.ID(),
Location: pulumi.String("us-central1"),
Labels: pulumi.StringMap{
"label": pulumi.String("key"),
},
Annotations: pulumi.StringMap{
"label-one": pulumi.String("value-one"),
},
})
if err != nil {
return err
}
_, err = organizations.LookupProject(ctx, nil, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var defaultNetwork = new Gcp.Compute.Network("default", new()
{
Name = "workstation-cluster",
AutoCreateSubnetworks = false,
});
var defaultSubnetwork = new Gcp.Compute.Subnetwork("default", new()
{
Name = "workstation-cluster",
IpCidrRange = "10.0.0.0/24",
Region = "us-central1",
Network = defaultNetwork.Name,
});
var @default = new Gcp.Workstations.WorkstationCluster("default", new()
{
WorkstationClusterId = "workstation-cluster",
Network = defaultNetwork.Id,
Subnetwork = defaultSubnetwork.Id,
Location = "us-central1",
Labels =
{
{ "label", "key" },
},
Annotations =
{
{ "label-one", "value-one" },
},
});
var project = Gcp.Organizations.GetProject.Invoke();
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.workstations.WorkstationCluster;
import com.pulumi.gcp.workstations.WorkstationClusterArgs;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.name("workstation-cluster")
.autoCreateSubnetworks(false)
.build());
var defaultSubnetwork = new Subnetwork("defaultSubnetwork", SubnetworkArgs.builder()
.name("workstation-cluster")
.ipCidrRange("10.0.0.0/24")
.region("us-central1")
.network(defaultNetwork.name())
.build());
var default_ = new WorkstationCluster("default", WorkstationClusterArgs.builder()
.workstationClusterId("workstation-cluster")
.network(defaultNetwork.id())
.subnetwork(defaultSubnetwork.id())
.location("us-central1")
.labels(Map.of("label", "key"))
.annotations(Map.of("label-one", "value-one"))
.build());
final var project = OrganizationsFunctions.getProject();
}
}
resources:
default:
type: gcp:workstations:WorkstationCluster
properties:
workstationClusterId: workstation-cluster
network: ${defaultNetwork.id}
subnetwork: ${defaultSubnetwork.id}
location: us-central1
labels:
label: key
annotations:
label-one: value-one
defaultNetwork:
type: gcp:compute:Network
name: default
properties:
name: workstation-cluster
autoCreateSubnetworks: false
defaultSubnetwork:
type: gcp:compute:Subnetwork
name: default
properties:
name: workstation-cluster
ipCidrRange: 10.0.0.0/24
region: us-central1
network: ${defaultNetwork.name}
variables:
project:
fn::invoke:
Function: gcp:organizations:getProject
Arguments: {}
Workstation Cluster Private
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const defaultNetwork = new gcp.compute.Network("default", {
name: "workstation-cluster-private",
autoCreateSubnetworks: false,
});
const defaultSubnetwork = new gcp.compute.Subnetwork("default", {
name: "workstation-cluster-private",
ipCidrRange: "10.0.0.0/24",
region: "us-central1",
network: defaultNetwork.name,
});
const _default = new gcp.workstations.WorkstationCluster("default", {
workstationClusterId: "workstation-cluster-private",
network: defaultNetwork.id,
subnetwork: defaultSubnetwork.id,
location: "us-central1",
privateClusterConfig: {
enablePrivateEndpoint: true,
},
labels: {
label: "key",
},
annotations: {
"label-one": "value-one",
},
});
const project = gcp.organizations.getProject({});
import pulumi
import pulumi_gcp as gcp
default_network = gcp.compute.Network("default",
name="workstation-cluster-private",
auto_create_subnetworks=False)
default_subnetwork = gcp.compute.Subnetwork("default",
name="workstation-cluster-private",
ip_cidr_range="10.0.0.0/24",
region="us-central1",
network=default_network.name)
default = gcp.workstations.WorkstationCluster("default",
workstation_cluster_id="workstation-cluster-private",
network=default_network.id,
subnetwork=default_subnetwork.id,
location="us-central1",
private_cluster_config={
"enable_private_endpoint": True,
},
labels={
"label": "key",
},
annotations={
"label-one": "value-one",
})
project = gcp.organizations.get_project()
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workstations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
defaultNetwork, err := compute.NewNetwork(ctx, "default", &compute.NetworkArgs{
Name: pulumi.String("workstation-cluster-private"),
AutoCreateSubnetworks: pulumi.Bool(false),
})
if err != nil {
return err
}
defaultSubnetwork, err := compute.NewSubnetwork(ctx, "default", &compute.SubnetworkArgs{
Name: pulumi.String("workstation-cluster-private"),
IpCidrRange: pulumi.String("10.0.0.0/24"),
Region: pulumi.String("us-central1"),
Network: defaultNetwork.Name,
})
if err != nil {
return err
}
_, err = workstations.NewWorkstationCluster(ctx, "default", &workstations.WorkstationClusterArgs{
WorkstationClusterId: pulumi.String("workstation-cluster-private"),
Network: defaultNetwork.ID(),
Subnetwork: defaultSubnetwork.ID(),
Location: pulumi.String("us-central1"),
PrivateClusterConfig: &workstations.WorkstationClusterPrivateClusterConfigArgs{
EnablePrivateEndpoint: pulumi.Bool(true),
},
Labels: pulumi.StringMap{
"label": pulumi.String("key"),
},
Annotations: pulumi.StringMap{
"label-one": pulumi.String("value-one"),
},
})
if err != nil {
return err
}
_, err = organizations.LookupProject(ctx, nil, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var defaultNetwork = new Gcp.Compute.Network("default", new()
{
Name = "workstation-cluster-private",
AutoCreateSubnetworks = false,
});
var defaultSubnetwork = new Gcp.Compute.Subnetwork("default", new()
{
Name = "workstation-cluster-private",
IpCidrRange = "10.0.0.0/24",
Region = "us-central1",
Network = defaultNetwork.Name,
});
var @default = new Gcp.Workstations.WorkstationCluster("default", new()
{
WorkstationClusterId = "workstation-cluster-private",
Network = defaultNetwork.Id,
Subnetwork = defaultSubnetwork.Id,
Location = "us-central1",
PrivateClusterConfig = new Gcp.Workstations.Inputs.WorkstationClusterPrivateClusterConfigArgs
{
EnablePrivateEndpoint = true,
},
Labels =
{
{ "label", "key" },
},
Annotations =
{
{ "label-one", "value-one" },
},
});
var project = Gcp.Organizations.GetProject.Invoke();
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.workstations.WorkstationCluster;
import com.pulumi.gcp.workstations.WorkstationClusterArgs;
import com.pulumi.gcp.workstations.inputs.WorkstationClusterPrivateClusterConfigArgs;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.name("workstation-cluster-private")
.autoCreateSubnetworks(false)
.build());
var defaultSubnetwork = new Subnetwork("defaultSubnetwork", SubnetworkArgs.builder()
.name("workstation-cluster-private")
.ipCidrRange("10.0.0.0/24")
.region("us-central1")
.network(defaultNetwork.name())
.build());
var default_ = new WorkstationCluster("default", WorkstationClusterArgs.builder()
.workstationClusterId("workstation-cluster-private")
.network(defaultNetwork.id())
.subnetwork(defaultSubnetwork.id())
.location("us-central1")
.privateClusterConfig(WorkstationClusterPrivateClusterConfigArgs.builder()
.enablePrivateEndpoint(true)
.build())
.labels(Map.of("label", "key"))
.annotations(Map.of("label-one", "value-one"))
.build());
final var project = OrganizationsFunctions.getProject();
}
}
resources:
default:
type: gcp:workstations:WorkstationCluster
properties:
workstationClusterId: workstation-cluster-private
network: ${defaultNetwork.id}
subnetwork: ${defaultSubnetwork.id}
location: us-central1
privateClusterConfig:
enablePrivateEndpoint: true
labels:
label: key
annotations:
label-one: value-one
defaultNetwork:
type: gcp:compute:Network
name: default
properties:
name: workstation-cluster-private
autoCreateSubnetworks: false
defaultSubnetwork:
type: gcp:compute:Subnetwork
name: default
properties:
name: workstation-cluster-private
ipCidrRange: 10.0.0.0/24
region: us-central1
network: ${defaultNetwork.name}
variables:
project:
fn::invoke:
Function: gcp:organizations:getProject
Arguments: {}
Workstation Cluster Custom Domain
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const defaultNetwork = new gcp.compute.Network("default", {
name: "workstation-cluster-custom-domain",
autoCreateSubnetworks: false,
});
const defaultSubnetwork = new gcp.compute.Subnetwork("default", {
name: "workstation-cluster-custom-domain",
ipCidrRange: "10.0.0.0/24",
region: "us-central1",
network: defaultNetwork.name,
});
const _default = new gcp.workstations.WorkstationCluster("default", {
workstationClusterId: "workstation-cluster-custom-domain",
network: defaultNetwork.id,
subnetwork: defaultSubnetwork.id,
location: "us-central1",
privateClusterConfig: {
enablePrivateEndpoint: true,
},
domainConfig: {
domain: "workstations.example.com",
},
labels: {
label: "key",
},
annotations: {
"label-one": "value-one",
},
});
const project = gcp.organizations.getProject({});
import pulumi
import pulumi_gcp as gcp
default_network = gcp.compute.Network("default",
name="workstation-cluster-custom-domain",
auto_create_subnetworks=False)
default_subnetwork = gcp.compute.Subnetwork("default",
name="workstation-cluster-custom-domain",
ip_cidr_range="10.0.0.0/24",
region="us-central1",
network=default_network.name)
default = gcp.workstations.WorkstationCluster("default",
workstation_cluster_id="workstation-cluster-custom-domain",
network=default_network.id,
subnetwork=default_subnetwork.id,
location="us-central1",
private_cluster_config={
"enable_private_endpoint": True,
},
domain_config={
"domain": "workstations.example.com",
},
labels={
"label": "key",
},
annotations={
"label-one": "value-one",
})
project = gcp.organizations.get_project()
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/organizations"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workstations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
defaultNetwork, err := compute.NewNetwork(ctx, "default", &compute.NetworkArgs{
Name: pulumi.String("workstation-cluster-custom-domain"),
AutoCreateSubnetworks: pulumi.Bool(false),
})
if err != nil {
return err
}
defaultSubnetwork, err := compute.NewSubnetwork(ctx, "default", &compute.SubnetworkArgs{
Name: pulumi.String("workstation-cluster-custom-domain"),
IpCidrRange: pulumi.String("10.0.0.0/24"),
Region: pulumi.String("us-central1"),
Network: defaultNetwork.Name,
})
if err != nil {
return err
}
_, err = workstations.NewWorkstationCluster(ctx, "default", &workstations.WorkstationClusterArgs{
WorkstationClusterId: pulumi.String("workstation-cluster-custom-domain"),
Network: defaultNetwork.ID(),
Subnetwork: defaultSubnetwork.ID(),
Location: pulumi.String("us-central1"),
PrivateClusterConfig: &workstations.WorkstationClusterPrivateClusterConfigArgs{
EnablePrivateEndpoint: pulumi.Bool(true),
},
DomainConfig: &workstations.WorkstationClusterDomainConfigArgs{
Domain: pulumi.String("workstations.example.com"),
},
Labels: pulumi.StringMap{
"label": pulumi.String("key"),
},
Annotations: pulumi.StringMap{
"label-one": pulumi.String("value-one"),
},
})
if err != nil {
return err
}
_, err = organizations.LookupProject(ctx, nil, nil)
if err != nil {
return err
}
return nil
})
}
using System.Collections.Generic;
using System.Linq;
using Pulumi;
using Gcp = Pulumi.Gcp;
return await Deployment.RunAsync(() =>
{
var defaultNetwork = new Gcp.Compute.Network("default", new()
{
Name = "workstation-cluster-custom-domain",
AutoCreateSubnetworks = false,
});
var defaultSubnetwork = new Gcp.Compute.Subnetwork("default", new()
{
Name = "workstation-cluster-custom-domain",
IpCidrRange = "10.0.0.0/24",
Region = "us-central1",
Network = defaultNetwork.Name,
});
var @default = new Gcp.Workstations.WorkstationCluster("default", new()
{
WorkstationClusterId = "workstation-cluster-custom-domain",
Network = defaultNetwork.Id,
Subnetwork = defaultSubnetwork.Id,
Location = "us-central1",
PrivateClusterConfig = new Gcp.Workstations.Inputs.WorkstationClusterPrivateClusterConfigArgs
{
EnablePrivateEndpoint = true,
},
DomainConfig = new Gcp.Workstations.Inputs.WorkstationClusterDomainConfigArgs
{
Domain = "workstations.example.com",
},
Labels =
{
{ "label", "key" },
},
Annotations =
{
{ "label-one", "value-one" },
},
});
var project = Gcp.Organizations.GetProject.Invoke();
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.compute.Network;
import com.pulumi.gcp.compute.NetworkArgs;
import com.pulumi.gcp.compute.Subnetwork;
import com.pulumi.gcp.compute.SubnetworkArgs;
import com.pulumi.gcp.workstations.WorkstationCluster;
import com.pulumi.gcp.workstations.WorkstationClusterArgs;
import com.pulumi.gcp.workstations.inputs.WorkstationClusterPrivateClusterConfigArgs;
import com.pulumi.gcp.workstations.inputs.WorkstationClusterDomainConfigArgs;
import com.pulumi.gcp.organizations.OrganizationsFunctions;
import com.pulumi.gcp.organizations.inputs.GetProjectArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var defaultNetwork = new Network("defaultNetwork", NetworkArgs.builder()
.name("workstation-cluster-custom-domain")
.autoCreateSubnetworks(false)
.build());
var defaultSubnetwork = new Subnetwork("defaultSubnetwork", SubnetworkArgs.builder()
.name("workstation-cluster-custom-domain")
.ipCidrRange("10.0.0.0/24")
.region("us-central1")
.network(defaultNetwork.name())
.build());
var default_ = new WorkstationCluster("default", WorkstationClusterArgs.builder()
.workstationClusterId("workstation-cluster-custom-domain")
.network(defaultNetwork.id())
.subnetwork(defaultSubnetwork.id())
.location("us-central1")
.privateClusterConfig(WorkstationClusterPrivateClusterConfigArgs.builder()
.enablePrivateEndpoint(true)
.build())
.domainConfig(WorkstationClusterDomainConfigArgs.builder()
.domain("workstations.example.com")
.build())
.labels(Map.of("label", "key"))
.annotations(Map.of("label-one", "value-one"))
.build());
final var project = OrganizationsFunctions.getProject();
}
}
resources:
default:
type: gcp:workstations:WorkstationCluster
properties:
workstationClusterId: workstation-cluster-custom-domain
network: ${defaultNetwork.id}
subnetwork: ${defaultSubnetwork.id}
location: us-central1
privateClusterConfig:
enablePrivateEndpoint: true
domainConfig:
domain: workstations.example.com
labels:
label: key
annotations:
label-one: value-one
defaultNetwork:
type: gcp:compute:Network
name: default
properties:
name: workstation-cluster-custom-domain
autoCreateSubnetworks: false
defaultSubnetwork:
type: gcp:compute:Subnetwork
name: default
properties:
name: workstation-cluster-custom-domain
ipCidrRange: 10.0.0.0/24
region: us-central1
network: ${defaultNetwork.name}
variables:
project:
fn::invoke:
Function: gcp:organizations:getProject
Arguments: {}
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,
network: Optional[str] = None,
subnetwork: Optional[str] = None,
workstation_cluster_id: Optional[str] = None,
annotations: Optional[Mapping[str, str]] = None,
display_name: Optional[str] = None,
domain_config: Optional[WorkstationClusterDomainConfigArgs] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
private_cluster_config: Optional[WorkstationClusterPrivateClusterConfigArgs] = None,
project: 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: gcp:workstations: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 Gcp.Workstations.WorkstationCluster("workstationClusterResource", new()
{
Network = "string",
Subnetwork = "string",
WorkstationClusterId = "string",
Annotations =
{
{ "string", "string" },
},
DisplayName = "string",
DomainConfig = new Gcp.Workstations.Inputs.WorkstationClusterDomainConfigArgs
{
Domain = "string",
},
Labels =
{
{ "string", "string" },
},
Location = "string",
PrivateClusterConfig = new Gcp.Workstations.Inputs.WorkstationClusterPrivateClusterConfigArgs
{
EnablePrivateEndpoint = false,
AllowedProjects = new[]
{
"string",
},
ClusterHostname = "string",
ServiceAttachmentUri = "string",
},
Project = "string",
});
example, err := workstations.NewWorkstationCluster(ctx, "workstationClusterResource", &workstations.WorkstationClusterArgs{
Network: pulumi.String("string"),
Subnetwork: pulumi.String("string"),
WorkstationClusterId: pulumi.String("string"),
Annotations: pulumi.StringMap{
"string": pulumi.String("string"),
},
DisplayName: pulumi.String("string"),
DomainConfig: &workstations.WorkstationClusterDomainConfigArgs{
Domain: pulumi.String("string"),
},
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Location: pulumi.String("string"),
PrivateClusterConfig: &workstations.WorkstationClusterPrivateClusterConfigArgs{
EnablePrivateEndpoint: pulumi.Bool(false),
AllowedProjects: pulumi.StringArray{
pulumi.String("string"),
},
ClusterHostname: pulumi.String("string"),
ServiceAttachmentUri: pulumi.String("string"),
},
Project: pulumi.String("string"),
})
var workstationClusterResource = new WorkstationCluster("workstationClusterResource", WorkstationClusterArgs.builder()
.network("string")
.subnetwork("string")
.workstationClusterId("string")
.annotations(Map.of("string", "string"))
.displayName("string")
.domainConfig(WorkstationClusterDomainConfigArgs.builder()
.domain("string")
.build())
.labels(Map.of("string", "string"))
.location("string")
.privateClusterConfig(WorkstationClusterPrivateClusterConfigArgs.builder()
.enablePrivateEndpoint(false)
.allowedProjects("string")
.clusterHostname("string")
.serviceAttachmentUri("string")
.build())
.project("string")
.build());
workstation_cluster_resource = gcp.workstations.WorkstationCluster("workstationClusterResource",
network="string",
subnetwork="string",
workstation_cluster_id="string",
annotations={
"string": "string",
},
display_name="string",
domain_config={
"domain": "string",
},
labels={
"string": "string",
},
location="string",
private_cluster_config={
"enablePrivateEndpoint": False,
"allowedProjects": ["string"],
"clusterHostname": "string",
"serviceAttachmentUri": "string",
},
project="string")
const workstationClusterResource = new gcp.workstations.WorkstationCluster("workstationClusterResource", {
network: "string",
subnetwork: "string",
workstationClusterId: "string",
annotations: {
string: "string",
},
displayName: "string",
domainConfig: {
domain: "string",
},
labels: {
string: "string",
},
location: "string",
privateClusterConfig: {
enablePrivateEndpoint: false,
allowedProjects: ["string"],
clusterHostname: "string",
serviceAttachmentUri: "string",
},
project: "string",
});
type: gcp:workstations:WorkstationCluster
properties:
annotations:
string: string
displayName: string
domainConfig:
domain: string
labels:
string: string
location: string
network: string
privateClusterConfig:
allowedProjects:
- string
clusterHostname: string
enablePrivateEndpoint: false
serviceAttachmentUri: string
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:
- Network string
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- Subnetwork string
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- Workstation
Cluster stringId - ID to use for the workstation cluster.
- Annotations Dictionary<string, string>
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - Display
Name string - Human-readable name for this resource.
- Domain
Config WorkstationCluster Domain Config - Configuration options for a custom domain. Structure is documented below.
- Labels Dictionary<string, string>
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - Location string
- The location where the workstation cluster should reside.
- Private
Cluster WorkstationConfig Cluster Private Cluster Config - Configuration for private cluster. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Network string
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- Subnetwork string
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- Workstation
Cluster stringId - ID to use for the workstation cluster.
- Annotations map[string]string
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - Display
Name string - Human-readable name for this resource.
- Domain
Config WorkstationCluster Domain Config Args - Configuration options for a custom domain. Structure is documented below.
- Labels map[string]string
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - Location string
- The location where the workstation cluster should reside.
- Private
Cluster WorkstationConfig Cluster Private Cluster Config Args - Configuration for private cluster. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- network String
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- subnetwork String
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- workstation
Cluster StringId - ID to use for the workstation cluster.
- annotations Map<String,String>
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - display
Name String - Human-readable name for this resource.
- domain
Config WorkstationCluster Domain Config - Configuration options for a custom domain. Structure is documented below.
- labels Map<String,String>
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location String
- The location where the workstation cluster should reside.
- private
Cluster WorkstationConfig Cluster Private Cluster Config - Configuration for private cluster. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- network string
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- subnetwork string
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- workstation
Cluster stringId - ID to use for the workstation cluster.
- annotations {[key: string]: string}
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - display
Name string - Human-readable name for this resource.
- domain
Config WorkstationCluster Domain Config - Configuration options for a custom domain. Structure is documented below.
- labels {[key: string]: string}
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location string
- The location where the workstation cluster should reside.
- private
Cluster WorkstationConfig Cluster Private Cluster Config - Configuration for private cluster. Structure is documented below.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- network str
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- subnetwork str
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- workstation_
cluster_ strid - ID to use for the workstation cluster.
- annotations Mapping[str, str]
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - display_
name str - Human-readable name for this resource.
- domain_
config WorkstationCluster Domain Config Args - Configuration options for a custom domain. Structure is documented below.
- labels Mapping[str, str]
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location str
- The location where the workstation cluster should reside.
- private_
cluster_ Workstationconfig Cluster Private Cluster Config Args - Configuration for private cluster. Structure is documented below.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- network String
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- subnetwork String
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- workstation
Cluster StringId - ID to use for the workstation cluster.
- annotations Map<String>
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - display
Name String - Human-readable name for this resource.
- domain
Config Property Map - Configuration options for a custom domain. Structure is documented below.
- labels Map<String>
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location String
- The location where the workstation cluster should reside.
- private
Cluster Property MapConfig - Configuration for private cluster. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
Outputs
All input properties are implicitly available as output properties. Additionally, the WorkstationCluster resource produces the following output properties:
- Conditions
List<Workstation
Cluster Condition> - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- Degraded bool
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- Effective
Annotations Dictionary<string, string> - Effective
Labels Dictionary<string, string> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- The name of the cluster resource.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Uid string
- The system-generated UID of the resource.
- Conditions
[]Workstation
Cluster Condition - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- Degraded bool
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- Effective
Annotations map[string]string - Effective
Labels map[string]string - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- Id string
- The provider-assigned unique ID for this managed resource.
- Name string
- The name of the cluster resource.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- Uid string
- The system-generated UID of the resource.
- conditions
List<Workstation
Cluster Condition> - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded Boolean
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- effective
Annotations Map<String,String> - effective
Labels Map<String,String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- The name of the cluster resource.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- uid String
- The system-generated UID of the resource.
- conditions
Workstation
Cluster Condition[] - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded boolean
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- effective
Annotations {[key: string]: string} - effective
Labels {[key: string]: string} - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag string
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- id string
- The provider-assigned unique ID for this managed resource.
- name string
- The name of the cluster resource.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- uid string
- The system-generated UID of the resource.
- conditions
Sequence[Workstation
Cluster Condition] - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded bool
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- effective_
annotations Mapping[str, str] - effective_
labels Mapping[str, str] - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag str
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- id str
- The provider-assigned unique ID for this managed resource.
- name str
- The name of the cluster resource.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- uid str
- The system-generated UID of the resource.
- conditions List<Property Map>
- Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded Boolean
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- effective
Annotations Map<String> - effective
Labels Map<String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- id String
- The provider-assigned unique ID for this managed resource.
- name String
- The name of the cluster resource.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- uid String
- The system-generated UID of the resource.
Look up Existing WorkstationCluster Resource
Get an existing WorkstationCluster resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.
public static get(name: string, id: Input<ID>, state?: WorkstationClusterState, opts?: CustomResourceOptions): WorkstationCluster
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
annotations: Optional[Mapping[str, str]] = None,
conditions: Optional[Sequence[WorkstationClusterConditionArgs]] = None,
control_plane_ip: Optional[str] = None,
create_time: Optional[str] = None,
degraded: Optional[bool] = None,
display_name: Optional[str] = None,
domain_config: Optional[WorkstationClusterDomainConfigArgs] = None,
effective_annotations: Optional[Mapping[str, str]] = None,
effective_labels: Optional[Mapping[str, 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[WorkstationClusterPrivateClusterConfigArgs] = None,
project: Optional[str] = None,
pulumi_labels: Optional[Mapping[str, str]] = None,
subnetwork: Optional[str] = None,
uid: Optional[str] = None,
workstation_cluster_id: Optional[str] = None) -> WorkstationCluster
func GetWorkstationCluster(ctx *Context, name string, id IDInput, state *WorkstationClusterState, opts ...ResourceOption) (*WorkstationCluster, error)
public static WorkstationCluster Get(string name, Input<string> id, WorkstationClusterState? state, CustomResourceOptions? opts = null)
public static WorkstationCluster get(String name, Output<String> id, WorkstationClusterState state, CustomResourceOptions options)
Resource lookup is not supported in YAML
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- resource_name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- name
- The unique name of the resulting resource.
- id
- The unique provider ID of the resource to lookup.
- state
- Any extra arguments used during the lookup.
- opts
- A bag of options that control this resource's behavior.
- Annotations Dictionary<string, string>
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - Conditions
List<Workstation
Cluster Condition> - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- Degraded bool
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- Display
Name string - Human-readable name for this resource.
- Domain
Config WorkstationCluster Domain Config - Configuration options for a custom domain. Structure is documented below.
- Effective
Annotations Dictionary<string, string> - Effective
Labels Dictionary<string, string> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- Labels Dictionary<string, string>
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - Location string
- The location where the workstation cluster should reside.
- Name string
- The name of the cluster resource.
- Network string
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- Private
Cluster WorkstationConfig Cluster Private Cluster Config - Configuration for private cluster. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- Subnetwork string
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- Uid string
- The system-generated UID of the resource.
- Workstation
Cluster stringId - ID to use for the workstation cluster.
- Annotations map[string]string
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - Conditions
[]Workstation
Cluster Condition Args - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- Degraded bool
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- Display
Name string - Human-readable name for this resource.
- Domain
Config WorkstationCluster Domain Config Args - Configuration options for a custom domain. Structure is documented below.
- Effective
Annotations map[string]string - Effective
Labels map[string]string - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- Etag string
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- Labels map[string]string
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - Location string
- The location where the workstation cluster should reside.
- Name string
- The name of the cluster resource.
- Network string
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- Private
Cluster WorkstationConfig Cluster Private Cluster Config Args - Configuration for private cluster. Structure is documented below.
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- Subnetwork string
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- Uid string
- The system-generated UID of the resource.
- Workstation
Cluster stringId - ID to use for the workstation cluster.
- annotations Map<String,String>
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - conditions
List<Workstation
Cluster Condition> - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded Boolean
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- display
Name String - Human-readable name for this resource.
- domain
Config WorkstationCluster Domain Config - Configuration options for a custom domain. Structure is documented below.
- effective
Annotations Map<String,String> - effective
Labels Map<String,String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- labels Map<String,String>
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location String
- The location where the workstation cluster should reside.
- name String
- The name of the cluster resource.
- network String
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- private
Cluster WorkstationConfig Cluster Private Cluster Config - Configuration for private cluster. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- subnetwork String
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- uid String
- The system-generated UID of the resource.
- workstation
Cluster StringId - ID to use for the workstation cluster.
- annotations {[key: string]: string}
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - conditions
Workstation
Cluster Condition[] - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded boolean
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- display
Name string - Human-readable name for this resource.
- domain
Config WorkstationCluster Domain Config - Configuration options for a custom domain. Structure is documented below.
- effective
Annotations {[key: string]: string} - effective
Labels {[key: string]: string} - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag string
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- labels {[key: string]: string}
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location string
- The location where the workstation cluster should reside.
- name string
- The name of the cluster resource.
- network string
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- private
Cluster WorkstationConfig Cluster Private Cluster Config - Configuration for private cluster. Structure is documented below.
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- subnetwork string
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- uid string
- The system-generated UID of the resource.
- workstation
Cluster stringId - ID to use for the workstation cluster.
- annotations Mapping[str, str]
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - conditions
Sequence[Workstation
Cluster Condition Args] - Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded bool
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- display_
name str - Human-readable name for this resource.
- domain_
config WorkstationCluster Domain Config Args - Configuration options for a custom domain. Structure is documented below.
- effective_
annotations Mapping[str, str] - effective_
labels Mapping[str, str] - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag str
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- labels Mapping[str, str]
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location str
- The location where the workstation cluster should reside.
- name str
- The name of the cluster resource.
- network str
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- private_
cluster_ Workstationconfig Cluster Private Cluster Config Args - Configuration for private cluster. Structure is documented below.
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- subnetwork str
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- uid str
- The system-generated UID of the resource.
- workstation_
cluster_ strid - ID to use for the workstation cluster.
- annotations Map<String>
- Client-specified annotations. This is distinct from labels.
Note: This field is non-authoritative, and will only manage the annotations present in your configuration.
Please refer to the field
effective_annotations
for all of the annotations present on the resource. - conditions List<Property Map>
- Status conditions describing the current resource state. Structure is documented below.
- 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 resource was created.
- degraded Boolean
- Whether this resource is in degraded mode, in which case it may require user action to restore full functionality. Details can be found in the conditions field.
- display
Name String - Human-readable name for this resource.
- domain
Config Property Map - Configuration options for a custom domain. Structure is documented below.
- effective
Annotations Map<String> - effective
Labels Map<String> - All of labels (key/value pairs) present on the resource in GCP, including the labels configured through Pulumi, other clients and services.
- etag String
- Checksum computed by the server. May be sent on update and delete requests to ensure that the client has an up-to-date value before proceeding.
- labels Map<String>
- Client-specified labels that are applied to the resource and that are also propagated to the underlying Compute Engine resources.
Note: This field is non-authoritative, and will only manage the labels present in your configuration.
Please refer to the field
effective_labels
for all of the labels present on the resource. - location String
- The location where the workstation cluster should reside.
- name String
- The name of the cluster resource.
- network String
- The relative resource name of the VPC network on which the instance can be accessed. It is specified in the following form: "projects/{projectNumber}/global/networks/{network_id}".
- private
Cluster Property MapConfig - Configuration for private cluster. Structure is documented below.
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- subnetwork String
- Name of the Compute Engine subnetwork in which instances associated with this cluster will be created. Must be part of the subnetwork specified for this cluster.
- uid String
- The system-generated UID of the resource.
- workstation
Cluster StringId - ID to use for the workstation cluster.
Supporting Types
WorkstationClusterCondition, WorkstationClusterConditionArgs
WorkstationClusterDomainConfig, WorkstationClusterDomainConfigArgs
- Domain string
- Domain used by Workstations for HTTP ingress.
- Domain string
- Domain used by Workstations for HTTP ingress.
- domain String
- Domain used by Workstations for HTTP ingress.
- domain string
- Domain used by Workstations for HTTP ingress.
- domain str
- Domain used by Workstations for HTTP ingress.
- domain String
- Domain used by Workstations for HTTP ingress.
WorkstationClusterPrivateClusterConfig, WorkstationClusterPrivateClusterConfigArgs
- Enable
Private boolEndpoint - Whether Workstations endpoint is private.
- Allowed
Projects List<string> - Additional project IDs 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 - (Output) Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the 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.
- Service
Attachment stringUri - (Output) Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
- Enable
Private boolEndpoint - Whether Workstations endpoint is private.
- Allowed
Projects []string - Additional project IDs 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 - (Output) Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the 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.
- Service
Attachment stringUri - (Output) Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
- enable
Private BooleanEndpoint - Whether Workstations endpoint is private.
- allowed
Projects List<String> - Additional project IDs 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 - (Output) Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the 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.
- service
Attachment StringUri - (Output) Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
- enable
Private booleanEndpoint - Whether Workstations endpoint is private.
- allowed
Projects string[] - Additional project IDs 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 - (Output) Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the 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.
- service
Attachment stringUri - (Output) Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
- enable_
private_ boolendpoint - Whether Workstations endpoint is private.
- allowed_
projects Sequence[str] - Additional project IDs 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 - (Output) Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the 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.
- service_
attachment_ struri - (Output) Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
- enable
Private BooleanEndpoint - Whether Workstations endpoint is private.
- allowed
Projects List<String> - Additional project IDs 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 - (Output) Hostname for the workstation cluster. This field will be populated only when private endpoint is enabled. To access workstations in the 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.
- service
Attachment StringUri - (Output) Service attachment URI for the workstation cluster. The service attachment is created when private endpoint is enabled. To access workstations in the cluster, configure access to the managed service using (Private Service Connect)[https://cloud.google.com/vpc/docs/configure-private-service-connect-services].
Import
WorkstationCluster can be imported using any of these accepted formats:
projects/{{project}}/locations/{{location}}/workstationClusters/{{workstation_cluster_id}}
{{project}}/{{location}}/{{workstation_cluster_id}}
{{location}}/{{workstation_cluster_id}}
When using the pulumi import
command, WorkstationCluster can be imported using one of the formats above. For example:
$ pulumi import gcp:workstations/workstationCluster:WorkstationCluster default projects/{{project}}/locations/{{location}}/workstationClusters/{{workstation_cluster_id}}
$ pulumi import gcp:workstations/workstationCluster:WorkstationCluster default {{project}}/{{location}}/{{workstation_cluster_id}}
$ pulumi import gcp:workstations/workstationCluster:WorkstationCluster default {{location}}/{{workstation_cluster_id}}
To learn more about importing existing cloud resources, see Importing resources.
Package Details
- Repository
- Google Cloud (GCP) Classic pulumi/pulumi-gcp
- License
- Apache-2.0
- Notes
- This Pulumi package is based on the
google-beta
Terraform Provider.