gcp.workbench.Instance
Explore with Pulumi AI
- Example Usage
- Workbench Instance Basic
- Workbench Instance Basic Container
- Workbench Instance Basic Gpu
- Workbench Instance Labels Stopped
- Workbench Instance Full
- Workbench Instance Confidential Compute
- Create Instance Resource
- Constructor syntax
- Constructor example
- Instance Resource Properties
- Inputs
- Outputs
- Look up Existing Instance Resource
- Supporting Types
- Import
- Package Details
A Workbench instance.
To get more information about Instance, see:
- API documentation
- How-to Guides
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",
enableThirdPartyIdentity: true,
}, {
dependsOn: [
myNetwork,
mySubnetwork,
static,
actAsPermission,
],
});
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",
enable_third_party_identity=True,
opts = pulumi.ResourceOptions(depends_on=[
my_network,
my_subnetwork,
static,
act_as_permission,
]))
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
}
actAsPermission, 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"),
EnableThirdPartyIdentity: pulumi.Bool(true),
}, pulumi.DependsOn([]pulumi.Resource{
myNetwork,
mySubnetwork,
static,
actAsPermission,
}))
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",
EnableThirdPartyIdentity = true,
}, new CustomResourceOptions
{
DependsOn =
{
myNetwork,
mySubnetwork,
@static,
actAsPermission,
},
});
});
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 com.pulumi.resources.CustomResourceOptions;
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")
.enableThirdPartyIdentity(true)
.build(), CustomResourceOptions.builder()
.dependsOn(
myNetwork,
mySubnetwork,
static_,
actAsPermission)
.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
enableThirdPartyIdentity: 'true'
options:
dependsOn:
- ${myNetwork}
- ${mySubnetwork}
- ${static}
- ${actAsPermission}
Workbench Instance Confidential Compute
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: "n2d-standard-2",
shieldedInstanceConfig: {
enableSecureBoot: true,
enableVtpm: true,
enableIntegrityMonitoring: true,
},
metadata: {
terraform: "true",
},
confidentialInstanceConfig: {
confidentialInstanceType: "SEV",
},
},
});
import pulumi
import pulumi_gcp as gcp
instance = gcp.workbench.Instance("instance",
name="workbench-instance",
location="us-central1-a",
gce_setup={
"machine_type": "n2d-standard-2",
"shielded_instance_config": {
"enable_secure_boot": True,
"enable_vtpm": True,
"enable_integrity_monitoring": True,
},
"metadata": {
"terraform": "true",
},
"confidential_instance_config": {
"confidential_instance_type": "SEV",
},
})
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("n2d-standard-2"),
ShieldedInstanceConfig: &workbench.InstanceGceSetupShieldedInstanceConfigArgs{
EnableSecureBoot: pulumi.Bool(true),
EnableVtpm: pulumi.Bool(true),
EnableIntegrityMonitoring: pulumi.Bool(true),
},
Metadata: pulumi.StringMap{
"terraform": pulumi.String("true"),
},
ConfidentialInstanceConfig: &workbench.InstanceGceSetupConfidentialInstanceConfigArgs{
ConfidentialInstanceType: pulumi.String("SEV"),
},
},
})
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 = "n2d-standard-2",
ShieldedInstanceConfig = new Gcp.Workbench.Inputs.InstanceGceSetupShieldedInstanceConfigArgs
{
EnableSecureBoot = true,
EnableVtpm = true,
EnableIntegrityMonitoring = true,
},
Metadata =
{
{ "terraform", "true" },
},
ConfidentialInstanceConfig = new Gcp.Workbench.Inputs.InstanceGceSetupConfidentialInstanceConfigArgs
{
ConfidentialInstanceType = "SEV",
},
},
});
});
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 com.pulumi.gcp.workbench.inputs.InstanceGceSetupConfidentialInstanceConfigArgs;
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("n2d-standard-2")
.shieldedInstanceConfig(InstanceGceSetupShieldedInstanceConfigArgs.builder()
.enableSecureBoot(true)
.enableVtpm(true)
.enableIntegrityMonitoring(true)
.build())
.metadata(Map.of("terraform", "true"))
.confidentialInstanceConfig(InstanceGceSetupConfidentialInstanceConfigArgs.builder()
.confidentialInstanceType("SEV")
.build())
.build())
.build());
}
}
resources:
instance:
type: gcp:workbench:Instance
properties:
name: workbench-instance
location: us-central1-a
gceSetup:
machineType: n2d-standard-2
shieldedInstanceConfig:
enableSecureBoot: true
enableVtpm: true
enableIntegrityMonitoring: true
metadata:
terraform: 'true'
confidentialInstanceConfig:
confidentialInstanceType: SEV
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,
enable_third_party_identity: 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
This property is required. string - The unique name of the resource.
- args
This property is required. InstanceArgs - The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- resource_name
This property is required. str - The unique name of the resource.
- args
This property is required. 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
This property is required. string - The unique name of the resource.
- args
This property is required. InstanceArgs - The arguments to resource properties.
- opts ResourceOption
- Bag of options to control resource's behavior.
- name
This property is required. string - The unique name of the resource.
- args
This property is required. InstanceArgs - The arguments to resource properties.
- opts CustomResourceOptions
- Bag of options to control resource's behavior.
- name
This property is required. String - The unique name of the resource.
- args
This property is required. 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,
EnableThirdPartyIdentity = 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",
},
ConfidentialInstanceConfig = new Gcp.Workbench.Inputs.InstanceGceSetupConfidentialInstanceConfigArgs
{
ConfidentialInstanceType = "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),
EnableThirdPartyIdentity: 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"),
},
ConfidentialInstanceConfig: &workbench.InstanceGceSetupConfidentialInstanceConfigArgs{
ConfidentialInstanceType: 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)
.enableThirdPartyIdentity(false)
.gceSetup(InstanceGceSetupArgs.builder()
.acceleratorConfigs(InstanceGceSetupAcceleratorConfigArgs.builder()
.coreCount("string")
.type("string")
.build())
.bootDisk(InstanceGceSetupBootDiskArgs.builder()
.diskEncryption("string")
.diskSizeGb("string")
.diskType("string")
.kmsKey("string")
.build())
.confidentialInstanceConfig(InstanceGceSetupConfidentialInstanceConfigArgs.builder()
.confidentialInstanceType("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,
enable_third_party_identity=False,
gce_setup={
"accelerator_configs": [{
"core_count": "string",
"type": "string",
}],
"boot_disk": {
"disk_encryption": "string",
"disk_size_gb": "string",
"disk_type": "string",
"kms_key": "string",
},
"confidential_instance_config": {
"confidential_instance_type": "string",
},
"container_image": {
"repository": "string",
"tag": "string",
},
"data_disks": {
"disk_encryption": "string",
"disk_size_gb": "string",
"disk_type": "string",
"kms_key": "string",
},
"disable_public_ip": False,
"enable_ip_forwarding": False,
"machine_type": "string",
"metadata": {
"string": "string",
},
"network_interfaces": [{
"access_configs": [{
"external_ip": "string",
}],
"network": "string",
"nic_type": "string",
"subnet": "string",
}],
"service_accounts": [{
"email": "string",
"scopes": ["string"],
}],
"shielded_instance_config": {
"enable_integrity_monitoring": False,
"enable_secure_boot": False,
"enable_vtpm": False,
},
"tags": ["string"],
"vm_image": {
"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,
enableThirdPartyIdentity: false,
gceSetup: {
acceleratorConfigs: [{
coreCount: "string",
type: "string",
}],
bootDisk: {
diskEncryption: "string",
diskSizeGb: "string",
diskType: "string",
kmsKey: "string",
},
confidentialInstanceConfig: {
confidentialInstanceType: "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
enableThirdPartyIdentity: false
gceSetup:
acceleratorConfigs:
- coreCount: string
type: string
bootDisk:
diskEncryption: string
diskSizeGb: string
diskType: string
kmsKey: string
confidentialInstanceConfig:
confidentialInstanceType: 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
In Python, inputs that are objects can be passed either as argument classes or as dictionary literals.
The Instance resource accepts the following input properties:
- Location
This property is required. Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- Optional. If true, the workbench instance will not register with the proxy.
- Enable
Third boolParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- Gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- Instance
Id Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- Instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project
Changes to this property will trigger replacement.
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- Location
This property is required. Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- Optional. If true, the workbench instance will not register with the proxy.
- Enable
Third boolParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- Instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project
Changes to this property will trigger replacement.
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location
This property is required. Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- Optional. If true, the workbench instance will not register with the proxy.
- enable
Third BooleanParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance
Id Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location
This property is required. Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- Optional. If true, the workbench instance will not register with the proxy.
- enable
Third booleanParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- gce
Setup InstanceGce Setup - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance
Id Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location
This property is required. Changes to this property will trigger replacement.
- 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_ access Changes to this property will trigger replacement.
- Optional. If true, the workbench instance will not register with the proxy.
- enable_
third_ boolparty_ identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance_
owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- The ID of the project in which the resource belongs. If it is not provided, the provider project is used.
- location
This property is required. Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- Optional. If true, the workbench instance will not register with the proxy.
- enable
Third BooleanParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- gce
Setup Property Map - The definition of how to configure a VM instance outside of Resources and Identity. Structure is documented below.
- instance
Id Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- 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,
enable_third_party_identity: Optional[bool] = 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)
resources: _: type: gcp:workbench:Instance get: id: ${id}
- name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - 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
This property is required. - The unique name of the resulting resource.
- id
This property is required. - The unique provider ID of the resource to lookup.
- name
This property is required. - The unique name of the resulting resource.
- id
This property is required. - 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
This property is required. - The unique name of the resulting resource.
- id
This property is required. - 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
This property is required. - The unique name of the resulting resource.
- id
This property is required. - 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 Access Changes to this property will trigger replacement.
- 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.
- Enable
Third boolParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- Instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- Part of
parent
. See documentation ofprojectsId
. - Name
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project
Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- 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.
- Enable
Third boolParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- Instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- Part of
parent
. See documentation ofprojectsId
. - Name
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- Project
Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- 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.
- enable
Third BooleanParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- Part of
parent
. See documentation ofprojectsId
. - name
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- 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.
- enable
Third booleanParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- Part of
parent
. See documentation ofprojectsId
. - name
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- 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_ access Changes to this property will trigger replacement.
- 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.
- enable_
third_ boolparty_ identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance_
owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- Part of
parent
. See documentation ofprojectsId
. - name
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- 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 Access Changes to this property will trigger replacement.
- 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.
- enable
Third BooleanParty Identity - Flag that specifies that a notebook can be accessed with third party identity provider.
- 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 Changes to this property will trigger replacement.
- Required. User-defined unique ID of this instance.
- instance
Owners Changes to this property will trigger replacement.
- '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. If specified, sets the access mode toSingle user
. For more details, see https://cloud.google.com/vertex-ai/docs/workbench/instances/manage-access-jupyterlab' - 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
Changes to this property will trigger replacement.
- Part of
parent
. See documentation ofprojectsId
. - name
Changes to this property will trigger replacement.
- The name of this workbench instance. Format:
projects/{project_id}/locations/{location}/instances/{instance_id}
- project
Changes to this property will trigger replacement.
- 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.
- Confidential
Instance Config Changes to this property will trigger replacement.
Gce Setup Confidential Instance Config - Confidential instance configuration. 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 Ip Changes to this property will trigger replacement.
- Optional. If true, no external IP will be assigned to this VM instance.
- Enable
Ip Forwarding Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
Gce Setup Network Interface> - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- Service
Accounts Changes to this property will trigger replacement.
Gce 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.
Changes to this property will trigger replacement.
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- Vm
Image Changes to this property will trigger replacement.
Gce 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.
- Confidential
Instance Config Changes to this property will trigger replacement.
Gce Setup Confidential Instance Config - Confidential instance configuration. 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 Ip Changes to this property will trigger replacement.
- Optional. If true, no external IP will be assigned to this VM instance.
- Enable
Ip Forwarding Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
Gce Setup Network Interface - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- Service
Accounts Changes to this property will trigger replacement.
Gce 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.
Changes to this property will trigger replacement.
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- Vm
Image Changes to this property will trigger replacement.
Gce 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.
- confidential
Instance Config Changes to this property will trigger replacement.
Gce Setup Confidential Instance Config - Confidential instance configuration. 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 Ip Changes to this property will trigger replacement.
- Optional. If true, no external IP will be assigned to this VM instance.
- enable
Ip Forwarding Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
Gce Setup Network Interface> - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service
Accounts Changes to this property will trigger replacement.
Gce 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.
Changes to this property will trigger replacement.
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm
Image Changes to this property will trigger replacement.
Gce 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.
- confidential
Instance Config Changes to this property will trigger replacement.
Gce Setup Confidential Instance Config - Confidential instance configuration. 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 Ip Changes to this property will trigger replacement.
- Optional. If true, no external IP will be assigned to this VM instance.
- enable
Ip Forwarding Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
Gce Setup Network Interface[] - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service
Accounts Changes to this property will trigger replacement.
Gce 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.
Changes to this property will trigger replacement.
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm
Image Changes to this property will trigger replacement.
Gce 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.
- confidential_
instance_ config Changes to this property will trigger replacement.
Gce Setup Confidential Instance Config - Confidential instance configuration. 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_ ip Changes to this property will trigger replacement.
- Optional. If true, no external IP will be assigned to this VM instance.
- enable_
ip_ forwarding Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
Gce Setup Network Interface] - The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service_
accounts Changes to this property will trigger replacement.
Gce 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.
Changes to this property will trigger replacement.
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm_
image Changes to this property will trigger replacement.
Gce 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.
- confidential
Instance Config Changes to this property will trigger replacement.
- Confidential instance configuration. 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 Ip Changes to this property will trigger replacement.
- Optional. If true, no external IP will be assigned to this VM instance.
- enable
Ip Forwarding Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- The network interfaces for the VM. Supports only one interface. Structure is documented below.
- service
Accounts Changes to this property will trigger replacement.
- 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.
Changes to this property will trigger replacement.
- Optional. The Compute Engine tags to add to instance (see Tagging instances).
- vm
Image Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms_
key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key Changes to this property will trigger replacement.
- '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.'
InstanceGceSetupConfidentialInstanceConfig, InstanceGceSetupConfidentialInstanceConfigArgs
- Confidential
Instance stringType - Defines the type of technology used by the confidential instance.
Possible values are:
SEV
.
- Confidential
Instance stringType - Defines the type of technology used by the confidential instance.
Possible values are:
SEV
.
- confidential
Instance StringType - Defines the type of technology used by the confidential instance.
Possible values are:
SEV
.
- confidential
Instance stringType - Defines the type of technology used by the confidential instance.
Possible values are:
SEV
.
- confidential_
instance_ strtype - Defines the type of technology used by the confidential instance.
Possible values are:
SEV
.
- confidential
Instance StringType - Defines the type of technology used by the confidential instance.
Possible values are:
SEV
.
InstanceGceSetupContainerImage, InstanceGceSetupContainerImageArgs
- Repository
This property is required. 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
This property is required. 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
This property is required. 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
This property is required. 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
This property is required. 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
This property is required. 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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - Kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms_
key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
- 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 Changes to this property will trigger replacement.
- Optional. Input only. Indicates the type of the disk.
Possible values are:
PD_STANDARD
,PD_SSD
,PD_BALANCED
,PD_EXTREME
. - kms
Key Changes to this property will trigger replacement.
- '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 Changes to this property will trigger replacement.
Gce 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
Changes to this property will trigger replacement.
- Optional. The name of the VPC that this VM instance is in.
- Nic
Type Changes to this property will trigger replacement.
- Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - Subnet
Changes to this property will trigger replacement.
- Optional. The name of the subnet that this VM instance is in.
- Access
Configs Changes to this property will trigger replacement.
Gce 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
Changes to this property will trigger replacement.
- Optional. The name of the VPC that this VM instance is in.
- Nic
Type Changes to this property will trigger replacement.
- Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - Subnet
Changes to this property will trigger replacement.
- Optional. The name of the subnet that this VM instance is in.
- access
Configs Changes to this property will trigger replacement.
Gce 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
Changes to this property will trigger replacement.
- Optional. The name of the VPC that this VM instance is in.
- nic
Type Changes to this property will trigger replacement.
- Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet
Changes to this property will trigger replacement.
- Optional. The name of the subnet that this VM instance is in.
- access
Configs Changes to this property will trigger replacement.
Gce 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
Changes to this property will trigger replacement.
- Optional. The name of the VPC that this VM instance is in.
- nic
Type Changes to this property will trigger replacement.
- Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet
Changes to this property will trigger replacement.
- Optional. The name of the subnet that this VM instance is in.
- access_
configs Changes to this property will trigger replacement.
Gce 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
Changes to this property will trigger replacement.
- Optional. The name of the VPC that this VM instance is in.
- nic_
type Changes to this property will trigger replacement.
- Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet
Changes to this property will trigger replacement.
- Optional. The name of the subnet that this VM instance is in.
- access
Configs Changes to this property will trigger replacement.
- 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
Changes to this property will trigger replacement.
- Optional. The name of the VPC that this VM instance is in.
- nic
Type Changes to this property will trigger replacement.
- Optional. The type of vNIC to be used on this interface. This
may be gVNIC or VirtioNet.
Possible values are:
VIRTIO_NET
,GVNIC
. - subnet
Changes to this property will trigger replacement.
- Optional. The name of the subnet that this VM instance is in.
InstanceGceSetupNetworkInterfaceAccessConfig, InstanceGceSetupNetworkInterfaceAccessConfigArgs
- External
Ip This property is required. Changes to this property will trigger replacement.
- 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 This property is required. Changes to this property will trigger replacement.
- 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 This property is required. Changes to this property will trigger replacement.
- 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 This property is required. Changes to this property will trigger replacement.
- 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 This property is required. Changes to this property will trigger replacement.
- 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 This property is required. Changes to this property will trigger replacement.
- 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
- Family
Changes to this property will trigger replacement.
- Optional. Use this VM image family to find the image; the newest image in this family will be used.
- Name
Changes to this property will trigger replacement.
- Optional. Use VM image name to find the image.
- Project
Changes to this property will trigger replacement.
- The name of the Google Cloud project that this VM image belongs to. Format: {project_id}
- Family
Changes to this property will trigger replacement.
- Optional. Use this VM image family to find the image; the newest image in this family will be used.
- Name
Changes to this property will trigger replacement.
- Optional. Use VM image name to find the image.
- Project
Changes to this property will trigger replacement.
- The name of the Google Cloud project that this VM image belongs to. Format: {project_id}
- family
Changes to this property will trigger replacement.
- Optional. Use this VM image family to find the image; the newest image in this family will be used.
- name
Changes to this property will trigger replacement.
- Optional. Use VM image name to find the image.
- project
Changes to this property will trigger replacement.
- The name of the Google Cloud project that this VM image belongs to. Format: {project_id}
- family
Changes to this property will trigger replacement.
- Optional. Use this VM image family to find the image; the newest image in this family will be used.
- name
Changes to this property will trigger replacement.
- Optional. Use VM image name to find the image.
- project
Changes to this property will trigger replacement.
- The name of the Google Cloud project that this VM image belongs to. Format: {project_id}
- family
Changes to this property will trigger replacement.
- Optional. Use this VM image family to find the image; the newest image in this family will be used.
- name
Changes to this property will trigger replacement.
- Optional. Use VM image name to find the image.
- project
Changes to this property will trigger replacement.
- The name of the Google Cloud project that this VM image belongs to. Format: {project_id}
- family
Changes to this property will trigger replacement.
- Optional. Use this VM image family to find the image; the newest image in this family will be used.
- name
Changes to this property will trigger replacement.
- Optional. Use VM image name to find the image.
- project
Changes to this property will trigger replacement.
- The name of the Google Cloud project that this VM image belongs to. Format: {project_id}
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.
- Example Usage
- Workbench Instance Basic
- Workbench Instance Basic Container
- Workbench Instance Basic Gpu
- Workbench Instance Labels Stopped
- Workbench Instance Full
- Workbench Instance Confidential Compute
- Create Instance Resource
- Constructor syntax
- Constructor example
- Instance Resource Properties
- Inputs
- Outputs
- Look up Existing Instance Resource
- Supporting Types
- Import
- Package Details