gcp.workbench.Instance
Explore with Pulumi AI
A Workbench instance.
Example Usage
Workbench Instance Basic
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.workbench.Instance("instance", {
name: "workbench-instance",
location: "us-west1-a",
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.workbench.Instance("instance",
name="workbench-instance",
location="us-west1-a")
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workbench"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workbench.NewInstance(ctx, "instance", &workbench.InstanceArgs{
Name: pulumi.String("workbench-instance"),
Location: pulumi.String("us-west1-a"),
})
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 instance = new Gcp.Workbench.Instance("instance", new()
{
Name = "workbench-instance",
Location = "us-west1-a",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.workbench.Instance;
import com.pulumi.gcp.workbench.InstanceArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.name("workbench-instance")
.location("us-west1-a")
.build());
}
}
resources:
instance:
type: gcp:workbench:Instance
properties:
name: workbench-instance
location: us-west1-a
Workbench Instance Basic Container
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.workbench.Instance("instance", {
name: "workbench-instance",
location: "us-west1-a",
gceSetup: {
containerImage: {
repository: "us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113.py310",
tag: "latest",
},
},
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.workbench.Instance("instance",
name="workbench-instance",
location="us-west1-a",
gce_setup={
"container_image": {
"repository": "us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113.py310",
"tag": "latest",
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workbench"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workbench.NewInstance(ctx, "instance", &workbench.InstanceArgs{
Name: pulumi.String("workbench-instance"),
Location: pulumi.String("us-west1-a"),
GceSetup: &workbench.InstanceGceSetupArgs{
ContainerImage: &workbench.InstanceGceSetupContainerImageArgs{
Repository: pulumi.String("us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113.py310"),
Tag: pulumi.String("latest"),
},
},
})
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 instance = new Gcp.Workbench.Instance("instance", new()
{
Name = "workbench-instance",
Location = "us-west1-a",
GceSetup = new Gcp.Workbench.Inputs.InstanceGceSetupArgs
{
ContainerImage = new Gcp.Workbench.Inputs.InstanceGceSetupContainerImageArgs
{
Repository = "us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113.py310",
Tag = "latest",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.workbench.Instance;
import com.pulumi.gcp.workbench.InstanceArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupContainerImageArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.name("workbench-instance")
.location("us-west1-a")
.gceSetup(InstanceGceSetupArgs.builder()
.containerImage(InstanceGceSetupContainerImageArgs.builder()
.repository("us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113.py310")
.tag("latest")
.build())
.build())
.build());
}
}
resources:
instance:
type: gcp:workbench:Instance
properties:
name: workbench-instance
location: us-west1-a
gceSetup:
containerImage:
repository: us-docker.pkg.dev/deeplearning-platform-release/gcr.io/base-cu113.py310
tag: latest
Workbench Instance Basic Gpu
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.workbench.Instance("instance", {
name: "workbench-instance",
location: "us-central1-a",
gceSetup: {
machineType: "n1-standard-1",
acceleratorConfigs: [{
type: "NVIDIA_TESLA_T4",
coreCount: "1",
}],
vmImage: {
project: "cloud-notebooks-managed",
family: "workbench-instances",
},
},
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.workbench.Instance("instance",
name="workbench-instance",
location="us-central1-a",
gce_setup={
"machine_type": "n1-standard-1",
"accelerator_configs": [{
"type": "NVIDIA_TESLA_T4",
"core_count": "1",
}],
"vm_image": {
"project": "cloud-notebooks-managed",
"family": "workbench-instances",
},
})
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workbench"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workbench.NewInstance(ctx, "instance", &workbench.InstanceArgs{
Name: pulumi.String("workbench-instance"),
Location: pulumi.String("us-central1-a"),
GceSetup: &workbench.InstanceGceSetupArgs{
MachineType: pulumi.String("n1-standard-1"),
AcceleratorConfigs: workbench.InstanceGceSetupAcceleratorConfigArray{
&workbench.InstanceGceSetupAcceleratorConfigArgs{
Type: pulumi.String("NVIDIA_TESLA_T4"),
CoreCount: pulumi.String("1"),
},
},
VmImage: &workbench.InstanceGceSetupVmImageArgs{
Project: pulumi.String("cloud-notebooks-managed"),
Family: pulumi.String("workbench-instances"),
},
},
})
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 instance = new Gcp.Workbench.Instance("instance", new()
{
Name = "workbench-instance",
Location = "us-central1-a",
GceSetup = new Gcp.Workbench.Inputs.InstanceGceSetupArgs
{
MachineType = "n1-standard-1",
AcceleratorConfigs = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupAcceleratorConfigArgs
{
Type = "NVIDIA_TESLA_T4",
CoreCount = "1",
},
},
VmImage = new Gcp.Workbench.Inputs.InstanceGceSetupVmImageArgs
{
Project = "cloud-notebooks-managed",
Family = "workbench-instances",
},
},
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.workbench.Instance;
import com.pulumi.gcp.workbench.InstanceArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupVmImageArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.name("workbench-instance")
.location("us-central1-a")
.gceSetup(InstanceGceSetupArgs.builder()
.machineType("n1-standard-1")
.acceleratorConfigs(InstanceGceSetupAcceleratorConfigArgs.builder()
.type("NVIDIA_TESLA_T4")
.coreCount(1)
.build())
.vmImage(InstanceGceSetupVmImageArgs.builder()
.project("cloud-notebooks-managed")
.family("workbench-instances")
.build())
.build())
.build());
}
}
resources:
instance:
type: gcp:workbench:Instance
properties:
name: workbench-instance
location: us-central1-a
gceSetup:
machineType: n1-standard-1
acceleratorConfigs:
- type: NVIDIA_TESLA_T4
coreCount: 1
vmImage:
project: cloud-notebooks-managed
family: workbench-instances
Workbench Instance Labels Stopped
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const instance = new gcp.workbench.Instance("instance", {
name: "workbench-instance",
location: "us-central1-a",
gceSetup: {
machineType: "e2-standard-4",
shieldedInstanceConfig: {
enableSecureBoot: false,
enableVtpm: false,
enableIntegrityMonitoring: false,
},
serviceAccounts: [{
email: "my@service-account.com",
}],
metadata: {
terraform: "true",
},
},
labels: {
k: "val",
},
desiredState: "STOPPED",
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.workbench.Instance("instance",
name="workbench-instance",
location="us-central1-a",
gce_setup={
"machine_type": "e2-standard-4",
"shielded_instance_config": {
"enable_secure_boot": False,
"enable_vtpm": False,
"enable_integrity_monitoring": False,
},
"service_accounts": [{
"email": "my@service-account.com",
}],
"metadata": {
"terraform": "true",
},
},
labels={
"k": "val",
},
desired_state="STOPPED")
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workbench"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := workbench.NewInstance(ctx, "instance", &workbench.InstanceArgs{
Name: pulumi.String("workbench-instance"),
Location: pulumi.String("us-central1-a"),
GceSetup: &workbench.InstanceGceSetupArgs{
MachineType: pulumi.String("e2-standard-4"),
ShieldedInstanceConfig: &workbench.InstanceGceSetupShieldedInstanceConfigArgs{
EnableSecureBoot: pulumi.Bool(false),
EnableVtpm: pulumi.Bool(false),
EnableIntegrityMonitoring: pulumi.Bool(false),
},
ServiceAccounts: workbench.InstanceGceSetupServiceAccountArray{
&workbench.InstanceGceSetupServiceAccountArgs{
Email: pulumi.String("my@service-account.com"),
},
},
Metadata: pulumi.StringMap{
"terraform": pulumi.String("true"),
},
},
Labels: pulumi.StringMap{
"k": pulumi.String("val"),
},
DesiredState: pulumi.String("STOPPED"),
})
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 instance = new Gcp.Workbench.Instance("instance", new()
{
Name = "workbench-instance",
Location = "us-central1-a",
GceSetup = new Gcp.Workbench.Inputs.InstanceGceSetupArgs
{
MachineType = "e2-standard-4",
ShieldedInstanceConfig = new Gcp.Workbench.Inputs.InstanceGceSetupShieldedInstanceConfigArgs
{
EnableSecureBoot = false,
EnableVtpm = false,
EnableIntegrityMonitoring = false,
},
ServiceAccounts = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupServiceAccountArgs
{
Email = "my@service-account.com",
},
},
Metadata =
{
{ "terraform", "true" },
},
},
Labels =
{
{ "k", "val" },
},
DesiredState = "STOPPED",
});
});
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.gcp.workbench.Instance;
import com.pulumi.gcp.workbench.InstanceArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupShieldedInstanceConfigArgs;
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 instance = new Instance("instance", InstanceArgs.builder()
.name("workbench-instance")
.location("us-central1-a")
.gceSetup(InstanceGceSetupArgs.builder()
.machineType("e2-standard-4")
.shieldedInstanceConfig(InstanceGceSetupShieldedInstanceConfigArgs.builder()
.enableSecureBoot(false)
.enableVtpm(false)
.enableIntegrityMonitoring(false)
.build())
.serviceAccounts(InstanceGceSetupServiceAccountArgs.builder()
.email("my@service-account.com")
.build())
.metadata(Map.of("terraform", "true"))
.build())
.labels(Map.of("k", "val"))
.desiredState("STOPPED")
.build());
}
}
resources:
instance:
type: gcp:workbench:Instance
properties:
name: workbench-instance
location: us-central1-a
gceSetup:
machineType: e2-standard-4
shieldedInstanceConfig:
enableSecureBoot: false
enableVtpm: false
enableIntegrityMonitoring: false
serviceAccounts:
- email: my@service-account.com
metadata:
terraform: 'true'
labels:
k: val
desiredState: STOPPED
Workbench Instance Full
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";
const myNetwork = new gcp.compute.Network("my_network", {
name: "wbi-test-default",
autoCreateSubnetworks: false,
});
const mySubnetwork = new gcp.compute.Subnetwork("my_subnetwork", {
name: "wbi-test-default",
network: myNetwork.id,
region: "us-central1",
ipCidrRange: "10.0.1.0/24",
});
const static = new gcp.compute.Address("static", {name: "wbi-test-default"});
const actAsPermission = new gcp.serviceaccount.IAMBinding("act_as_permission", {
serviceAccountId: "projects/my-project-name/serviceAccounts/my@service-account.com",
role: "roles/iam.serviceAccountUser",
members: ["user:example@example.com"],
});
const instance = new gcp.workbench.Instance("instance", {
name: "workbench-instance",
location: "us-central1-a",
gceSetup: {
machineType: "n1-standard-4",
acceleratorConfigs: [{
type: "NVIDIA_TESLA_T4",
coreCount: "1",
}],
shieldedInstanceConfig: {
enableSecureBoot: true,
enableVtpm: true,
enableIntegrityMonitoring: true,
},
disablePublicIp: false,
serviceAccounts: [{
email: "my@service-account.com",
}],
bootDisk: {
diskSizeGb: "310",
diskType: "PD_SSD",
diskEncryption: "CMEK",
kmsKey: "my-crypto-key",
},
dataDisks: {
diskSizeGb: "330",
diskType: "PD_SSD",
diskEncryption: "CMEK",
kmsKey: "my-crypto-key",
},
networkInterfaces: [{
network: myNetwork.id,
subnet: mySubnetwork.id,
nicType: "GVNIC",
accessConfigs: [{
externalIp: static.address,
}],
}],
metadata: {
terraform: "true",
},
enableIpForwarding: true,
tags: [
"abc",
"def",
],
},
disableProxyAccess: true,
instanceOwners: ["example@example.com"],
labels: {
k: "val",
},
desiredState: "ACTIVE",
});
import pulumi
import pulumi_gcp as gcp
my_network = gcp.compute.Network("my_network",
name="wbi-test-default",
auto_create_subnetworks=False)
my_subnetwork = gcp.compute.Subnetwork("my_subnetwork",
name="wbi-test-default",
network=my_network.id,
region="us-central1",
ip_cidr_range="10.0.1.0/24")
static = gcp.compute.Address("static", name="wbi-test-default")
act_as_permission = gcp.serviceaccount.IAMBinding("act_as_permission",
service_account_id="projects/my-project-name/serviceAccounts/my@service-account.com",
role="roles/iam.serviceAccountUser",
members=["user:example@example.com"])
instance = gcp.workbench.Instance("instance",
name="workbench-instance",
location="us-central1-a",
gce_setup={
"machine_type": "n1-standard-4",
"accelerator_configs": [{
"type": "NVIDIA_TESLA_T4",
"core_count": "1",
}],
"shielded_instance_config": {
"enable_secure_boot": True,
"enable_vtpm": True,
"enable_integrity_monitoring": True,
},
"disable_public_ip": False,
"service_accounts": [{
"email": "my@service-account.com",
}],
"boot_disk": {
"disk_size_gb": "310",
"disk_type": "PD_SSD",
"disk_encryption": "CMEK",
"kms_key": "my-crypto-key",
},
"data_disks": {
"disk_size_gb": "330",
"disk_type": "PD_SSD",
"disk_encryption": "CMEK",
"kms_key": "my-crypto-key",
},
"network_interfaces": [{
"network": my_network.id,
"subnet": my_subnetwork.id,
"nic_type": "GVNIC",
"access_configs": [{
"external_ip": static.address,
}],
}],
"metadata": {
"terraform": "true",
},
"enable_ip_forwarding": True,
"tags": [
"abc",
"def",
],
},
disable_proxy_access=True,
instance_owners=["example@example.com"],
labels={
"k": "val",
},
desired_state="ACTIVE")
package main
import (
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/serviceaccount"
"github.com/pulumi/pulumi-gcp/sdk/v8/go/gcp/workbench"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
myNetwork, err := compute.NewNetwork(ctx, "my_network", &compute.NetworkArgs{
Name: pulumi.String("wbi-test-default"),
AutoCreateSubnetworks: pulumi.Bool(false),
})
if err != nil {
return err
}
mySubnetwork, err := compute.NewSubnetwork(ctx, "my_subnetwork", &compute.SubnetworkArgs{
Name: pulumi.String("wbi-test-default"),
Network: myNetwork.ID(),
Region: pulumi.String("us-central1"),
IpCidrRange: pulumi.String("10.0.1.0/24"),
})
if err != nil {
return err
}
static, err := compute.NewAddress(ctx, "static", &compute.AddressArgs{
Name: pulumi.String("wbi-test-default"),
})
if err != nil {
return err
}
_, err = serviceaccount.NewIAMBinding(ctx, "act_as_permission", &serviceaccount.IAMBindingArgs{
ServiceAccountId: pulumi.String("projects/my-project-name/serviceAccounts/my@service-account.com"),
Role: pulumi.String("roles/iam.serviceAccountUser"),
Members: pulumi.StringArray{
pulumi.String("user:example@example.com"),
},
})
if err != nil {
return err
}
_, err = workbench.NewInstance(ctx, "instance", &workbench.InstanceArgs{
Name: pulumi.String("workbench-instance"),
Location: pulumi.String("us-central1-a"),
GceSetup: &workbench.InstanceGceSetupArgs{
MachineType: pulumi.String("n1-standard-4"),
AcceleratorConfigs: workbench.InstanceGceSetupAcceleratorConfigArray{
&workbench.InstanceGceSetupAcceleratorConfigArgs{
Type: pulumi.String("NVIDIA_TESLA_T4"),
CoreCount: pulumi.String("1"),
},
},
ShieldedInstanceConfig: &workbench.InstanceGceSetupShieldedInstanceConfigArgs{
EnableSecureBoot: pulumi.Bool(true),
EnableVtpm: pulumi.Bool(true),
EnableIntegrityMonitoring: pulumi.Bool(true),
},
DisablePublicIp: pulumi.Bool(false),
ServiceAccounts: workbench.InstanceGceSetupServiceAccountArray{
&workbench.InstanceGceSetupServiceAccountArgs{
Email: pulumi.String("my@service-account.com"),
},
},
BootDisk: &workbench.InstanceGceSetupBootDiskArgs{
DiskSizeGb: pulumi.String("310"),
DiskType: pulumi.String("PD_SSD"),
DiskEncryption: pulumi.String("CMEK"),
KmsKey: pulumi.String("my-crypto-key"),
},
DataDisks: &workbench.InstanceGceSetupDataDisksArgs{
DiskSizeGb: pulumi.String("330"),
DiskType: pulumi.String("PD_SSD"),
DiskEncryption: pulumi.String("CMEK"),
KmsKey: pulumi.String("my-crypto-key"),
},
NetworkInterfaces: workbench.InstanceGceSetupNetworkInterfaceArray{
&workbench.InstanceGceSetupNetworkInterfaceArgs{
Network: myNetwork.ID(),
Subnet: mySubnetwork.ID(),
NicType: pulumi.String("GVNIC"),
AccessConfigs: workbench.InstanceGceSetupNetworkInterfaceAccessConfigArray{
&workbench.InstanceGceSetupNetworkInterfaceAccessConfigArgs{
ExternalIp: static.Address,
},
},
},
},
Metadata: pulumi.StringMap{
"terraform": pulumi.String("true"),
},
EnableIpForwarding: pulumi.Bool(true),
Tags: pulumi.StringArray{
pulumi.String("abc"),
pulumi.String("def"),
},
},
DisableProxyAccess: pulumi.Bool(true),
InstanceOwners: pulumi.StringArray{
pulumi.String("example@example.com"),
},
Labels: pulumi.StringMap{
"k": pulumi.String("val"),
},
DesiredState: pulumi.String("ACTIVE"),
})
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 myNetwork = new Gcp.Compute.Network("my_network", new()
{
Name = "wbi-test-default",
AutoCreateSubnetworks = false,
});
var mySubnetwork = new Gcp.Compute.Subnetwork("my_subnetwork", new()
{
Name = "wbi-test-default",
Network = myNetwork.Id,
Region = "us-central1",
IpCidrRange = "10.0.1.0/24",
});
var @static = new Gcp.Compute.Address("static", new()
{
Name = "wbi-test-default",
});
var actAsPermission = new Gcp.ServiceAccount.IAMBinding("act_as_permission", new()
{
ServiceAccountId = "projects/my-project-name/serviceAccounts/my@service-account.com",
Role = "roles/iam.serviceAccountUser",
Members = new[]
{
"user:example@example.com",
},
});
var instance = new Gcp.Workbench.Instance("instance", new()
{
Name = "workbench-instance",
Location = "us-central1-a",
GceSetup = new Gcp.Workbench.Inputs.InstanceGceSetupArgs
{
MachineType = "n1-standard-4",
AcceleratorConfigs = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupAcceleratorConfigArgs
{
Type = "NVIDIA_TESLA_T4",
CoreCount = "1",
},
},
ShieldedInstanceConfig = new Gcp.Workbench.Inputs.InstanceGceSetupShieldedInstanceConfigArgs
{
EnableSecureBoot = true,
EnableVtpm = true,
EnableIntegrityMonitoring = true,
},
DisablePublicIp = false,
ServiceAccounts = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupServiceAccountArgs
{
Email = "my@service-account.com",
},
},
BootDisk = new Gcp.Workbench.Inputs.InstanceGceSetupBootDiskArgs
{
DiskSizeGb = "310",
DiskType = "PD_SSD",
DiskEncryption = "CMEK",
KmsKey = "my-crypto-key",
},
DataDisks = new Gcp.Workbench.Inputs.InstanceGceSetupDataDisksArgs
{
DiskSizeGb = "330",
DiskType = "PD_SSD",
DiskEncryption = "CMEK",
KmsKey = "my-crypto-key",
},
NetworkInterfaces = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupNetworkInterfaceArgs
{
Network = myNetwork.Id,
Subnet = mySubnetwork.Id,
NicType = "GVNIC",
AccessConfigs = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupNetworkInterfaceAccessConfigArgs
{
ExternalIp = @static.IPAddress,
},
},
},
},
Metadata =
{
{ "terraform", "true" },
},
EnableIpForwarding = true,
Tags = new[]
{
"abc",
"def",
},
},
DisableProxyAccess = true,
InstanceOwners = new[]
{
"example@example.com",
},
Labels =
{
{ "k", "val" },
},
DesiredState = "ACTIVE",
});
});
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.compute.Address;
import com.pulumi.gcp.compute.AddressArgs;
import com.pulumi.gcp.serviceaccount.IAMBinding;
import com.pulumi.gcp.serviceaccount.IAMBindingArgs;
import com.pulumi.gcp.workbench.Instance;
import com.pulumi.gcp.workbench.InstanceArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupShieldedInstanceConfigArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupBootDiskArgs;
import com.pulumi.gcp.workbench.inputs.InstanceGceSetupDataDisksArgs;
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 myNetwork = new Network("myNetwork", NetworkArgs.builder()
.name("wbi-test-default")
.autoCreateSubnetworks(false)
.build());
var mySubnetwork = new Subnetwork("mySubnetwork", SubnetworkArgs.builder()
.name("wbi-test-default")
.network(myNetwork.id())
.region("us-central1")
.ipCidrRange("10.0.1.0/24")
.build());
var static_ = new Address("static", AddressArgs.builder()
.name("wbi-test-default")
.build());
var actAsPermission = new IAMBinding("actAsPermission", IAMBindingArgs.builder()
.serviceAccountId("projects/my-project-name/serviceAccounts/my@service-account.com")
.role("roles/iam.serviceAccountUser")
.members("user:example@example.com")
.build());
var instance = new Instance("instance", InstanceArgs.builder()
.name("workbench-instance")
.location("us-central1-a")
.gceSetup(InstanceGceSetupArgs.builder()
.machineType("n1-standard-4")
.acceleratorConfigs(InstanceGceSetupAcceleratorConfigArgs.builder()
.type("NVIDIA_TESLA_T4")
.coreCount(1)
.build())
.shieldedInstanceConfig(InstanceGceSetupShieldedInstanceConfigArgs.builder()
.enableSecureBoot(true)
.enableVtpm(true)
.enableIntegrityMonitoring(true)
.build())
.disablePublicIp(false)
.serviceAccounts(InstanceGceSetupServiceAccountArgs.builder()
.email("my@service-account.com")
.build())
.bootDisk(InstanceGceSetupBootDiskArgs.builder()
.diskSizeGb(310)
.diskType("PD_SSD")
.diskEncryption("CMEK")
.kmsKey("my-crypto-key")
.build())
.dataDisks(InstanceGceSetupDataDisksArgs.builder()
.diskSizeGb(330)
.diskType("PD_SSD")
.diskEncryption("CMEK")
.kmsKey("my-crypto-key")
.build())
.networkInterfaces(InstanceGceSetupNetworkInterfaceArgs.builder()
.network(myNetwork.id())
.subnet(mySubnetwork.id())
.nicType("GVNIC")
.accessConfigs(InstanceGceSetupNetworkInterfaceAccessConfigArgs.builder()
.externalIp(static_.address())
.build())
.build())
.metadata(Map.of("terraform", "true"))
.enableIpForwarding(true)
.tags(
"abc",
"def")
.build())
.disableProxyAccess("true")
.instanceOwners("example@example.com")
.labels(Map.of("k", "val"))
.desiredState("ACTIVE")
.build());
}
}
resources:
myNetwork:
type: gcp:compute:Network
name: my_network
properties:
name: wbi-test-default
autoCreateSubnetworks: false
mySubnetwork:
type: gcp:compute:Subnetwork
name: my_subnetwork
properties:
name: wbi-test-default
network: ${myNetwork.id}
region: us-central1
ipCidrRange: 10.0.1.0/24
static:
type: gcp:compute:Address
properties:
name: wbi-test-default
actAsPermission:
type: gcp:serviceaccount:IAMBinding
name: act_as_permission
properties:
serviceAccountId: projects/my-project-name/serviceAccounts/my@service-account.com
role: roles/iam.serviceAccountUser
members:
- user:example@example.com
instance:
type: gcp:workbench:Instance
properties:
name: workbench-instance
location: us-central1-a
gceSetup:
machineType: n1-standard-4
acceleratorConfigs:
- type: NVIDIA_TESLA_T4
coreCount: 1
shieldedInstanceConfig:
enableSecureBoot: true
enableVtpm: true
enableIntegrityMonitoring: true
disablePublicIp: false
serviceAccounts:
- email: my@service-account.com
bootDisk:
diskSizeGb: 310
diskType: PD_SSD
diskEncryption: CMEK
kmsKey: my-crypto-key
dataDisks:
diskSizeGb: 330
diskType: PD_SSD
diskEncryption: CMEK
kmsKey: my-crypto-key
networkInterfaces:
- network: ${myNetwork.id}
subnet: ${mySubnetwork.id}
nicType: GVNIC
accessConfigs:
- externalIp: ${static.address}
metadata:
terraform: 'true'
enableIpForwarding: true
tags:
- abc
- def
disableProxyAccess: 'true'
instanceOwners:
- example@example.com
labels:
k: val
desiredState: ACTIVE
Create Instance Resource
Resources are created with functions called constructors. To learn more about declaring and configuring resources, see Resources.
Constructor syntax
new Instance(name: string, args: InstanceArgs, opts?: CustomResourceOptions);
@overload
def Instance(resource_name: str,
args: InstanceArgs,
opts: Optional[ResourceOptions] = None)
@overload
def Instance(resource_name: str,
opts: Optional[ResourceOptions] = None,
location: Optional[str] = None,
desired_state: Optional[str] = None,
disable_proxy_access: Optional[bool] = None,
gce_setup: Optional[InstanceGceSetupArgs] = None,
instance_id: Optional[str] = None,
instance_owners: Optional[Sequence[str]] = None,
labels: Optional[Mapping[str, str]] = None,
name: Optional[str] = None,
project: Optional[str] = None)
func NewInstance(ctx *Context, name string, args InstanceArgs, opts ...ResourceOption) (*Instance, error)
public Instance(string name, InstanceArgs args, CustomResourceOptions? opts = null)
public Instance(String name, InstanceArgs args)
public Instance(String name, InstanceArgs args, CustomResourceOptions options)
type: gcp:workbench:Instance
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 InstanceArgs
- 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 InstanceArgs
- 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 InstanceArgs
- The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name string
- The unique name of the resource.
- args InstanceArgs
- The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name String
- The unique name of the resource.
- args InstanceArgs
- 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 exampleinstanceResourceResourceFromWorkbenchinstance = new Gcp.Workbench.Instance("exampleinstanceResourceResourceFromWorkbenchinstance", new()
{
Location = "string",
DesiredState = "string",
DisableProxyAccess = false,
GceSetup = new Gcp.Workbench.Inputs.InstanceGceSetupArgs
{
AcceleratorConfigs = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupAcceleratorConfigArgs
{
CoreCount = "string",
Type = "string",
},
},
BootDisk = new Gcp.Workbench.Inputs.InstanceGceSetupBootDiskArgs
{
DiskEncryption = "string",
DiskSizeGb = "string",
DiskType = "string",
KmsKey = "string",
},
ContainerImage = new Gcp.Workbench.Inputs.InstanceGceSetupContainerImageArgs
{
Repository = "string",
Tag = "string",
},
DataDisks = new Gcp.Workbench.Inputs.InstanceGceSetupDataDisksArgs
{
DiskEncryption = "string",
DiskSizeGb = "string",
DiskType = "string",
KmsKey = "string",
},
DisablePublicIp = false,
EnableIpForwarding = false,
MachineType = "string",
Metadata =
{
{ "string", "string" },
},
NetworkInterfaces = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupNetworkInterfaceArgs
{
AccessConfigs = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupNetworkInterfaceAccessConfigArgs
{
ExternalIp = "string",
},
},
Network = "string",
NicType = "string",
Subnet = "string",
},
},
ServiceAccounts = new[]
{
new Gcp.Workbench.Inputs.InstanceGceSetupServiceAccountArgs
{
Email = "string",
Scopes = new[]
{
"string",
},
},
},
ShieldedInstanceConfig = new Gcp.Workbench.Inputs.InstanceGceSetupShieldedInstanceConfigArgs
{
EnableIntegrityMonitoring = false,
EnableSecureBoot = false,
EnableVtpm = false,
},
Tags = new[]
{
"string",
},
VmImage = new Gcp.Workbench.Inputs.InstanceGceSetupVmImageArgs
{
Family = "string",
Name = "string",
Project = "string",
},
},
InstanceId = "string",
InstanceOwners = new[]
{
"string",
},
Labels =
{
{ "string", "string" },
},
Name = "string",
Project = "string",
});
example, err := workbench.NewInstance(ctx, "exampleinstanceResourceResourceFromWorkbenchinstance", &workbench.InstanceArgs{
Location: pulumi.String("string"),
DesiredState: pulumi.String("string"),
DisableProxyAccess: pulumi.Bool(false),
GceSetup: &workbench.InstanceGceSetupArgs{
AcceleratorConfigs: workbench.InstanceGceSetupAcceleratorConfigArray{
&workbench.InstanceGceSetupAcceleratorConfigArgs{
CoreCount: pulumi.String("string"),
Type: pulumi.String("string"),
},
},
BootDisk: &workbench.InstanceGceSetupBootDiskArgs{
DiskEncryption: pulumi.String("string"),
DiskSizeGb: pulumi.String("string"),
DiskType: pulumi.String("string"),
KmsKey: pulumi.String("string"),
},
ContainerImage: &workbench.InstanceGceSetupContainerImageArgs{
Repository: pulumi.String("string"),
Tag: pulumi.String("string"),
},
DataDisks: &workbench.InstanceGceSetupDataDisksArgs{
DiskEncryption: pulumi.String("string"),
DiskSizeGb: pulumi.String("string"),
DiskType: pulumi.String("string"),
KmsKey: pulumi.String("string"),
},
DisablePublicIp: pulumi.Bool(false),
EnableIpForwarding: pulumi.Bool(false),
MachineType: pulumi.String("string"),
Metadata: pulumi.StringMap{
"string": pulumi.String("string"),
},
NetworkInterfaces: workbench.InstanceGceSetupNetworkInterfaceArray{
&workbench.InstanceGceSetupNetworkInterfaceArgs{
AccessConfigs: workbench.InstanceGceSetupNetworkInterfaceAccessConfigArray{
&workbench.InstanceGceSetupNetworkInterfaceAccessConfigArgs{
ExternalIp: pulumi.String("string"),
},
},
Network: pulumi.String("string"),
NicType: pulumi.String("string"),
Subnet: pulumi.String("string"),
},
},
ServiceAccounts: workbench.InstanceGceSetupServiceAccountArray{
&workbench.InstanceGceSetupServiceAccountArgs{
Email: pulumi.String("string"),
Scopes: pulumi.StringArray{
pulumi.String("string"),
},
},
},
ShieldedInstanceConfig: &workbench.InstanceGceSetupShieldedInstanceConfigArgs{
EnableIntegrityMonitoring: pulumi.Bool(false),
EnableSecureBoot: pulumi.Bool(false),
EnableVtpm: pulumi.Bool(false),
},
Tags: pulumi.StringArray{
pulumi.String("string"),
},
VmImage: &workbench.InstanceGceSetupVmImageArgs{
Family: pulumi.String("string"),
Name: pulumi.String("string"),
Project: pulumi.String("string"),
},
},
InstanceId: pulumi.String("string"),
InstanceOwners: pulumi.StringArray{
pulumi.String("string"),
},
Labels: pulumi.StringMap{
"string": pulumi.String("string"),
},
Name: pulumi.String("string"),
Project: pulumi.String("string"),
})
var exampleinstanceResourceResourceFromWorkbenchinstance = new Instance("exampleinstanceResourceResourceFromWorkbenchinstance", InstanceArgs.builder()
.location("string")
.desiredState("string")
.disableProxyAccess(false)
.gceSetup(InstanceGceSetupArgs.builder()
.acceleratorConfigs(InstanceGceSetupAcceleratorConfigArgs.builder()
.coreCount("string")
.type("string")
.build())
.bootDisk(InstanceGceSetupBootDiskArgs.builder()
.diskEncryption("string")
.diskSizeGb("string")
.diskType("string")
.kmsKey("string")
.build())
.containerImage(InstanceGceSetupContainerImageArgs.builder()
.repository("string")
.tag("string")
.build())
.dataDisks(InstanceGceSetupDataDisksArgs.builder()
.diskEncryption("string")
.diskSizeGb("string")
.diskType("string")
.kmsKey("string")
.build())
.disablePublicIp(false)
.enableIpForwarding(false)
.machineType("string")
.metadata(Map.of("string", "string"))
.networkInterfaces(InstanceGceSetupNetworkInterfaceArgs.builder()
.accessConfigs(InstanceGceSetupNetworkInterfaceAccessConfigArgs.builder()
.externalIp("string")
.build())
.network("string")
.nicType("string")
.subnet("string")
.build())
.serviceAccounts(InstanceGceSetupServiceAccountArgs.builder()
.email("string")
.scopes("string")
.build())
.shieldedInstanceConfig(InstanceGceSetupShieldedInstanceConfigArgs.builder()
.enableIntegrityMonitoring(false)
.enableSecureBoot(false)
.enableVtpm(false)
.build())
.tags("string")
.vmImage(InstanceGceSetupVmImageArgs.builder()
.family("string")
.name("string")
.project("string")
.build())
.build())
.instanceId("string")
.instanceOwners("string")
.labels(Map.of("string", "string"))
.name("string")
.project("string")
.build());
exampleinstance_resource_resource_from_workbenchinstance = gcp.workbench.Instance("exampleinstanceResourceResourceFromWorkbenchinstance",
location="string",
desired_state="string",
disable_proxy_access=False,
gce_setup={
"acceleratorConfigs": [{
"coreCount": "string",
"type": "string",
}],
"bootDisk": {
"diskEncryption": "string",
"diskSizeGb": "string",
"diskType": "string",
"kmsKey": "string",
},
"containerImage": {
"repository": "string",
"tag": "string",
},
"dataDisks": {
"diskEncryption": "string",
"diskSizeGb": "string",
"diskType": "string",
"kmsKey": "string",
},
"disablePublicIp": False,
"enableIpForwarding": False,
"machineType": "string",
"metadata": {
"string": "string",
},
"networkInterfaces": [{
"accessConfigs": [{
"externalIp": "string",
}],
"network": "string",
"nicType": "string",
"subnet": "string",
}],
"serviceAccounts": [{
"email": "string",
"scopes": ["string"],
}],
"shieldedInstanceConfig": {
"enableIntegrityMonitoring": False,
"enableSecureBoot": False,
"enableVtpm": False,
},
"tags": ["string"],
"vmImage": {
"family": "string",
"name": "string",
"project": "string",
},
},
instance_id="string",
instance_owners=["string"],
labels={
"string": "string",
},
name="string",
project="string")
const exampleinstanceResourceResourceFromWorkbenchinstance = new gcp.workbench.Instance("exampleinstanceResourceResourceFromWorkbenchinstance", {
location: "string",
desiredState: "string",
disableProxyAccess: false,
gceSetup: {
acceleratorConfigs: [{
coreCount: "string",
type: "string",
}],
bootDisk: {
diskEncryption: "string",
diskSizeGb: "string",
diskType: "string",
kmsKey: "string",
},
containerImage: {
repository: "string",
tag: "string",
},
dataDisks: {
diskEncryption: "string",
diskSizeGb: "string",
diskType: "string",
kmsKey: "string",
},
disablePublicIp: false,
enableIpForwarding: false,
machineType: "string",
metadata: {
string: "string",
},
networkInterfaces: [{
accessConfigs: [{
externalIp: "string",
}],
network: "string",
nicType: "string",
subnet: "string",
}],
serviceAccounts: [{
email: "string",
scopes: ["string"],
}],
shieldedInstanceConfig: {
enableIntegrityMonitoring: false,
enableSecureBoot: false,
enableVtpm: false,
},
tags: ["string"],
vmImage: {
family: "string",
name: "string",
project: "string",
},
},
instanceId: "string",
instanceOwners: ["string"],
labels: {
string: "string",
},
name: "string",
project: "string",
});
type: gcp:workbench:Instance
properties:
desiredState: string
disableProxyAccess: false
gceSetup:
acceleratorConfigs:
- coreCount: string
type: string
bootDisk:
diskEncryption: string
diskSizeGb: string
diskType: string
kmsKey: string
containerImage:
repository: string
tag: string
dataDisks:
diskEncryption: string
diskSizeGb: string
diskType: string
kmsKey: string
disablePublicIp: false
enableIpForwarding: false
machineType: string
metadata:
string: string
networkInterfaces:
- accessConfigs:
- externalIp: string
network: string
nicType: string
subnet: string
serviceAccounts:
- email: string
scopes:
- string
shieldedInstanceConfig:
enableIntegrityMonitoring: false
enableSecureBoot: false
enableVtpm: false
tags:
- string
vmImage:
family: string
name: string
project: string
instanceId: string
instanceOwners:
- string
labels:
string: string
location: string
name: string
project: string
Instance 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 Instance resource accepts the following input properties:
- Location string
- Part of
parent
. See documentation ofprojectsId
. - Desired
State string - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - Disable
Proxy boolAccess - Optional. If true, the workbench instance will not register with the proxy.
- Gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- Instance
Id string - Required. User-defined unique ID of this instance.
- Instance
Owners List<string> - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - Labels Dictionary<string, string>
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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.- Name string
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Location string
- Part of
parent
. See documentation ofprojectsId
. - Desired
State string - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - Disable
Proxy boolAccess - Optional. If true, the workbench instance will not register with the proxy.
- Gce
Setup InstanceGce Setup Args - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- Instance
Id string - Required. User-defined unique ID of this instance.
- Instance
Owners []string - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - Labels map[string]string
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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.- Name string
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location String
- Part of
parent
. See documentation ofprojectsId
. - desired
State String - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable
Proxy BooleanAccess - Optional. If true, the workbench instance will not register with the proxy.
- gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance
Id String - Required. User-defined unique ID of this instance.
- instance
Owners List<String> - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels Map<String,String>
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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.- name String
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location string
- Part of
parent
. See documentation ofprojectsId
. - desired
State string - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable
Proxy booleanAccess - Optional. If true, the workbench instance will not register with the proxy.
- gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance
Id string - Required. User-defined unique ID of this instance.
- instance
Owners string[] - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels {[key: string]: string}
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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.- name string
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location str
- Part of
parent
. See documentation ofprojectsId
. - desired_
state str - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable_
proxy_ boolaccess - Optional. If true, the workbench instance will not register with the proxy.
- gce_
setup InstanceGce Setup Args - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance_
id str - Required. User-defined unique ID of this instance.
- instance_
owners Sequence[str] - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels Mapping[str, str]
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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.- name str
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location String
- Part of
parent
. See documentation ofprojectsId
. - desired
State String - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable
Proxy BooleanAccess - Optional. If true, the workbench instance will not register with the proxy.
- gce
Setup Property Map - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance
Id String - Required. User-defined unique ID of this instance.
- instance
Owners List<String> - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels Map<String>
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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.- name String
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- 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 Instance resource produces the following output properties:
- Create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Creator string
- Output only. Email address of entity that sent original CreateInstance request.
- 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.
- Health
Infos List<InstanceHealth Info> - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- Health
State string - Output only. Instance health_state.
- Id string
- The provider-assigned unique ID for this managed resource.
- Proxy
Uri string - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- State string
- (Output) Output only. The state of this instance upgrade history entry.
- Update
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Upgrade
Histories List<InstanceUpgrade History> - Output only. The upgrade history of this instance. Structure is documented below.
- Create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Creator string
- Output only. Email address of entity that sent original CreateInstance request.
- 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.
- Health
Infos []InstanceHealth Info - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- Health
State string - Output only. Instance health_state.
- Id string
- The provider-assigned unique ID for this managed resource.
- Proxy
Uri string - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- State string
- (Output) Output only. The state of this instance upgrade history entry.
- Update
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Upgrade
Histories []InstanceUpgrade History - Output only. The upgrade history of this instance. Structure is documented below.
- create
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator String
- Output only. Email address of entity that sent original CreateInstance request.
- 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.
- health
Infos List<InstanceHealth Info> - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health
State String - Output only. Instance health_state.
- id String
- The provider-assigned unique ID for this managed resource.
- proxy
Uri String - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- state String
- (Output) Output only. The state of this instance upgrade history entry.
- update
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade
Histories List<InstanceUpgrade History> - Output only. The upgrade history of this instance. Structure is documented below.
- create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator string
- Output only. Email address of entity that sent original CreateInstance request.
- 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.
- health
Infos InstanceHealth Info[] - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health
State string - Output only. Instance health_state.
- id string
- The provider-assigned unique ID for this managed resource.
- proxy
Uri string - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- state string
- (Output) Output only. The state of this instance upgrade history entry.
- update
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade
Histories InstanceUpgrade History[] - Output only. The upgrade history of this instance. Structure is documented below.
- create_
time str - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator str
- Output only. Email address of entity that sent original CreateInstance request.
- 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.
- health_
infos Sequence[InstanceHealth Info] - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health_
state str - Output only. Instance health_state.
- id str
- The provider-assigned unique ID for this managed resource.
- proxy_
uri str - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- state str
- (Output) Output only. The state of this instance upgrade history entry.
- update_
time str - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade_
histories Sequence[InstanceUpgrade History] - Output only. The upgrade history of this instance. Structure is documented below.
- create
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator String
- Output only. Email address of entity that sent original CreateInstance request.
- 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.
- health
Infos List<Property Map> - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health
State String - Output only. Instance health_state.
- id String
- The provider-assigned unique ID for this managed resource.
- proxy
Uri String - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- state String
- (Output) Output only. The state of this instance upgrade history entry.
- update
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade
Histories List<Property Map> - Output only. The upgrade history of this instance. Structure is documented below.
Look up Existing Instance Resource
Get an existing Instance 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?: InstanceState, opts?: CustomResourceOptions): Instance
@staticmethod
def get(resource_name: str,
id: str,
opts: Optional[ResourceOptions] = None,
create_time: Optional[str] = None,
creator: Optional[str] = None,
desired_state: Optional[str] = None,
disable_proxy_access: Optional[bool] = None,
effective_labels: Optional[Mapping[str, str]] = None,
gce_setup: Optional[InstanceGceSetupArgs] = None,
health_infos: Optional[Sequence[InstanceHealthInfoArgs]] = None,
health_state: Optional[str] = None,
instance_id: Optional[str] = None,
instance_owners: Optional[Sequence[str]] = None,
labels: Optional[Mapping[str, str]] = None,
location: Optional[str] = None,
name: Optional[str] = None,
project: Optional[str] = None,
proxy_uri: Optional[str] = None,
pulumi_labels: Optional[Mapping[str, str]] = None,
state: Optional[str] = None,
update_time: Optional[str] = None,
upgrade_histories: Optional[Sequence[InstanceUpgradeHistoryArgs]] = None) -> Instance
func GetInstance(ctx *Context, name string, id IDInput, state *InstanceState, opts ...ResourceOption) (*Instance, error)
public static Instance Get(string name, Input<string> id, InstanceState? state, CustomResourceOptions? opts = null)
public static Instance get(String name, Output<String> id, InstanceState 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.
- Create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Creator string
- Output only. Email address of entity that sent original CreateInstance request.
- Desired
State string - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - Disable
Proxy boolAccess - Optional. If true, the workbench instance will not register with the proxy.
- 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.
- Gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- Health
Infos List<InstanceHealth Info> - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- Health
State string - Output only. Instance health_state.
- Instance
Id string - Required. User-defined unique ID of this instance.
- Instance
Owners List<string> - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - Labels Dictionary<string, string>
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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
- Part of
parent
. See documentation ofprojectsId
. - Name string
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Proxy
Uri string - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- Pulumi
Labels Dictionary<string, string> - The combination of labels configured directly on the resource and default labels configured on the provider.
- State string
- (Output) Output only. The state of this instance upgrade history entry.
- Update
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Upgrade
Histories List<InstanceUpgrade History> - Output only. The upgrade history of this instance. Structure is documented below.
- Create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Creator string
- Output only. Email address of entity that sent original CreateInstance request.
- Desired
State string - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - Disable
Proxy boolAccess - Optional. If true, the workbench instance will not register with the proxy.
- 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.
- Gce
Setup InstanceGce Setup Args - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- Health
Infos []InstanceHealth Info Args - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- Health
State string - Output only. Instance health_state.
- Instance
Id string - Required. User-defined unique ID of this instance.
- Instance
Owners []string - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - Labels map[string]string
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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
- Part of
parent
. See documentation ofprojectsId
. - Name string
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Proxy
Uri string - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- Pulumi
Labels map[string]string - The combination of labels configured directly on the resource and default labels configured on the provider.
- State string
- (Output) Output only. The state of this instance upgrade history entry.
- Update
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Upgrade
Histories []InstanceUpgrade History Args - Output only. The upgrade history of this instance. Structure is documented below.
- create
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator String
- Output only. Email address of entity that sent original CreateInstance request.
- desired
State String - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable
Proxy BooleanAccess - Optional. If true, the workbench instance will not register with the proxy.
- 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.
- gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- health
Infos List<InstanceHealth Info> - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health
State String - Output only. Instance health_state.
- instance
Id String - Required. User-defined unique ID of this instance.
- instance
Owners List<String> - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels Map<String,String>
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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
- Part of
parent
. See documentation ofprojectsId
. - name String
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- proxy
Uri String - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi
Labels Map<String,String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- state String
- (Output) Output only. The state of this instance upgrade history entry.
- update
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade
Histories List<InstanceUpgrade History> - Output only. The upgrade history of this instance. Structure is documented below.
- create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator string
- Output only. Email address of entity that sent original CreateInstance request.
- desired
State string - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable
Proxy booleanAccess - Optional. If true, the workbench instance will not register with the proxy.
- 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.
- gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- health
Infos InstanceHealth Info[] - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health
State string - Output only. Instance health_state.
- instance
Id string - Required. User-defined unique ID of this instance.
- instance
Owners string[] - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels {[key: string]: string}
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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
- Part of
parent
. See documentation ofprojectsId
. - name string
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project string
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- proxy
Uri string - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi
Labels {[key: string]: string} - The combination of labels configured directly on the resource and default labels configured on the provider.
- state string
- (Output) Output only. The state of this instance upgrade history entry.
- update
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade
Histories InstanceUpgrade History[] - Output only. The upgrade history of this instance. Structure is documented below.
- create_
time str - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator str
- Output only. Email address of entity that sent original CreateInstance request.
- desired_
state str - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable_
proxy_ boolaccess - Optional. If true, the workbench instance will not register with the proxy.
- 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.
- gce_
setup InstanceGce Setup Args - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- health_
infos Sequence[InstanceHealth Info Args] - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health_
state str - Output only. Instance health_state.
- instance_
id str - Required. User-defined unique ID of this instance.
- instance_
owners Sequence[str] - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels Mapping[str, str]
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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
- Part of
parent
. See documentation ofprojectsId
. - name str
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project str
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- proxy_
uri str - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi_
labels Mapping[str, str] - The combination of labels configured directly on the resource and default labels configured on the provider.
- state str
- (Output) Output only. The state of this instance upgrade history entry.
- update_
time str - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade_
histories Sequence[InstanceUpgrade History Args] - Output only. The upgrade history of this instance. Structure is documented below.
- create
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- creator String
- Output only. Email address of entity that sent original CreateInstance request.
- desired
State String - Desired state of the Workbench Instance. Set this field to
ACTIVE
to start the Instance, andSTOPPED
to stop the Instance. - disable
Proxy BooleanAccess - Optional. If true, the workbench instance will not register with the proxy.
- 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.
- gce
Setup Property Map - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- health
Infos List<Property Map> - 'Output only. Additional information about instance health. Example: healthInfo": { "docker_proxy_agent_status": "1", "docker_status": "1", "jupyterlab_api_status": "-1", "jupyterlab_status": "-1", "updated": "2020-10-18 09:40:03.573409" }'
- health
State String - Output only. Instance health_state.
- instance
Id String - Required. User-defined unique ID of this instance.
- instance
Owners List<String> - 'Optional. Input only. The owner of this instance after creation. Format:
alias@example.com
Currently supports one owner only. If not specified, all of the service account users of your VM instance''s service account can use the instance.' - labels Map<String>
Optional. Labels to apply to this instance. These can be later modified by the UpdateInstance method.
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
- Part of
parent
. See documentation ofprojectsId
. - name String
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project String
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- proxy
Uri String - Output only. The proxy endpoint that is used to access the Jupyter notebook.
- pulumi
Labels Map<String> - The combination of labels configured directly on the resource and default labels configured on the provider.
- state String
- (Output) Output only. The state of this instance upgrade history entry.
- update
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- upgrade
Histories List<Property Map> - Output only. The upgrade history of this instance. Structure is documented below.
Supporting Types
InstanceGceSetup, InstanceGceSetupArgs
- Accelerator
Configs List<InstanceGce Setup Accelerator Config> - The hardware accelerators used on this instance. If you use accelerators, make sure that your configuration has
enough vCPUs and memory to support the
machine_type
you have selected. Currently supports only one accelerator configuration. Structure is documented below. - Boot
Disk InstanceGce Setup Boot Disk - The definition of a boot disk. Structure is documented below.
- Container
Image InstanceGce Setup Container Image - Use a container image to start the workbench instance. Structure is documented below.
- Data
Disks InstanceGce Setup Data Disks - Data disks attached to the VM instance. Currently supports only one data disk. Structure is documented below.
- Disable
Public boolIp - Optional. If true, no external IP will be assigned to this VM instance.
- Enable
Ip boolForwarding - Optional. Flag to enable ip forwarding or not, default false/off. https://cloud.google.com/vpc/docs/using-routes#canipforward
- Machine
Type string - Optional. The machine type of the VM instance. https://cloud.google.com/compute/docs/machine-resource
- Metadata Dictionary<string, string>
- Optional. Custom metadata to apply to this instance.
- Network
Interfaces List<InstanceGce Setup Network Interface> - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- Service
Accounts List<InstanceGce Setup Service Account> - The service account that serves as an identity for the VM instance. Currently supports only one service account. Structure is documented below.
- Shielded
Instance InstanceConfig Gce Setup Shielded Instance Config - A set of Shielded Instance options. See Images using supported Shielded VM features. Not all combinations are valid. Structure is documented below.
- List<string>
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- Vm
Image InstanceGce Setup Vm Image - Definition of a custom Compute Engine virtual machine image for starting a workbench instance with the environment installed directly on the VM. Structure is documented below.
- Accelerator
Configs []InstanceGce Setup Accelerator Config - The hardware accelerators used on this instance. If you use accelerators, make sure that your configuration has
enough vCPUs and memory to support the
machine_type
you have selected. Currently supports only one accelerator configuration. Structure is documented below. - Boot
Disk InstanceGce Setup Boot Disk - The definition of a boot disk. Structure is documented below.
- Container
Image InstanceGce Setup Container Image - Use a container image to start the workbench instance. Structure is documented below.
- Data
Disks InstanceGce Setup Data Disks - Data disks attached to the VM instance. Currently supports only one data disk. Structure is documented below.
- Disable
Public boolIp - Optional. If true, no external IP will be assigned to this VM instance.
- Enable
Ip boolForwarding - Optional. Flag to enable ip forwarding or not, default false/off. https://cloud.google.com/vpc/docs/using-routes#canipforward
- Machine
Type string - Optional. The machine type of the VM instance. https://cloud.google.com/compute/docs/machine-resource
- Metadata map[string]string
- Optional. Custom metadata to apply to this instance.
- Network
Interfaces []InstanceGce Setup Network Interface - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- Service
Accounts []InstanceGce Setup Service Account - The service account that serves as an identity for the VM instance. Currently supports only one service account. Structure is documented below.
- Shielded
Instance InstanceConfig Gce Setup Shielded Instance Config - A set of Shielded Instance options. See Images using supported Shielded VM features. Not all combinations are valid. Structure is documented below.
- []string
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- Vm
Image InstanceGce Setup Vm Image - Definition of a custom Compute Engine virtual machine image for starting a workbench instance with the environment installed directly on the VM. Structure is documented below.
- accelerator
Configs List<InstanceGce Setup Accelerator Config> - The hardware accelerators used on this instance. If you use accelerators, make sure that your configuration has
enough vCPUs and memory to support the
machine_type
you have selected. Currently supports only one accelerator configuration. Structure is documented below. - boot
Disk InstanceGce Setup Boot Disk - The definition of a boot disk. Structure is documented below.
- container
Image InstanceGce Setup Container Image - Use a container image to start the workbench instance. Structure is documented below.
- data
Disks InstanceGce Setup Data Disks - Data disks attached to the VM instance. Currently supports only one data disk. Structure is documented below.
- disable
Public BooleanIp - Optional. If true, no external IP will be assigned to this VM instance.
- enable
Ip BooleanForwarding - Optional. Flag to enable ip forwarding or not, default false/off. https://cloud.google.com/vpc/docs/using-routes#canipforward
- machine
Type String - Optional. The machine type of the VM instance. https://cloud.google.com/compute/docs/machine-resource
- metadata Map<String,String>
- Optional. Custom metadata to apply to this instance.
- network
Interfaces List<InstanceGce Setup Network Interface> - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service
Accounts List<InstanceGce Setup Service Account> - The service account that serves as an identity for the VM instance. Currently supports only one service account. Structure is documented below.
- shielded
Instance InstanceConfig Gce Setup Shielded Instance Config - A set of Shielded Instance options. See Images using supported Shielded VM features. Not all combinations are valid. Structure is documented below.
- List<String>
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm
Image InstanceGce Setup Vm Image - Definition of a custom Compute Engine virtual machine image for starting a workbench instance with the environment installed directly on the VM. Structure is documented below.
- accelerator
Configs InstanceGce Setup Accelerator Config[] - The hardware accelerators used on this instance. If you use accelerators, make sure that your configuration has
enough vCPUs and memory to support the
machine_type
you have selected. Currently supports only one accelerator configuration. Structure is documented below. - boot
Disk InstanceGce Setup Boot Disk - The definition of a boot disk. Structure is documented below.
- container
Image InstanceGce Setup Container Image - Use a container image to start the workbench instance. Structure is documented below.
- data
Disks InstanceGce Setup Data Disks - Data disks attached to the VM instance. Currently supports only one data disk. Structure is documented below.
- disable
Public booleanIp - Optional. If true, no external IP will be assigned to this VM instance.
- enable
Ip booleanForwarding - Optional. Flag to enable ip forwarding or not, default false/off. https://cloud.google.com/vpc/docs/using-routes#canipforward
- machine
Type string - Optional. The machine type of the VM instance. https://cloud.google.com/compute/docs/machine-resource
- metadata {[key: string]: string}
- Optional. Custom metadata to apply to this instance.
- network
Interfaces InstanceGce Setup Network Interface[] - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service
Accounts InstanceGce Setup Service Account[] - The service account that serves as an identity for the VM instance. Currently supports only one service account. Structure is documented below.
- shielded
Instance InstanceConfig Gce Setup Shielded Instance Config - A set of Shielded Instance options. See Images using supported Shielded VM features. Not all combinations are valid. Structure is documented below.
- string[]
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm
Image InstanceGce Setup Vm Image - Definition of a custom Compute Engine virtual machine image for starting a workbench instance with the environment installed directly on the VM. Structure is documented below.
- accelerator_
configs Sequence[InstanceGce Setup Accelerator Config] - The hardware accelerators used on this instance. If you use accelerators, make sure that your configuration has
enough vCPUs and memory to support the
machine_type
you have selected. Currently supports only one accelerator configuration. Structure is documented below. - boot_
disk InstanceGce Setup Boot Disk - The definition of a boot disk. Structure is documented below.
- container_
image InstanceGce Setup Container Image - Use a container image to start the workbench instance. Structure is documented below.
- data_
disks InstanceGce Setup Data Disks - Data disks attached to the VM instance. Currently supports only one data disk. Structure is documented below.
- disable_
public_ boolip - Optional. If true, no external IP will be assigned to this VM instance.
- enable_
ip_ boolforwarding - Optional. Flag to enable ip forwarding or not, default false/off. https://cloud.google.com/vpc/docs/using-routes#canipforward
- machine_
type str - Optional. The machine type of the VM instance. https://cloud.google.com/compute/docs/machine-resource
- metadata Mapping[str, str]
- Optional. Custom metadata to apply to this instance.
- network_
interfaces Sequence[InstanceGce Setup Network Interface] - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service_
accounts Sequence[InstanceGce Setup Service Account] - The service account that serves as an identity for the VM instance. Currently supports only one service account. Structure is documented below.
- shielded_
instance_ Instanceconfig Gce Setup Shielded Instance Config - A set of Shielded Instance options. See Images using supported Shielded VM features. Not all combinations are valid. Structure is documented below.
- Sequence[str]
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm_
image InstanceGce Setup Vm Image - Definition of a custom Compute Engine virtual machine image for starting a workbench instance with the environment installed directly on the VM. Structure is documented below.
- accelerator
Configs List<Property Map> - The hardware accelerators used on this instance. If you use accelerators, make sure that your configuration has
enough vCPUs and memory to support the
machine_type
you have selected. Currently supports only one accelerator configuration. Structure is documented below. - boot
Disk Property Map - The definition of a boot disk. Structure is documented below.
- container
Image Property Map - Use a container image to start the workbench instance. Structure is documented below.
- data
Disks Property Map - Data disks attached to the VM instance. Currently supports only one data disk. Structure is documented below.
- disable
Public BooleanIp - Optional. If true, no external IP will be assigned to this VM instance.
- enable
Ip BooleanForwarding - Optional. Flag to enable ip forwarding or not, default false/off. https://cloud.google.com/vpc/docs/using-routes#canipforward
- machine
Type String - Optional. The machine type of the VM instance. https://cloud.google.com/compute/docs/machine-resource
- metadata Map<String>
- Optional. Custom metadata to apply to this instance.
- network
Interfaces List<Property Map> - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service
Accounts List<Property Map> - The service account that serves as an identity for the VM instance. Currently supports only one service account. Structure is documented below.
- shielded
Instance Property MapConfig - A set of Shielded Instance options. See Images using supported Shielded VM features. Not all combinations are valid. Structure is documented below.
- List<String>
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm
Image Property Map - Definition of a custom Compute Engine virtual machine image for starting a workbench instance with the environment installed directly on the VM. Structure is documented below.
InstanceGceSetupAcceleratorConfig, InstanceGceSetupAcceleratorConfigArgs
- Core
Count string - Optional. Count of cores of this accelerator.
- Type string
- Optional. Type of this accelerator.
Possible values are:
NVIDIA_TESLA_P100
,NVIDIA_TESLA_V100
,NVIDIA_TESLA_P4
,NVIDIA_TESLA_T4
,NVIDIA_TESLA_A100
,NVIDIA_A100_80GB
,NVIDIA_L4
,NVIDIA_TESLA_T4_VWS
,NVIDIA_TESLA_P100_VWS
,NVIDIA_TESLA_P4_VWS
.
- Core
Count string - Optional. Count of cores of this accelerator.
- Type string
- Optional. Type of this accelerator.
Possible values are:
NVIDIA_TESLA_P100
,NVIDIA_TESLA_V100
,NVIDIA_TESLA_P4
,NVIDIA_TESLA_T4
,NVIDIA_TESLA_A100
,NVIDIA_A100_80GB
,NVIDIA_L4
,NVIDIA_TESLA_T4_VWS
,NVIDIA_TESLA_P100_VWS
,NVIDIA_TESLA_P4_VWS
.
- core
Count String - Optional. Count of cores of this accelerator.
- type String
- Optional. Type of this accelerator.
Possible values are:
NVIDIA_TESLA_P100
,NVIDIA_TESLA_V100
,NVIDIA_TESLA_P4
,NVIDIA_TESLA_T4
,NVIDIA_TESLA_A100
,NVIDIA_A100_80GB
,NVIDIA_L4
,NVIDIA_TESLA_T4_VWS
,NVIDIA_TESLA_P100_VWS
,NVIDIA_TESLA_P4_VWS
.
- core
Count string - Optional. Count of cores of this accelerator.
- type string
- Optional. Type of this accelerator.
Possible values are:
NVIDIA_TESLA_P100
,NVIDIA_TESLA_V100
,NVIDIA_TESLA_P4
,NVIDIA_TESLA_T4
,NVIDIA_TESLA_A100
,NVIDIA_A100_80GB
,NVIDIA_L4
,NVIDIA_TESLA_T4_VWS
,NVIDIA_TESLA_P100_VWS
,NVIDIA_TESLA_P4_VWS
.
- core_
count str - Optional. Count of cores of this accelerator.
- type str
- Optional. Type of this accelerator.
Possible values are:
NVIDIA_TESLA_P100
,NVIDIA_TESLA_V100
,NVIDIA_TESLA_P4
,NVIDIA_TESLA_T4
,NVIDIA_TESLA_A100
,NVIDIA_A100_80GB
,NVIDIA_L4
,NVIDIA_TESLA_T4_VWS
,NVIDIA_TESLA_P100_VWS
,NVIDIA_TESLA_P4_VWS
.
- core
Count String - Optional. Count of cores of this accelerator.
- type String
- Optional. Type of this accelerator.
Possible values are:
NVIDIA_TESLA_P100
,NVIDIA_TESLA_V100
,NVIDIA_TESLA_P4
,NVIDIA_TESLA_T4
,NVIDIA_TESLA_A100
,NVIDIA_A100_80GB
,NVIDIA_L4
,NVIDIA_TESLA_T4_VWS
,NVIDIA_TESLA_P100_VWS
,NVIDIA_TESLA_P4_VWS
.
InstanceGceSetupBootDisk, InstanceGceSetupBootDiskArgs
- Disk
Encryption string - Optional. Input only. Disk encryption method used on the boot and
data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - Disk
Size stringGb - Optional. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to the recommended value of 150GB.
- Disk
Type string - Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key string - 'Optional. The KMS key used to encrypt the disks, only
applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- Disk
Encryption string - Optional. Input only. Disk encryption method used on the boot and
data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - Disk
Size stringGb - Optional. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to the recommended value of 150GB.
- Disk
Type string - Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key string - 'Optional. The KMS key used to encrypt the disks, only
applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk
Encryption String - Optional. Input only. Disk encryption method used on the boot and
data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk
Size StringGb - Optional. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to the recommended value of 150GB.
- disk
Type String - Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key String - 'Optional. The KMS key used to encrypt the disks, only
applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk
Encryption string - Optional. Input only. Disk encryption method used on the boot and
data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk
Size stringGb - Optional. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to the recommended value of 150GB.
- disk
Type string - Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key string - 'Optional. The KMS key used to encrypt the disks, only
applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk_
encryption str - Optional. Input only. Disk encryption method used on the boot and
data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk_
size_ strgb - Optional. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to the recommended value of 150GB.
- disk_
type str - Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms_
key str - 'Optional. The KMS key used to encrypt the disks, only
applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk
Encryption String - Optional. Input only. Disk encryption method used on the boot and
data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk
Size StringGb - Optional. The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to the recommended value of 150GB.
- disk
Type String - Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key String - 'Optional. The KMS key used to encrypt the disks, only
applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
InstanceGceSetupContainerImage, InstanceGceSetupContainerImageArgs
- Repository string
- The path to the container image repository. For example: gcr.io/{project_id}/{imageName}
- Tag string
- The tag of the container image. If not specified, this defaults to the latest tag.
- Repository string
- The path to the container image repository. For example: gcr.io/{project_id}/{imageName}
- Tag string
- The tag of the container image. If not specified, this defaults to the latest tag.
- repository String
- The path to the container image repository. For example: gcr.io/{project_id}/{imageName}
- tag String
- The tag of the container image. If not specified, this defaults to the latest tag.
- repository string
- The path to the container image repository. For example: gcr.io/{project_id}/{imageName}
- tag string
- The tag of the container image. If not specified, this defaults to the latest tag.
- repository str
- The path to the container image repository. For example: gcr.io/{project_id}/{imageName}
- tag str
- The tag of the container image. If not specified, this defaults to the latest tag.
- repository String
- The path to the container image repository. For example: gcr.io/{project_id}/{imageName}
- tag String
- The tag of the container image. If not specified, this defaults to the latest tag.
InstanceGceSetupDataDisks, InstanceGceSetupDataDisksArgs
- Disk
Encryption string - Optional. Input only. Disk encryption method used on the boot
and data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - Disk
Size stringGb - Optional. The size of the disk in GB attached to this VM instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
- Disk
Type string - Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key string - 'Optional. The KMS key used to encrypt the disks,
only applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- Disk
Encryption string - Optional. Input only. Disk encryption method used on the boot
and data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - Disk
Size stringGb - Optional. The size of the disk in GB attached to this VM instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
- Disk
Type string - Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key string - 'Optional. The KMS key used to encrypt the disks,
only applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk
Encryption String - Optional. Input only. Disk encryption method used on the boot
and data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk
Size StringGb - Optional. The size of the disk in GB attached to this VM instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
- disk
Type String - Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key String - 'Optional. The KMS key used to encrypt the disks,
only applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk
Encryption string - Optional. Input only. Disk encryption method used on the boot
and data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk
Size stringGb - Optional. The size of the disk in GB attached to this VM instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
- disk
Type string - Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key string - 'Optional. The KMS key used to encrypt the disks,
only applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk_
encryption str - Optional. Input only. Disk encryption method used on the boot
and data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk_
size_ strgb - Optional. The size of the disk in GB attached to this VM instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
- disk_
type str - Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms_
key str - 'Optional. The KMS key used to encrypt the disks,
only applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
- disk
Encryption String - Optional. Input only. Disk encryption method used on the boot
and data disks, defaults to GMEK.
Possible values are:
GMEK
,CMEK
. - disk
Size StringGb - Optional. The size of the disk in GB attached to this VM instance, up to a maximum of 64000 GB (64 TB). If not specified, this defaults to 100.
- disk
Type String - Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key String - 'Optional. The KMS key used to encrypt the disks,
only applicable if disk_encryption is CMEK. Format:
projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
Learn more about using your own encryption keys.'
InstanceGceSetupNetworkInterface, InstanceGceSetupNetworkInterfaceArgs
- Access
Configs List<InstanceGce Setup Network Interface Access Config> - Optional. An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If no accessConfigs specified, the instance will have an external internet access through an ephemeral external IP address. Structure is documented below.
- Network string
- Optional. The name of the VPC that this VM instance is in.
- Nic
Type string - Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - Subnet string
- Optional. The name of the subnet that this VM instance is in.
- Access
Configs []InstanceGce Setup Network Interface Access Config - Optional. An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If no accessConfigs specified, the instance will have an external internet access through an ephemeral external IP address. Structure is documented below.
- Network string
- Optional. The name of the VPC that this VM instance is in.
- Nic
Type string - Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - Subnet string
- Optional. The name of the subnet that this VM instance is in.
- access
Configs List<InstanceGce Setup Network Interface Access Config> - Optional. An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If no accessConfigs specified, the instance will have an external internet access through an ephemeral external IP address. Structure is documented below.
- network String
- Optional. The name of the VPC that this VM instance is in.
- nic
Type String - Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet String
- Optional. The name of the subnet that this VM instance is in.
- access
Configs InstanceGce Setup Network Interface Access Config[] - Optional. An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If no accessConfigs specified, the instance will have an external internet access through an ephemeral external IP address. Structure is documented below.
- network string
- Optional. The name of the VPC that this VM instance is in.
- nic
Type string - Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet string
- Optional. The name of the subnet that this VM instance is in.
- access_
configs Sequence[InstanceGce Setup Network Interface Access Config] - Optional. An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If no accessConfigs specified, the instance will have an external internet access through an ephemeral external IP address. Structure is documented below.
- network str
- Optional. The name of the VPC that this VM instance is in.
- nic_
type str - Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet str
- Optional. The name of the subnet that this VM instance is in.
- access
Configs List<Property Map> - Optional. An array of configurations for this interface. Currently, only one access config, ONE_TO_ONE_NAT, is supported. If no accessConfigs specified, the instance will have an external internet access through an ephemeral external IP address. Structure is documented below.
- network String
- Optional. The name of the VPC that this VM instance is in.
- nic
Type String - Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet String
- Optional. The name of the subnet that this VM instance is in.
InstanceGceSetupNetworkInterfaceAccessConfig, InstanceGceSetupNetworkInterfaceAccessConfigArgs
- External
Ip string - An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.
- External
Ip string - An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.
- external
Ip String - An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.
- external
Ip string - An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.
- external_
ip str - An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.
- external
Ip String - An external IP address associated with this instance. Specify an unused static external IP address available to the project or leave this field undefined to use an IP from a shared ephemeral IP address pool. If you specify a static external IP address, it must live in the same region as the zone of the instance.
InstanceGceSetupServiceAccount, InstanceGceSetupServiceAccountArgs
InstanceGceSetupShieldedInstanceConfig, InstanceGceSetupShieldedInstanceConfigArgs
- Enable
Integrity boolMonitoring - Optional. Defines whether the VM instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the VM instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the VM instance is created. Enabled by default.
- Enable
Secure boolBoot - Optional. Defines whether the VM instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. Disabled by default.
- Enable
Vtpm bool - Optional. Defines whether the VM instance has the vTPM enabled. Enabled by default.
- Enable
Integrity boolMonitoring - Optional. Defines whether the VM instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the VM instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the VM instance is created. Enabled by default.
- Enable
Secure boolBoot - Optional. Defines whether the VM instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. Disabled by default.
- Enable
Vtpm bool - Optional. Defines whether the VM instance has the vTPM enabled. Enabled by default.
- enable
Integrity BooleanMonitoring - Optional. Defines whether the VM instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the VM instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the VM instance is created. Enabled by default.
- enable
Secure BooleanBoot - Optional. Defines whether the VM instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. Disabled by default.
- enable
Vtpm Boolean - Optional. Defines whether the VM instance has the vTPM enabled. Enabled by default.
- enable
Integrity booleanMonitoring - Optional. Defines whether the VM instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the VM instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the VM instance is created. Enabled by default.
- enable
Secure booleanBoot - Optional. Defines whether the VM instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. Disabled by default.
- enable
Vtpm boolean - Optional. Defines whether the VM instance has the vTPM enabled. Enabled by default.
- enable_
integrity_ boolmonitoring - Optional. Defines whether the VM instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the VM instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the VM instance is created. Enabled by default.
- enable_
secure_ boolboot - Optional. Defines whether the VM instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. Disabled by default.
- enable_
vtpm bool - Optional. Defines whether the VM instance has the vTPM enabled. Enabled by default.
- enable
Integrity BooleanMonitoring - Optional. Defines whether the VM instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the VM instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the VM instance is created. Enabled by default.
- enable
Secure BooleanBoot - Optional. Defines whether the VM instance has Secure Boot enabled. Secure Boot helps ensure that the system only runs authentic software by verifying the digital signature of all boot components, and halting the boot process if signature verification fails. Disabled by default.
- enable
Vtpm Boolean - Optional. Defines whether the VM instance has the vTPM enabled. Enabled by default.
InstanceGceSetupVmImage, InstanceGceSetupVmImageArgs
InstanceUpgradeHistory, InstanceUpgradeHistoryArgs
- Action string
- Optional. Action. Rolloback or Upgrade.
- Container
Image string - Optional. The container image before this instance upgrade.
- Create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Framework string
- Optional. The framework of this workbench instance.
- Snapshot string
- Optional. The snapshot of the boot disk of this workbench instance before upgrade.
- State string
- (Output) Output only. The state of this instance upgrade history entry.
- Target
Version string - Optional. Target VM Version, like m63.
- Version string
- Optional. The version of the workbench instance before this upgrade.
- Vm
Image string - Optional. The VM image before this instance upgrade.
- Action string
- Optional. Action. Rolloback or Upgrade.
- Container
Image string - Optional. The container image before this instance upgrade.
- Create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- Framework string
- Optional. The framework of this workbench instance.
- Snapshot string
- Optional. The snapshot of the boot disk of this workbench instance before upgrade.
- State string
- (Output) Output only. The state of this instance upgrade history entry.
- Target
Version string - Optional. Target VM Version, like m63.
- Version string
- Optional. The version of the workbench instance before this upgrade.
- Vm
Image string - Optional. The VM image before this instance upgrade.
- action String
- Optional. Action. Rolloback or Upgrade.
- container
Image String - Optional. The container image before this instance upgrade.
- create
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- framework String
- Optional. The framework of this workbench instance.
- snapshot String
- Optional. The snapshot of the boot disk of this workbench instance before upgrade.
- state String
- (Output) Output only. The state of this instance upgrade history entry.
- target
Version String - Optional. Target VM Version, like m63.
- version String
- Optional. The version of the workbench instance before this upgrade.
- vm
Image String - Optional. The VM image before this instance upgrade.
- action string
- Optional. Action. Rolloback or Upgrade.
- container
Image string - Optional. The container image before this instance upgrade.
- create
Time string - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- framework string
- Optional. The framework of this workbench instance.
- snapshot string
- Optional. The snapshot of the boot disk of this workbench instance before upgrade.
- state string
- (Output) Output only. The state of this instance upgrade history entry.
- target
Version string - Optional. Target VM Version, like m63.
- version string
- Optional. The version of the workbench instance before this upgrade.
- vm
Image string - Optional. The VM image before this instance upgrade.
- action str
- Optional. Action. Rolloback or Upgrade.
- container_
image str - Optional. The container image before this instance upgrade.
- create_
time str - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- framework str
- Optional. The framework of this workbench instance.
- snapshot str
- Optional. The snapshot of the boot disk of this workbench instance before upgrade.
- state str
- (Output) Output only. The state of this instance upgrade history entry.
- target_
version str - Optional. Target VM Version, like m63.
- version str
- Optional. The version of the workbench instance before this upgrade.
- vm_
image str - Optional. The VM image before this instance upgrade.
- action String
- Optional. Action. Rolloback or Upgrade.
- container
Image String - Optional. The container image before this instance upgrade.
- create
Time String - An RFC3339 timestamp in UTC time. This in the format of yyyy-MM-ddTHH:mm:ss.SSSZ. The milliseconds portion (".SSS") is optional.
- framework String
- Optional. The framework of this workbench instance.
- snapshot String
- Optional. The snapshot of the boot disk of this workbench instance before upgrade.
- state String
- (Output) Output only. The state of this instance upgrade history entry.
- target
Version String - Optional. Target VM Version, like m63.
- version String
- Optional. The version of the workbench instance before this upgrade.
- vm
Image String - Optional. The VM image before this instance upgrade.
Import
Instance can be imported using any of these accepted formats:
projects/{{project}}/locations/{{location}}/instances/{{name}}
{{project}}/{{location}}/{{name}}
{{location}}/{{name}}
When using the pulumi import
command, Instance can be imported using one of the formats above. For example:
$ pulumi import gcp:workbench/instance:Instance default projects/{{project}}/locations/{{location}}/instances/{{name}}
$ pulumi import gcp:workbench/instance:Instance default {{project}}/{{location}}/{{name}}
$ pulumi import gcp:workbench/instance:Instance default {{location}}/{{name}}
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.