notebooks

package
v6.67.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 4, 2023 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Environment

type Environment struct {
	pulumi.CustomResourceState

	// Use a container image to start the notebook instance.
	// Structure is documented below.
	ContainerImage EnvironmentContainerImagePtrOutput `pulumi:"containerImage"`
	// Instance creation time
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// A brief description of this environment.
	Description pulumi.StringPtrOutput `pulumi:"description"`
	// Display name of this environment for the UI.
	DisplayName pulumi.StringPtrOutput `pulumi:"displayName"`
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringOutput `pulumi:"location"`
	// The name specified for the Environment instance.
	// Format: projects/{project_id}/locations/{location}/environments/{environmentId}
	Name pulumi.StringOutput `pulumi:"name"`
	// Path to a Bash script that automatically runs after a notebook instance fully boots up.
	// The path must be a URL or Cloud Storage path. Example: "gs://path-to-file/file-name"
	PostStartupScript pulumi.StringPtrOutput `pulumi:"postStartupScript"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// Use a Compute Engine VM image to start the notebook instance.
	// Structure is documented below.
	VmImage EnvironmentVmImagePtrOutput `pulumi:"vmImage"`
}

A Cloud AI Platform Notebook environment.

To get more information about Environment, see:

* [API documentation](https://cloud.google.com/ai-platform/notebooks/docs/reference/rest) * How-to Guides

## Example Usage ### Notebook Environment Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewEnvironment(ctx, "environment", &notebooks.EnvironmentArgs{
			ContainerImage: &notebooks.EnvironmentContainerImageArgs{
				Repository: pulumi.String("gcr.io/deeplearning-platform-release/base-cpu"),
			},
			Location: pulumi.String("us-west1-a"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Environment can be imported using any of these accepted formats

```sh

$ pulumi import gcp:notebooks/environment:Environment default projects/{{project}}/locations/{{location}}/environments/{{name}}

```

```sh

$ pulumi import gcp:notebooks/environment:Environment default {{project}}/{{location}}/{{name}}

```

```sh

$ pulumi import gcp:notebooks/environment:Environment default {{location}}/{{name}}

```

func GetEnvironment

func GetEnvironment(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *EnvironmentState, opts ...pulumi.ResourceOption) (*Environment, error)

GetEnvironment gets an existing Environment resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewEnvironment

func NewEnvironment(ctx *pulumi.Context,
	name string, args *EnvironmentArgs, opts ...pulumi.ResourceOption) (*Environment, error)

NewEnvironment registers a new resource with the given unique name, arguments, and options.

func (*Environment) ElementType

func (*Environment) ElementType() reflect.Type

func (*Environment) ToEnvironmentOutput

func (i *Environment) ToEnvironmentOutput() EnvironmentOutput

func (*Environment) ToEnvironmentOutputWithContext

func (i *Environment) ToEnvironmentOutputWithContext(ctx context.Context) EnvironmentOutput

func (*Environment) ToOutput added in v6.65.1

func (i *Environment) ToOutput(ctx context.Context) pulumix.Output[*Environment]

type EnvironmentArgs

type EnvironmentArgs struct {
	// Use a container image to start the notebook instance.
	// Structure is documented below.
	ContainerImage EnvironmentContainerImagePtrInput
	// A brief description of this environment.
	Description pulumi.StringPtrInput
	// Display name of this environment for the UI.
	DisplayName pulumi.StringPtrInput
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringInput
	// The name specified for the Environment instance.
	// Format: projects/{project_id}/locations/{location}/environments/{environmentId}
	Name pulumi.StringPtrInput
	// Path to a Bash script that automatically runs after a notebook instance fully boots up.
	// The path must be a URL or Cloud Storage path. Example: "gs://path-to-file/file-name"
	PostStartupScript pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Use a Compute Engine VM image to start the notebook instance.
	// Structure is documented below.
	VmImage EnvironmentVmImagePtrInput
}

The set of arguments for constructing a Environment resource.

func (EnvironmentArgs) ElementType

func (EnvironmentArgs) ElementType() reflect.Type

type EnvironmentArray

type EnvironmentArray []EnvironmentInput

func (EnvironmentArray) ElementType

func (EnvironmentArray) ElementType() reflect.Type

func (EnvironmentArray) ToEnvironmentArrayOutput

func (i EnvironmentArray) ToEnvironmentArrayOutput() EnvironmentArrayOutput

func (EnvironmentArray) ToEnvironmentArrayOutputWithContext

func (i EnvironmentArray) ToEnvironmentArrayOutputWithContext(ctx context.Context) EnvironmentArrayOutput

func (EnvironmentArray) ToOutput added in v6.65.1

type EnvironmentArrayInput

type EnvironmentArrayInput interface {
	pulumi.Input

	ToEnvironmentArrayOutput() EnvironmentArrayOutput
	ToEnvironmentArrayOutputWithContext(context.Context) EnvironmentArrayOutput
}

EnvironmentArrayInput is an input type that accepts EnvironmentArray and EnvironmentArrayOutput values. You can construct a concrete instance of `EnvironmentArrayInput` via:

EnvironmentArray{ EnvironmentArgs{...} }

type EnvironmentArrayOutput

type EnvironmentArrayOutput struct{ *pulumi.OutputState }

func (EnvironmentArrayOutput) ElementType

func (EnvironmentArrayOutput) ElementType() reflect.Type

func (EnvironmentArrayOutput) Index

func (EnvironmentArrayOutput) ToEnvironmentArrayOutput

func (o EnvironmentArrayOutput) ToEnvironmentArrayOutput() EnvironmentArrayOutput

func (EnvironmentArrayOutput) ToEnvironmentArrayOutputWithContext

func (o EnvironmentArrayOutput) ToEnvironmentArrayOutputWithContext(ctx context.Context) EnvironmentArrayOutput

func (EnvironmentArrayOutput) ToOutput added in v6.65.1

type EnvironmentContainerImage

type EnvironmentContainerImage struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository string `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag *string `pulumi:"tag"`
}

type EnvironmentContainerImageArgs

type EnvironmentContainerImageArgs struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository pulumi.StringInput `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag pulumi.StringPtrInput `pulumi:"tag"`
}

func (EnvironmentContainerImageArgs) ElementType

func (EnvironmentContainerImageArgs) ToEnvironmentContainerImageOutput

func (i EnvironmentContainerImageArgs) ToEnvironmentContainerImageOutput() EnvironmentContainerImageOutput

func (EnvironmentContainerImageArgs) ToEnvironmentContainerImageOutputWithContext

func (i EnvironmentContainerImageArgs) ToEnvironmentContainerImageOutputWithContext(ctx context.Context) EnvironmentContainerImageOutput

func (EnvironmentContainerImageArgs) ToEnvironmentContainerImagePtrOutput

func (i EnvironmentContainerImageArgs) ToEnvironmentContainerImagePtrOutput() EnvironmentContainerImagePtrOutput

func (EnvironmentContainerImageArgs) ToEnvironmentContainerImagePtrOutputWithContext

func (i EnvironmentContainerImageArgs) ToEnvironmentContainerImagePtrOutputWithContext(ctx context.Context) EnvironmentContainerImagePtrOutput

func (EnvironmentContainerImageArgs) ToOutput added in v6.65.1

type EnvironmentContainerImageInput

type EnvironmentContainerImageInput interface {
	pulumi.Input

	ToEnvironmentContainerImageOutput() EnvironmentContainerImageOutput
	ToEnvironmentContainerImageOutputWithContext(context.Context) EnvironmentContainerImageOutput
}

EnvironmentContainerImageInput is an input type that accepts EnvironmentContainerImageArgs and EnvironmentContainerImageOutput values. You can construct a concrete instance of `EnvironmentContainerImageInput` via:

EnvironmentContainerImageArgs{...}

type EnvironmentContainerImageOutput

type EnvironmentContainerImageOutput struct{ *pulumi.OutputState }

func (EnvironmentContainerImageOutput) ElementType

func (EnvironmentContainerImageOutput) Repository

The path to the container image repository. For example: gcr.io/{project_id}/{imageName}

func (EnvironmentContainerImageOutput) Tag

The tag of the container image. If not specified, this defaults to the latest tag.

func (EnvironmentContainerImageOutput) ToEnvironmentContainerImageOutput

func (o EnvironmentContainerImageOutput) ToEnvironmentContainerImageOutput() EnvironmentContainerImageOutput

func (EnvironmentContainerImageOutput) ToEnvironmentContainerImageOutputWithContext

func (o EnvironmentContainerImageOutput) ToEnvironmentContainerImageOutputWithContext(ctx context.Context) EnvironmentContainerImageOutput

func (EnvironmentContainerImageOutput) ToEnvironmentContainerImagePtrOutput

func (o EnvironmentContainerImageOutput) ToEnvironmentContainerImagePtrOutput() EnvironmentContainerImagePtrOutput

func (EnvironmentContainerImageOutput) ToEnvironmentContainerImagePtrOutputWithContext

func (o EnvironmentContainerImageOutput) ToEnvironmentContainerImagePtrOutputWithContext(ctx context.Context) EnvironmentContainerImagePtrOutput

func (EnvironmentContainerImageOutput) ToOutput added in v6.65.1

type EnvironmentContainerImagePtrInput

type EnvironmentContainerImagePtrInput interface {
	pulumi.Input

	ToEnvironmentContainerImagePtrOutput() EnvironmentContainerImagePtrOutput
	ToEnvironmentContainerImagePtrOutputWithContext(context.Context) EnvironmentContainerImagePtrOutput
}

EnvironmentContainerImagePtrInput is an input type that accepts EnvironmentContainerImageArgs, EnvironmentContainerImagePtr and EnvironmentContainerImagePtrOutput values. You can construct a concrete instance of `EnvironmentContainerImagePtrInput` via:

        EnvironmentContainerImageArgs{...}

or:

        nil

type EnvironmentContainerImagePtrOutput

type EnvironmentContainerImagePtrOutput struct{ *pulumi.OutputState }

func (EnvironmentContainerImagePtrOutput) Elem

func (EnvironmentContainerImagePtrOutput) ElementType

func (EnvironmentContainerImagePtrOutput) Repository

The path to the container image repository. For example: gcr.io/{project_id}/{imageName}

func (EnvironmentContainerImagePtrOutput) Tag

The tag of the container image. If not specified, this defaults to the latest tag.

func (EnvironmentContainerImagePtrOutput) ToEnvironmentContainerImagePtrOutput

func (o EnvironmentContainerImagePtrOutput) ToEnvironmentContainerImagePtrOutput() EnvironmentContainerImagePtrOutput

func (EnvironmentContainerImagePtrOutput) ToEnvironmentContainerImagePtrOutputWithContext

func (o EnvironmentContainerImagePtrOutput) ToEnvironmentContainerImagePtrOutputWithContext(ctx context.Context) EnvironmentContainerImagePtrOutput

func (EnvironmentContainerImagePtrOutput) ToOutput added in v6.65.1

type EnvironmentInput

type EnvironmentInput interface {
	pulumi.Input

	ToEnvironmentOutput() EnvironmentOutput
	ToEnvironmentOutputWithContext(ctx context.Context) EnvironmentOutput
}

type EnvironmentMap

type EnvironmentMap map[string]EnvironmentInput

func (EnvironmentMap) ElementType

func (EnvironmentMap) ElementType() reflect.Type

func (EnvironmentMap) ToEnvironmentMapOutput

func (i EnvironmentMap) ToEnvironmentMapOutput() EnvironmentMapOutput

func (EnvironmentMap) ToEnvironmentMapOutputWithContext

func (i EnvironmentMap) ToEnvironmentMapOutputWithContext(ctx context.Context) EnvironmentMapOutput

func (EnvironmentMap) ToOutput added in v6.65.1

type EnvironmentMapInput

type EnvironmentMapInput interface {
	pulumi.Input

	ToEnvironmentMapOutput() EnvironmentMapOutput
	ToEnvironmentMapOutputWithContext(context.Context) EnvironmentMapOutput
}

EnvironmentMapInput is an input type that accepts EnvironmentMap and EnvironmentMapOutput values. You can construct a concrete instance of `EnvironmentMapInput` via:

EnvironmentMap{ "key": EnvironmentArgs{...} }

type EnvironmentMapOutput

type EnvironmentMapOutput struct{ *pulumi.OutputState }

func (EnvironmentMapOutput) ElementType

func (EnvironmentMapOutput) ElementType() reflect.Type

func (EnvironmentMapOutput) MapIndex

func (EnvironmentMapOutput) ToEnvironmentMapOutput

func (o EnvironmentMapOutput) ToEnvironmentMapOutput() EnvironmentMapOutput

func (EnvironmentMapOutput) ToEnvironmentMapOutputWithContext

func (o EnvironmentMapOutput) ToEnvironmentMapOutputWithContext(ctx context.Context) EnvironmentMapOutput

func (EnvironmentMapOutput) ToOutput added in v6.65.1

type EnvironmentOutput

type EnvironmentOutput struct{ *pulumi.OutputState }

func (EnvironmentOutput) ContainerImage added in v6.23.0

Use a container image to start the notebook instance. Structure is documented below.

func (EnvironmentOutput) CreateTime added in v6.23.0

func (o EnvironmentOutput) CreateTime() pulumi.StringOutput

Instance creation time

func (EnvironmentOutput) Description added in v6.23.0

func (o EnvironmentOutput) Description() pulumi.StringPtrOutput

A brief description of this environment.

func (EnvironmentOutput) DisplayName added in v6.23.0

func (o EnvironmentOutput) DisplayName() pulumi.StringPtrOutput

Display name of this environment for the UI.

func (EnvironmentOutput) ElementType

func (EnvironmentOutput) ElementType() reflect.Type

func (EnvironmentOutput) Location added in v6.23.0

func (o EnvironmentOutput) Location() pulumi.StringOutput

A reference to the zone where the machine resides.

***

func (EnvironmentOutput) Name added in v6.23.0

The name specified for the Environment instance. Format: projects/{project_id}/locations/{location}/environments/{environmentId}

func (EnvironmentOutput) PostStartupScript added in v6.23.0

func (o EnvironmentOutput) PostStartupScript() pulumi.StringPtrOutput

Path to a Bash script that automatically runs after a notebook instance fully boots up. The path must be a URL or Cloud Storage path. Example: "gs://path-to-file/file-name"

func (EnvironmentOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (EnvironmentOutput) ToEnvironmentOutput

func (o EnvironmentOutput) ToEnvironmentOutput() EnvironmentOutput

func (EnvironmentOutput) ToEnvironmentOutputWithContext

func (o EnvironmentOutput) ToEnvironmentOutputWithContext(ctx context.Context) EnvironmentOutput

func (EnvironmentOutput) ToOutput added in v6.65.1

func (EnvironmentOutput) VmImage added in v6.23.0

Use a Compute Engine VM image to start the notebook instance. Structure is documented below.

type EnvironmentState

type EnvironmentState struct {
	// Use a container image to start the notebook instance.
	// Structure is documented below.
	ContainerImage EnvironmentContainerImagePtrInput
	// Instance creation time
	CreateTime pulumi.StringPtrInput
	// A brief description of this environment.
	Description pulumi.StringPtrInput
	// Display name of this environment for the UI.
	DisplayName pulumi.StringPtrInput
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringPtrInput
	// The name specified for the Environment instance.
	// Format: projects/{project_id}/locations/{location}/environments/{environmentId}
	Name pulumi.StringPtrInput
	// Path to a Bash script that automatically runs after a notebook instance fully boots up.
	// The path must be a URL or Cloud Storage path. Example: "gs://path-to-file/file-name"
	PostStartupScript pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Use a Compute Engine VM image to start the notebook instance.
	// Structure is documented below.
	VmImage EnvironmentVmImagePtrInput
}

func (EnvironmentState) ElementType

func (EnvironmentState) ElementType() reflect.Type

type EnvironmentVmImage

type EnvironmentVmImage struct {
	// Use this VM image family to find the image; the newest image in this family will be used.
	ImageFamily *string `pulumi:"imageFamily"`
	// Use VM image name to find the image.
	ImageName *string `pulumi:"imageName"`
	// The name of the Google Cloud project that this VM image belongs to.
	// Format: projects/{project_id}
	Project string `pulumi:"project"`
}

type EnvironmentVmImageArgs

type EnvironmentVmImageArgs struct {
	// Use this VM image family to find the image; the newest image in this family will be used.
	ImageFamily pulumi.StringPtrInput `pulumi:"imageFamily"`
	// Use VM image name to find the image.
	ImageName pulumi.StringPtrInput `pulumi:"imageName"`
	// The name of the Google Cloud project that this VM image belongs to.
	// Format: projects/{project_id}
	Project pulumi.StringInput `pulumi:"project"`
}

func (EnvironmentVmImageArgs) ElementType

func (EnvironmentVmImageArgs) ElementType() reflect.Type

func (EnvironmentVmImageArgs) ToEnvironmentVmImageOutput

func (i EnvironmentVmImageArgs) ToEnvironmentVmImageOutput() EnvironmentVmImageOutput

func (EnvironmentVmImageArgs) ToEnvironmentVmImageOutputWithContext

func (i EnvironmentVmImageArgs) ToEnvironmentVmImageOutputWithContext(ctx context.Context) EnvironmentVmImageOutput

func (EnvironmentVmImageArgs) ToEnvironmentVmImagePtrOutput

func (i EnvironmentVmImageArgs) ToEnvironmentVmImagePtrOutput() EnvironmentVmImagePtrOutput

func (EnvironmentVmImageArgs) ToEnvironmentVmImagePtrOutputWithContext

func (i EnvironmentVmImageArgs) ToEnvironmentVmImagePtrOutputWithContext(ctx context.Context) EnvironmentVmImagePtrOutput

func (EnvironmentVmImageArgs) ToOutput added in v6.65.1

type EnvironmentVmImageInput

type EnvironmentVmImageInput interface {
	pulumi.Input

	ToEnvironmentVmImageOutput() EnvironmentVmImageOutput
	ToEnvironmentVmImageOutputWithContext(context.Context) EnvironmentVmImageOutput
}

EnvironmentVmImageInput is an input type that accepts EnvironmentVmImageArgs and EnvironmentVmImageOutput values. You can construct a concrete instance of `EnvironmentVmImageInput` via:

EnvironmentVmImageArgs{...}

type EnvironmentVmImageOutput

type EnvironmentVmImageOutput struct{ *pulumi.OutputState }

func (EnvironmentVmImageOutput) ElementType

func (EnvironmentVmImageOutput) ElementType() reflect.Type

func (EnvironmentVmImageOutput) ImageFamily

Use this VM image family to find the image; the newest image in this family will be used.

func (EnvironmentVmImageOutput) ImageName

Use VM image name to find the image.

func (EnvironmentVmImageOutput) Project

The name of the Google Cloud project that this VM image belongs to. Format: projects/{project_id}

func (EnvironmentVmImageOutput) ToEnvironmentVmImageOutput

func (o EnvironmentVmImageOutput) ToEnvironmentVmImageOutput() EnvironmentVmImageOutput

func (EnvironmentVmImageOutput) ToEnvironmentVmImageOutputWithContext

func (o EnvironmentVmImageOutput) ToEnvironmentVmImageOutputWithContext(ctx context.Context) EnvironmentVmImageOutput

func (EnvironmentVmImageOutput) ToEnvironmentVmImagePtrOutput

func (o EnvironmentVmImageOutput) ToEnvironmentVmImagePtrOutput() EnvironmentVmImagePtrOutput

func (EnvironmentVmImageOutput) ToEnvironmentVmImagePtrOutputWithContext

func (o EnvironmentVmImageOutput) ToEnvironmentVmImagePtrOutputWithContext(ctx context.Context) EnvironmentVmImagePtrOutput

func (EnvironmentVmImageOutput) ToOutput added in v6.65.1

type EnvironmentVmImagePtrInput

type EnvironmentVmImagePtrInput interface {
	pulumi.Input

	ToEnvironmentVmImagePtrOutput() EnvironmentVmImagePtrOutput
	ToEnvironmentVmImagePtrOutputWithContext(context.Context) EnvironmentVmImagePtrOutput
}

EnvironmentVmImagePtrInput is an input type that accepts EnvironmentVmImageArgs, EnvironmentVmImagePtr and EnvironmentVmImagePtrOutput values. You can construct a concrete instance of `EnvironmentVmImagePtrInput` via:

        EnvironmentVmImageArgs{...}

or:

        nil

type EnvironmentVmImagePtrOutput

type EnvironmentVmImagePtrOutput struct{ *pulumi.OutputState }

func (EnvironmentVmImagePtrOutput) Elem

func (EnvironmentVmImagePtrOutput) ElementType

func (EnvironmentVmImagePtrOutput) ImageFamily

Use this VM image family to find the image; the newest image in this family will be used.

func (EnvironmentVmImagePtrOutput) ImageName

Use VM image name to find the image.

func (EnvironmentVmImagePtrOutput) Project

The name of the Google Cloud project that this VM image belongs to. Format: projects/{project_id}

func (EnvironmentVmImagePtrOutput) ToEnvironmentVmImagePtrOutput

func (o EnvironmentVmImagePtrOutput) ToEnvironmentVmImagePtrOutput() EnvironmentVmImagePtrOutput

func (EnvironmentVmImagePtrOutput) ToEnvironmentVmImagePtrOutputWithContext

func (o EnvironmentVmImagePtrOutput) ToEnvironmentVmImagePtrOutputWithContext(ctx context.Context) EnvironmentVmImagePtrOutput

func (EnvironmentVmImagePtrOutput) ToOutput added in v6.65.1

type Instance

type Instance struct {
	pulumi.CustomResourceState

	// The hardware accelerator used on this instance. If you use accelerators,
	// make sure that your configuration has enough vCPUs and memory to support the
	// machineType you have selected.
	// Structure is documented below.
	AcceleratorConfig InstanceAcceleratorConfigPtrOutput `pulumi:"acceleratorConfig"`
	// The size of the boot disk in GB attached to this instance,
	// up to a maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB.
	// If not specified, this defaults to 100.
	BootDiskSizeGb pulumi.IntPtrOutput `pulumi:"bootDiskSizeGb"`
	// Possible disk types for notebook instances.
	// Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
	BootDiskType pulumi.StringPtrOutput `pulumi:"bootDiskType"`
	// Use a container image to start the notebook instance.
	// Structure is documented below.
	ContainerImage InstanceContainerImagePtrOutput `pulumi:"containerImage"`
	// Instance creation time
	CreateTime pulumi.StringOutput `pulumi:"createTime"`
	// Specify a custom Cloud Storage path where the GPU driver is stored.
	// If not specified, we'll automatically choose from official GPU drivers.
	CustomGpuDriverPath pulumi.StringPtrOutput `pulumi:"customGpuDriverPath"`
	// The size of the data disk in GB attached to this instance,
	// up to a maximum of 64000 GB (64 TB).
	// You can choose the size of the data disk based on how big your notebooks and data are.
	// If not specified, this defaults to 100.
	DataDiskSizeGb pulumi.IntPtrOutput `pulumi:"dataDiskSizeGb"`
	// Possible disk types for notebook instances.
	// Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
	DataDiskType pulumi.StringPtrOutput `pulumi:"dataDiskType"`
	// Disk encryption method used on the boot and data disks, defaults to GMEK.
	// Possible values are: `DISK_ENCRYPTION_UNSPECIFIED`, `GMEK`, `CMEK`.
	DiskEncryption pulumi.StringPtrOutput `pulumi:"diskEncryption"`
	// Whether the end user authorizes Google Cloud to install GPU driver
	// on this instance. If this field is empty or set to false, the GPU driver
	// won't be installed. Only applicable to instances with GPUs.
	InstallGpuDriver pulumi.BoolPtrOutput `pulumi:"installGpuDriver"`
	// The list of owners 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.
	InstanceOwners pulumi.StringArrayOutput `pulumi:"instanceOwners"`
	// The KMS key used to encrypt the disks, only applicable if diskEncryption is CMEK.
	// Format: projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
	KmsKey pulumi.StringPtrOutput `pulumi:"kmsKey"`
	// Labels to apply to this instance. These can be later modified by the setLabels method.
	// An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapOutput `pulumi:"labels"`
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringOutput `pulumi:"location"`
	// A reference to a machine type which defines VM kind.
	MachineType pulumi.StringOutput `pulumi:"machineType"`
	// Custom metadata to apply to this instance.
	// An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Metadata pulumi.StringMapOutput `pulumi:"metadata"`
	// The name specified for the Notebook instance.
	Name pulumi.StringOutput `pulumi:"name"`
	// The name of the VPC that this instance is in.
	// Format: projects/{project_id}/global/networks/{network_id}
	Network pulumi.StringOutput `pulumi:"network"`
	// The type of vNIC driver.
	// Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.
	NicType pulumi.StringPtrOutput `pulumi:"nicType"`
	// The notebook instance will not register with the proxy..
	NoProxyAccess pulumi.BoolPtrOutput `pulumi:"noProxyAccess"`
	// No public IP will be assigned to this instance.
	NoPublicIp pulumi.BoolPtrOutput `pulumi:"noPublicIp"`
	// If true, the data disk will not be auto deleted when deleting the instance.
	NoRemoveDataDisk pulumi.BoolPtrOutput `pulumi:"noRemoveDataDisk"`
	// Path to a Bash script that automatically runs after a
	// notebook instance fully boots up. The path must be a URL
	// or Cloud Storage path (gs://path-to-file/file-name).
	PostStartupScript pulumi.StringPtrOutput `pulumi:"postStartupScript"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The proxy endpoint that is used to access the Jupyter notebook.
	// Only returned when the resource is in a `PROVISIONED` state. If
	// needed you can utilize `pulumi up -refresh-only` to await
	// the population of this value.
	ProxyUri pulumi.StringOutput `pulumi:"proxyUri"`
	// Reservation Affinity for consuming Zonal reservation.
	// Structure is documented below.
	ReservationAffinity InstanceReservationAffinityPtrOutput `pulumi:"reservationAffinity"`
	// The service account on this instance, giving access to other
	// Google Cloud services. You can use any service account within
	// the same project, but you must have the service account user
	// permission to use the instance. If not specified,
	// the Compute Engine default service account is used.
	ServiceAccount pulumi.StringOutput `pulumi:"serviceAccount"`
	// Optional. The URIs of service account scopes to be included in Compute Engine instances.
	// If not specified, the following scopes are defined:
	// - https://www.googleapis.com/auth/cloud-platform
	// - https://www.googleapis.com/auth/userinfo.email
	ServiceAccountScopes pulumi.StringArrayOutput `pulumi:"serviceAccountScopes"`
	// A set of Shielded Instance options. Check [Images using supported Shielded VM features]
	// Not all combinations are valid
	// Structure is documented below.
	ShieldedInstanceConfig InstanceShieldedInstanceConfigOutput `pulumi:"shieldedInstanceConfig"`
	// The state of this instance.
	State pulumi.StringOutput `pulumi:"state"`
	// The name of the subnet that this instance is in.
	// Format: projects/{project_id}/regions/{region}/subnetworks/{subnetwork_id}
	Subnet pulumi.StringOutput `pulumi:"subnet"`
	// The Compute Engine tags to add to instance.
	Tags pulumi.StringArrayOutput `pulumi:"tags"`
	// Instance update time.
	UpdateTime pulumi.StringOutput `pulumi:"updateTime"`
	// Use a Compute Engine VM image to start the notebook instance.
	// Structure is documented below.
	VmImage InstanceVmImagePtrOutput `pulumi:"vmImage"`
}

A Cloud AI Platform Notebook instance.

> **Note:** Due to limitations of the Notebooks Instance API, many fields in this resource do not properly detect drift. These fields will also not appear in state once imported.

To get more information about Instance, see:

* [API documentation](https://cloud.google.com/ai-platform/notebooks/docs/reference/rest) * How-to Guides

## Example Usage ### Notebook Instance Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstance(ctx, "instance", &notebooks.InstanceArgs{
			Location:    pulumi.String("us-west1-a"),
			MachineType: pulumi.String("e2-medium"),
			VmImage: &notebooks.InstanceVmImageArgs{
				ImageFamily: pulumi.String("tf-latest-cpu"),
				Project:     pulumi.String("deeplearning-platform-release"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Instance Basic Container

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstance(ctx, "instance", &notebooks.InstanceArgs{
			ContainerImage: &notebooks.InstanceContainerImageArgs{
				Repository: pulumi.String("gcr.io/deeplearning-platform-release/base-cpu"),
				Tag:        pulumi.String("latest"),
			},
			Location:    pulumi.String("us-west1-a"),
			MachineType: pulumi.String("e2-medium"),
			Metadata: pulumi.StringMap{
				"proxy-mode": pulumi.String("service_account"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Instance Basic Gpu

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstance(ctx, "instance", &notebooks.InstanceArgs{
			AcceleratorConfig: &notebooks.InstanceAcceleratorConfigArgs{
				CoreCount: pulumi.Int(1),
				Type:      pulumi.String("NVIDIA_TESLA_T4"),
			},
			InstallGpuDriver: pulumi.Bool(true),
			Location:         pulumi.String("us-west1-a"),
			MachineType:      pulumi.String("n1-standard-1"),
			VmImage: &notebooks.InstanceVmImageArgs{
				ImageFamily: pulumi.String("tf-latest-gpu"),
				Project:     pulumi.String("deeplearning-platform-release"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Instance Full

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/compute"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		myNetwork, err := compute.LookupNetwork(ctx, &compute.LookupNetworkArgs{
			Name: "default",
		}, nil)
		if err != nil {
			return err
		}
		mySubnetwork, err := compute.LookupSubnetwork(ctx, &compute.LookupSubnetworkArgs{
			Name:   pulumi.StringRef("default"),
			Region: pulumi.StringRef("us-central1"),
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewInstance(ctx, "instance", &notebooks.InstanceArgs{
			Location:    pulumi.String("us-central1-a"),
			MachineType: pulumi.String("e2-medium"),
			VmImage: &notebooks.InstanceVmImageArgs{
				Project:     pulumi.String("deeplearning-platform-release"),
				ImageFamily: pulumi.String("tf-latest-cpu"),
			},
			InstanceOwners: pulumi.StringArray{
				pulumi.String("my@service-account.com"),
			},
			ServiceAccount:   pulumi.String("my@service-account.com"),
			InstallGpuDriver: pulumi.Bool(true),
			BootDiskType:     pulumi.String("PD_SSD"),
			BootDiskSizeGb:   pulumi.Int(110),
			NoPublicIp:       pulumi.Bool(true),
			NoProxyAccess:    pulumi.Bool(true),
			Network:          *pulumi.String(myNetwork.Id),
			Subnet:           *pulumi.String(mySubnetwork.Id),
			Labels: pulumi.StringMap{
				"k": pulumi.String("val"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Instance can be imported using any of these accepted formats

```sh

$ pulumi import gcp:notebooks/instance:Instance default projects/{{project}}/locations/{{location}}/instances/{{name}}

```

```sh

$ pulumi import gcp:notebooks/instance:Instance default {{project}}/{{location}}/{{name}}

```

```sh

$ pulumi import gcp:notebooks/instance:Instance default {{location}}/{{name}}

```

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceState, opts ...pulumi.ResourceOption) (*Instance, error)

GetInstance gets an existing Instance resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstance

func NewInstance(ctx *pulumi.Context,
	name string, args *InstanceArgs, opts ...pulumi.ResourceOption) (*Instance, error)

NewInstance registers a new resource with the given unique name, arguments, and options.

func (*Instance) ElementType

func (*Instance) ElementType() reflect.Type

func (*Instance) ToInstanceOutput

func (i *Instance) ToInstanceOutput() InstanceOutput

func (*Instance) ToInstanceOutputWithContext

func (i *Instance) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (*Instance) ToOutput added in v6.65.1

func (i *Instance) ToOutput(ctx context.Context) pulumix.Output[*Instance]

type InstanceAcceleratorConfig

type InstanceAcceleratorConfig struct {
	// Count of cores of this accelerator.
	CoreCount int `pulumi:"coreCount"`
	// Type of this accelerator.
	// Possible values are: `ACCELERATOR_TYPE_UNSPECIFIED`, `NVIDIA_TESLA_K80`, `NVIDIA_TESLA_P100`, `NVIDIA_TESLA_V100`, `NVIDIA_TESLA_P4`, `NVIDIA_TESLA_T4`, `NVIDIA_TESLA_T4_VWS`, `NVIDIA_TESLA_P100_VWS`, `NVIDIA_TESLA_P4_VWS`, `NVIDIA_TESLA_A100`, `TPU_V2`, `TPU_V3`.
	Type string `pulumi:"type"`
}

type InstanceAcceleratorConfigArgs

type InstanceAcceleratorConfigArgs struct {
	// Count of cores of this accelerator.
	CoreCount pulumi.IntInput `pulumi:"coreCount"`
	// Type of this accelerator.
	// Possible values are: `ACCELERATOR_TYPE_UNSPECIFIED`, `NVIDIA_TESLA_K80`, `NVIDIA_TESLA_P100`, `NVIDIA_TESLA_V100`, `NVIDIA_TESLA_P4`, `NVIDIA_TESLA_T4`, `NVIDIA_TESLA_T4_VWS`, `NVIDIA_TESLA_P100_VWS`, `NVIDIA_TESLA_P4_VWS`, `NVIDIA_TESLA_A100`, `TPU_V2`, `TPU_V3`.
	Type pulumi.StringInput `pulumi:"type"`
}

func (InstanceAcceleratorConfigArgs) ElementType

func (InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigOutput

func (i InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigOutput() InstanceAcceleratorConfigOutput

func (InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigOutputWithContext

func (i InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigOutputWithContext(ctx context.Context) InstanceAcceleratorConfigOutput

func (InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigPtrOutput

func (i InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigPtrOutput() InstanceAcceleratorConfigPtrOutput

func (InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigPtrOutputWithContext

func (i InstanceAcceleratorConfigArgs) ToInstanceAcceleratorConfigPtrOutputWithContext(ctx context.Context) InstanceAcceleratorConfigPtrOutput

func (InstanceAcceleratorConfigArgs) ToOutput added in v6.65.1

type InstanceAcceleratorConfigInput

type InstanceAcceleratorConfigInput interface {
	pulumi.Input

	ToInstanceAcceleratorConfigOutput() InstanceAcceleratorConfigOutput
	ToInstanceAcceleratorConfigOutputWithContext(context.Context) InstanceAcceleratorConfigOutput
}

InstanceAcceleratorConfigInput is an input type that accepts InstanceAcceleratorConfigArgs and InstanceAcceleratorConfigOutput values. You can construct a concrete instance of `InstanceAcceleratorConfigInput` via:

InstanceAcceleratorConfigArgs{...}

type InstanceAcceleratorConfigOutput

type InstanceAcceleratorConfigOutput struct{ *pulumi.OutputState }

func (InstanceAcceleratorConfigOutput) CoreCount

Count of cores of this accelerator.

func (InstanceAcceleratorConfigOutput) ElementType

func (InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigOutput

func (o InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigOutput() InstanceAcceleratorConfigOutput

func (InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigOutputWithContext

func (o InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigOutputWithContext(ctx context.Context) InstanceAcceleratorConfigOutput

func (InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigPtrOutput

func (o InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigPtrOutput() InstanceAcceleratorConfigPtrOutput

func (InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigPtrOutputWithContext

func (o InstanceAcceleratorConfigOutput) ToInstanceAcceleratorConfigPtrOutputWithContext(ctx context.Context) InstanceAcceleratorConfigPtrOutput

func (InstanceAcceleratorConfigOutput) ToOutput added in v6.65.1

func (InstanceAcceleratorConfigOutput) Type

Type of this accelerator. Possible values are: `ACCELERATOR_TYPE_UNSPECIFIED`, `NVIDIA_TESLA_K80`, `NVIDIA_TESLA_P100`, `NVIDIA_TESLA_V100`, `NVIDIA_TESLA_P4`, `NVIDIA_TESLA_T4`, `NVIDIA_TESLA_T4_VWS`, `NVIDIA_TESLA_P100_VWS`, `NVIDIA_TESLA_P4_VWS`, `NVIDIA_TESLA_A100`, `TPU_V2`, `TPU_V3`.

type InstanceAcceleratorConfigPtrInput

type InstanceAcceleratorConfigPtrInput interface {
	pulumi.Input

	ToInstanceAcceleratorConfigPtrOutput() InstanceAcceleratorConfigPtrOutput
	ToInstanceAcceleratorConfigPtrOutputWithContext(context.Context) InstanceAcceleratorConfigPtrOutput
}

InstanceAcceleratorConfigPtrInput is an input type that accepts InstanceAcceleratorConfigArgs, InstanceAcceleratorConfigPtr and InstanceAcceleratorConfigPtrOutput values. You can construct a concrete instance of `InstanceAcceleratorConfigPtrInput` via:

        InstanceAcceleratorConfigArgs{...}

or:

        nil

type InstanceAcceleratorConfigPtrOutput

type InstanceAcceleratorConfigPtrOutput struct{ *pulumi.OutputState }

func (InstanceAcceleratorConfigPtrOutput) CoreCount

Count of cores of this accelerator.

func (InstanceAcceleratorConfigPtrOutput) Elem

func (InstanceAcceleratorConfigPtrOutput) ElementType

func (InstanceAcceleratorConfigPtrOutput) ToInstanceAcceleratorConfigPtrOutput

func (o InstanceAcceleratorConfigPtrOutput) ToInstanceAcceleratorConfigPtrOutput() InstanceAcceleratorConfigPtrOutput

func (InstanceAcceleratorConfigPtrOutput) ToInstanceAcceleratorConfigPtrOutputWithContext

func (o InstanceAcceleratorConfigPtrOutput) ToInstanceAcceleratorConfigPtrOutputWithContext(ctx context.Context) InstanceAcceleratorConfigPtrOutput

func (InstanceAcceleratorConfigPtrOutput) ToOutput added in v6.65.1

func (InstanceAcceleratorConfigPtrOutput) Type

Type of this accelerator. Possible values are: `ACCELERATOR_TYPE_UNSPECIFIED`, `NVIDIA_TESLA_K80`, `NVIDIA_TESLA_P100`, `NVIDIA_TESLA_V100`, `NVIDIA_TESLA_P4`, `NVIDIA_TESLA_T4`, `NVIDIA_TESLA_T4_VWS`, `NVIDIA_TESLA_P100_VWS`, `NVIDIA_TESLA_P4_VWS`, `NVIDIA_TESLA_A100`, `TPU_V2`, `TPU_V3`.

type InstanceArgs

type InstanceArgs struct {
	// The hardware accelerator used on this instance. If you use accelerators,
	// make sure that your configuration has enough vCPUs and memory to support the
	// machineType you have selected.
	// Structure is documented below.
	AcceleratorConfig InstanceAcceleratorConfigPtrInput
	// The size of the boot disk in GB attached to this instance,
	// up to a maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB.
	// If not specified, this defaults to 100.
	BootDiskSizeGb pulumi.IntPtrInput
	// Possible disk types for notebook instances.
	// Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
	BootDiskType pulumi.StringPtrInput
	// Use a container image to start the notebook instance.
	// Structure is documented below.
	ContainerImage InstanceContainerImagePtrInput
	// Instance creation time
	CreateTime pulumi.StringPtrInput
	// Specify a custom Cloud Storage path where the GPU driver is stored.
	// If not specified, we'll automatically choose from official GPU drivers.
	CustomGpuDriverPath pulumi.StringPtrInput
	// The size of the data disk in GB attached to this instance,
	// up to a maximum of 64000 GB (64 TB).
	// You can choose the size of the data disk based on how big your notebooks and data are.
	// If not specified, this defaults to 100.
	DataDiskSizeGb pulumi.IntPtrInput
	// Possible disk types for notebook instances.
	// Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
	DataDiskType pulumi.StringPtrInput
	// Disk encryption method used on the boot and data disks, defaults to GMEK.
	// Possible values are: `DISK_ENCRYPTION_UNSPECIFIED`, `GMEK`, `CMEK`.
	DiskEncryption pulumi.StringPtrInput
	// Whether the end user authorizes Google Cloud to install GPU driver
	// on this instance. If this field is empty or set to false, the GPU driver
	// won't be installed. Only applicable to instances with GPUs.
	InstallGpuDriver pulumi.BoolPtrInput
	// The list of owners 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.
	InstanceOwners pulumi.StringArrayInput
	// The KMS key used to encrypt the disks, only applicable if diskEncryption is CMEK.
	// Format: projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
	KmsKey pulumi.StringPtrInput
	// Labels to apply to this instance. These can be later modified by the setLabels method.
	// An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringInput
	// A reference to a machine type which defines VM kind.
	MachineType pulumi.StringInput
	// Custom metadata to apply to this instance.
	// An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Metadata pulumi.StringMapInput
	// The name specified for the Notebook instance.
	Name pulumi.StringPtrInput
	// The name of the VPC that this instance is in.
	// Format: projects/{project_id}/global/networks/{network_id}
	Network pulumi.StringPtrInput
	// The type of vNIC driver.
	// Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.
	NicType pulumi.StringPtrInput
	// The notebook instance will not register with the proxy..
	NoProxyAccess pulumi.BoolPtrInput
	// No public IP will be assigned to this instance.
	NoPublicIp pulumi.BoolPtrInput
	// If true, the data disk will not be auto deleted when deleting the instance.
	NoRemoveDataDisk pulumi.BoolPtrInput
	// Path to a Bash script that automatically runs after a
	// notebook instance fully boots up. The path must be a URL
	// or Cloud Storage path (gs://path-to-file/file-name).
	PostStartupScript pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// Reservation Affinity for consuming Zonal reservation.
	// Structure is documented below.
	ReservationAffinity InstanceReservationAffinityPtrInput
	// The service account on this instance, giving access to other
	// Google Cloud services. You can use any service account within
	// the same project, but you must have the service account user
	// permission to use the instance. If not specified,
	// the Compute Engine default service account is used.
	ServiceAccount pulumi.StringPtrInput
	// Optional. The URIs of service account scopes to be included in Compute Engine instances.
	// If not specified, the following scopes are defined:
	// - https://www.googleapis.com/auth/cloud-platform
	// - https://www.googleapis.com/auth/userinfo.email
	ServiceAccountScopes pulumi.StringArrayInput
	// A set of Shielded Instance options. Check [Images using supported Shielded VM features]
	// Not all combinations are valid
	// Structure is documented below.
	ShieldedInstanceConfig InstanceShieldedInstanceConfigPtrInput
	// The name of the subnet that this instance is in.
	// Format: projects/{project_id}/regions/{region}/subnetworks/{subnetwork_id}
	Subnet pulumi.StringPtrInput
	// The Compute Engine tags to add to instance.
	Tags pulumi.StringArrayInput
	// Instance update time.
	UpdateTime pulumi.StringPtrInput
	// Use a Compute Engine VM image to start the notebook instance.
	// Structure is documented below.
	VmImage InstanceVmImagePtrInput
}

The set of arguments for constructing a Instance resource.

func (InstanceArgs) ElementType

func (InstanceArgs) ElementType() reflect.Type

type InstanceArray

type InstanceArray []InstanceInput

func (InstanceArray) ElementType

func (InstanceArray) ElementType() reflect.Type

func (InstanceArray) ToInstanceArrayOutput

func (i InstanceArray) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArray) ToInstanceArrayOutputWithContext

func (i InstanceArray) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

func (InstanceArray) ToOutput added in v6.65.1

func (i InstanceArray) ToOutput(ctx context.Context) pulumix.Output[[]*Instance]

type InstanceArrayInput

type InstanceArrayInput interface {
	pulumi.Input

	ToInstanceArrayOutput() InstanceArrayOutput
	ToInstanceArrayOutputWithContext(context.Context) InstanceArrayOutput
}

InstanceArrayInput is an input type that accepts InstanceArray and InstanceArrayOutput values. You can construct a concrete instance of `InstanceArrayInput` via:

InstanceArray{ InstanceArgs{...} }

type InstanceArrayOutput

type InstanceArrayOutput struct{ *pulumi.OutputState }

func (InstanceArrayOutput) ElementType

func (InstanceArrayOutput) ElementType() reflect.Type

func (InstanceArrayOutput) Index

func (InstanceArrayOutput) ToInstanceArrayOutput

func (o InstanceArrayOutput) ToInstanceArrayOutput() InstanceArrayOutput

func (InstanceArrayOutput) ToInstanceArrayOutputWithContext

func (o InstanceArrayOutput) ToInstanceArrayOutputWithContext(ctx context.Context) InstanceArrayOutput

func (InstanceArrayOutput) ToOutput added in v6.65.1

type InstanceContainerImage

type InstanceContainerImage struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository string `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag *string `pulumi:"tag"`
}

type InstanceContainerImageArgs

type InstanceContainerImageArgs struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository pulumi.StringInput `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag pulumi.StringPtrInput `pulumi:"tag"`
}

func (InstanceContainerImageArgs) ElementType

func (InstanceContainerImageArgs) ElementType() reflect.Type

func (InstanceContainerImageArgs) ToInstanceContainerImageOutput

func (i InstanceContainerImageArgs) ToInstanceContainerImageOutput() InstanceContainerImageOutput

func (InstanceContainerImageArgs) ToInstanceContainerImageOutputWithContext

func (i InstanceContainerImageArgs) ToInstanceContainerImageOutputWithContext(ctx context.Context) InstanceContainerImageOutput

func (InstanceContainerImageArgs) ToInstanceContainerImagePtrOutput

func (i InstanceContainerImageArgs) ToInstanceContainerImagePtrOutput() InstanceContainerImagePtrOutput

func (InstanceContainerImageArgs) ToInstanceContainerImagePtrOutputWithContext

func (i InstanceContainerImageArgs) ToInstanceContainerImagePtrOutputWithContext(ctx context.Context) InstanceContainerImagePtrOutput

func (InstanceContainerImageArgs) ToOutput added in v6.65.1

type InstanceContainerImageInput

type InstanceContainerImageInput interface {
	pulumi.Input

	ToInstanceContainerImageOutput() InstanceContainerImageOutput
	ToInstanceContainerImageOutputWithContext(context.Context) InstanceContainerImageOutput
}

InstanceContainerImageInput is an input type that accepts InstanceContainerImageArgs and InstanceContainerImageOutput values. You can construct a concrete instance of `InstanceContainerImageInput` via:

InstanceContainerImageArgs{...}

type InstanceContainerImageOutput

type InstanceContainerImageOutput struct{ *pulumi.OutputState }

func (InstanceContainerImageOutput) ElementType

func (InstanceContainerImageOutput) Repository

The path to the container image repository. For example: gcr.io/{project_id}/{imageName}

func (InstanceContainerImageOutput) Tag

The tag of the container image. If not specified, this defaults to the latest tag.

func (InstanceContainerImageOutput) ToInstanceContainerImageOutput

func (o InstanceContainerImageOutput) ToInstanceContainerImageOutput() InstanceContainerImageOutput

func (InstanceContainerImageOutput) ToInstanceContainerImageOutputWithContext

func (o InstanceContainerImageOutput) ToInstanceContainerImageOutputWithContext(ctx context.Context) InstanceContainerImageOutput

func (InstanceContainerImageOutput) ToInstanceContainerImagePtrOutput

func (o InstanceContainerImageOutput) ToInstanceContainerImagePtrOutput() InstanceContainerImagePtrOutput

func (InstanceContainerImageOutput) ToInstanceContainerImagePtrOutputWithContext

func (o InstanceContainerImageOutput) ToInstanceContainerImagePtrOutputWithContext(ctx context.Context) InstanceContainerImagePtrOutput

func (InstanceContainerImageOutput) ToOutput added in v6.65.1

type InstanceContainerImagePtrInput

type InstanceContainerImagePtrInput interface {
	pulumi.Input

	ToInstanceContainerImagePtrOutput() InstanceContainerImagePtrOutput
	ToInstanceContainerImagePtrOutputWithContext(context.Context) InstanceContainerImagePtrOutput
}

InstanceContainerImagePtrInput is an input type that accepts InstanceContainerImageArgs, InstanceContainerImagePtr and InstanceContainerImagePtrOutput values. You can construct a concrete instance of `InstanceContainerImagePtrInput` via:

        InstanceContainerImageArgs{...}

or:

        nil

type InstanceContainerImagePtrOutput

type InstanceContainerImagePtrOutput struct{ *pulumi.OutputState }

func (InstanceContainerImagePtrOutput) Elem

func (InstanceContainerImagePtrOutput) ElementType

func (InstanceContainerImagePtrOutput) Repository

The path to the container image repository. For example: gcr.io/{project_id}/{imageName}

func (InstanceContainerImagePtrOutput) Tag

The tag of the container image. If not specified, this defaults to the latest tag.

func (InstanceContainerImagePtrOutput) ToInstanceContainerImagePtrOutput

func (o InstanceContainerImagePtrOutput) ToInstanceContainerImagePtrOutput() InstanceContainerImagePtrOutput

func (InstanceContainerImagePtrOutput) ToInstanceContainerImagePtrOutputWithContext

func (o InstanceContainerImagePtrOutput) ToInstanceContainerImagePtrOutputWithContext(ctx context.Context) InstanceContainerImagePtrOutput

func (InstanceContainerImagePtrOutput) ToOutput added in v6.65.1

type InstanceIamBinding

type InstanceIamBinding struct {
	pulumi.CustomResourceState

	Condition InstanceIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput      `pulumi:"location"`
	Members  pulumi.StringArrayOutput `pulumi:"members"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Cloud AI Notebooks Instance. Each of these resources serves a different use case:

* `notebooks.InstanceIamPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `notebooks.InstanceIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved. * `notebooks.InstanceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `notebooks.InstanceIamPolicy`: Retrieves the IAM policy for the instance

> **Note:** `notebooks.InstanceIamPolicy` **cannot** be used in conjunction with `notebooks.InstanceIamBinding` and `notebooks.InstanceIamMember` or they will fight over what your policy should be.

> **Note:** `notebooks.InstanceIamBinding` resources **can be** used in conjunction with `notebooks.InstanceIamMember` resources **only if** they do not grant privilege to the same role.

## google\_notebooks\_instance\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewInstanceIamPolicy(ctx, "policy", &notebooks.InstanceIamPolicyArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			PolicyData:   *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_instance\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstanceIamBinding(ctx, "binding", &notebooks.InstanceIamBindingArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			Role:         pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_instance\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstanceIamMember(ctx, "member", &notebooks.InstanceIamMemberArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			Role:         pulumi.String("roles/viewer"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/instances/{{instance_name}} * {{project}}/{{location}}/{{instance_name}} * {{location}}/{{instance_name}} * {{instance_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud AI Notebooks instance IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamBinding:InstanceIamBinding editor "projects/{{project}}/locations/{{location}}/instances/{{instance_name}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamBinding:InstanceIamBinding editor "projects/{{project}}/locations/{{location}}/instances/{{instance_name}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamBinding:InstanceIamBinding editor projects/{{project}}/locations/{{location}}/instances/{{instance_name}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetInstanceIamBinding

func GetInstanceIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceIamBindingState, opts ...pulumi.ResourceOption) (*InstanceIamBinding, error)

GetInstanceIamBinding gets an existing InstanceIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstanceIamBinding

func NewInstanceIamBinding(ctx *pulumi.Context,
	name string, args *InstanceIamBindingArgs, opts ...pulumi.ResourceOption) (*InstanceIamBinding, error)

NewInstanceIamBinding registers a new resource with the given unique name, arguments, and options.

func (*InstanceIamBinding) ElementType

func (*InstanceIamBinding) ElementType() reflect.Type

func (*InstanceIamBinding) ToInstanceIamBindingOutput

func (i *InstanceIamBinding) ToInstanceIamBindingOutput() InstanceIamBindingOutput

func (*InstanceIamBinding) ToInstanceIamBindingOutputWithContext

func (i *InstanceIamBinding) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput

func (*InstanceIamBinding) ToOutput added in v6.65.1

type InstanceIamBindingArgs

type InstanceIamBindingArgs struct {
	Condition InstanceIamBindingConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Members  pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a InstanceIamBinding resource.

func (InstanceIamBindingArgs) ElementType

func (InstanceIamBindingArgs) ElementType() reflect.Type

type InstanceIamBindingArray

type InstanceIamBindingArray []InstanceIamBindingInput

func (InstanceIamBindingArray) ElementType

func (InstanceIamBindingArray) ElementType() reflect.Type

func (InstanceIamBindingArray) ToInstanceIamBindingArrayOutput

func (i InstanceIamBindingArray) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput

func (InstanceIamBindingArray) ToInstanceIamBindingArrayOutputWithContext

func (i InstanceIamBindingArray) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput

func (InstanceIamBindingArray) ToOutput added in v6.65.1

type InstanceIamBindingArrayInput

type InstanceIamBindingArrayInput interface {
	pulumi.Input

	ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput
	ToInstanceIamBindingArrayOutputWithContext(context.Context) InstanceIamBindingArrayOutput
}

InstanceIamBindingArrayInput is an input type that accepts InstanceIamBindingArray and InstanceIamBindingArrayOutput values. You can construct a concrete instance of `InstanceIamBindingArrayInput` via:

InstanceIamBindingArray{ InstanceIamBindingArgs{...} }

type InstanceIamBindingArrayOutput

type InstanceIamBindingArrayOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingArrayOutput) ElementType

func (InstanceIamBindingArrayOutput) Index

func (InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput

func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutput() InstanceIamBindingArrayOutput

func (InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext

func (o InstanceIamBindingArrayOutput) ToInstanceIamBindingArrayOutputWithContext(ctx context.Context) InstanceIamBindingArrayOutput

func (InstanceIamBindingArrayOutput) ToOutput added in v6.65.1

type InstanceIamBindingCondition

type InstanceIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type InstanceIamBindingConditionArgs

type InstanceIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (InstanceIamBindingConditionArgs) ElementType

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext

func (i InstanceIamBindingConditionArgs) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionArgs) ToOutput added in v6.65.1

type InstanceIamBindingConditionInput

type InstanceIamBindingConditionInput interface {
	pulumi.Input

	ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput
	ToInstanceIamBindingConditionOutputWithContext(context.Context) InstanceIamBindingConditionOutput
}

InstanceIamBindingConditionInput is an input type that accepts InstanceIamBindingConditionArgs and InstanceIamBindingConditionOutput values. You can construct a concrete instance of `InstanceIamBindingConditionInput` via:

InstanceIamBindingConditionArgs{...}

type InstanceIamBindingConditionOutput

type InstanceIamBindingConditionOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingConditionOutput) Description

func (InstanceIamBindingConditionOutput) ElementType

func (InstanceIamBindingConditionOutput) Expression

func (InstanceIamBindingConditionOutput) Title

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutput() InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionOutputWithContext(ctx context.Context) InstanceIamBindingConditionOutput

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext

func (o InstanceIamBindingConditionOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionOutput) ToOutput added in v6.65.1

type InstanceIamBindingConditionPtrInput

type InstanceIamBindingConditionPtrInput interface {
	pulumi.Input

	ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput
	ToInstanceIamBindingConditionPtrOutputWithContext(context.Context) InstanceIamBindingConditionPtrOutput
}

InstanceIamBindingConditionPtrInput is an input type that accepts InstanceIamBindingConditionArgs, InstanceIamBindingConditionPtr and InstanceIamBindingConditionPtrOutput values. You can construct a concrete instance of `InstanceIamBindingConditionPtrInput` via:

        InstanceIamBindingConditionArgs{...}

or:

        nil

type InstanceIamBindingConditionPtrOutput

type InstanceIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingConditionPtrOutput) Description

func (InstanceIamBindingConditionPtrOutput) Elem

func (InstanceIamBindingConditionPtrOutput) ElementType

func (InstanceIamBindingConditionPtrOutput) Expression

func (InstanceIamBindingConditionPtrOutput) Title

func (InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput

func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutput() InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext

func (o InstanceIamBindingConditionPtrOutput) ToInstanceIamBindingConditionPtrOutputWithContext(ctx context.Context) InstanceIamBindingConditionPtrOutput

func (InstanceIamBindingConditionPtrOutput) ToOutput added in v6.65.1

type InstanceIamBindingInput

type InstanceIamBindingInput interface {
	pulumi.Input

	ToInstanceIamBindingOutput() InstanceIamBindingOutput
	ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput
}

type InstanceIamBindingMap

type InstanceIamBindingMap map[string]InstanceIamBindingInput

func (InstanceIamBindingMap) ElementType

func (InstanceIamBindingMap) ElementType() reflect.Type

func (InstanceIamBindingMap) ToInstanceIamBindingMapOutput

func (i InstanceIamBindingMap) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput

func (InstanceIamBindingMap) ToInstanceIamBindingMapOutputWithContext

func (i InstanceIamBindingMap) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput

func (InstanceIamBindingMap) ToOutput added in v6.65.1

type InstanceIamBindingMapInput

type InstanceIamBindingMapInput interface {
	pulumi.Input

	ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput
	ToInstanceIamBindingMapOutputWithContext(context.Context) InstanceIamBindingMapOutput
}

InstanceIamBindingMapInput is an input type that accepts InstanceIamBindingMap and InstanceIamBindingMapOutput values. You can construct a concrete instance of `InstanceIamBindingMapInput` via:

InstanceIamBindingMap{ "key": InstanceIamBindingArgs{...} }

type InstanceIamBindingMapOutput

type InstanceIamBindingMapOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingMapOutput) ElementType

func (InstanceIamBindingMapOutput) MapIndex

func (InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput

func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutput() InstanceIamBindingMapOutput

func (InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext

func (o InstanceIamBindingMapOutput) ToInstanceIamBindingMapOutputWithContext(ctx context.Context) InstanceIamBindingMapOutput

func (InstanceIamBindingMapOutput) ToOutput added in v6.65.1

type InstanceIamBindingOutput

type InstanceIamBindingOutput struct{ *pulumi.OutputState }

func (InstanceIamBindingOutput) Condition added in v6.23.0

func (InstanceIamBindingOutput) ElementType

func (InstanceIamBindingOutput) ElementType() reflect.Type

func (InstanceIamBindingOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (InstanceIamBindingOutput) InstanceName added in v6.23.0

func (o InstanceIamBindingOutput) InstanceName() pulumi.StringOutput

Used to find the parent resource to bind the IAM policy to

func (InstanceIamBindingOutput) Location added in v6.23.0

A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to

func (InstanceIamBindingOutput) Members added in v6.23.0

func (InstanceIamBindingOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (InstanceIamBindingOutput) Role added in v6.23.0

The role that should be applied. Only one `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (InstanceIamBindingOutput) ToInstanceIamBindingOutput

func (o InstanceIamBindingOutput) ToInstanceIamBindingOutput() InstanceIamBindingOutput

func (InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext

func (o InstanceIamBindingOutput) ToInstanceIamBindingOutputWithContext(ctx context.Context) InstanceIamBindingOutput

func (InstanceIamBindingOutput) ToOutput added in v6.65.1

type InstanceIamBindingState

type InstanceIamBindingState struct {
	Condition InstanceIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Members  pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (InstanceIamBindingState) ElementType

func (InstanceIamBindingState) ElementType() reflect.Type

type InstanceIamMember

type InstanceIamMember struct {
	pulumi.CustomResourceState

	Condition InstanceIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput `pulumi:"location"`
	Member   pulumi.StringOutput `pulumi:"member"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
}

Three different resources help you manage your IAM policy for Cloud AI Notebooks Instance. Each of these resources serves a different use case:

* `notebooks.InstanceIamPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `notebooks.InstanceIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved. * `notebooks.InstanceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `notebooks.InstanceIamPolicy`: Retrieves the IAM policy for the instance

> **Note:** `notebooks.InstanceIamPolicy` **cannot** be used in conjunction with `notebooks.InstanceIamBinding` and `notebooks.InstanceIamMember` or they will fight over what your policy should be.

> **Note:** `notebooks.InstanceIamBinding` resources **can be** used in conjunction with `notebooks.InstanceIamMember` resources **only if** they do not grant privilege to the same role.

## google\_notebooks\_instance\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewInstanceIamPolicy(ctx, "policy", &notebooks.InstanceIamPolicyArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			PolicyData:   *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_instance\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstanceIamBinding(ctx, "binding", &notebooks.InstanceIamBindingArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			Role:         pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_instance\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstanceIamMember(ctx, "member", &notebooks.InstanceIamMemberArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			Role:         pulumi.String("roles/viewer"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/instances/{{instance_name}} * {{project}}/{{location}}/{{instance_name}} * {{location}}/{{instance_name}} * {{instance_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud AI Notebooks instance IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamMember:InstanceIamMember editor "projects/{{project}}/locations/{{location}}/instances/{{instance_name}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamMember:InstanceIamMember editor "projects/{{project}}/locations/{{location}}/instances/{{instance_name}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamMember:InstanceIamMember editor projects/{{project}}/locations/{{location}}/instances/{{instance_name}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetInstanceIamMember

func GetInstanceIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceIamMemberState, opts ...pulumi.ResourceOption) (*InstanceIamMember, error)

GetInstanceIamMember gets an existing InstanceIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstanceIamMember

func NewInstanceIamMember(ctx *pulumi.Context,
	name string, args *InstanceIamMemberArgs, opts ...pulumi.ResourceOption) (*InstanceIamMember, error)

NewInstanceIamMember registers a new resource with the given unique name, arguments, and options.

func (*InstanceIamMember) ElementType

func (*InstanceIamMember) ElementType() reflect.Type

func (*InstanceIamMember) ToInstanceIamMemberOutput

func (i *InstanceIamMember) ToInstanceIamMemberOutput() InstanceIamMemberOutput

func (*InstanceIamMember) ToInstanceIamMemberOutputWithContext

func (i *InstanceIamMember) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput

func (*InstanceIamMember) ToOutput added in v6.65.1

type InstanceIamMemberArgs

type InstanceIamMemberArgs struct {
	Condition InstanceIamMemberConditionPtrInput
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Member   pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
}

The set of arguments for constructing a InstanceIamMember resource.

func (InstanceIamMemberArgs) ElementType

func (InstanceIamMemberArgs) ElementType() reflect.Type

type InstanceIamMemberArray

type InstanceIamMemberArray []InstanceIamMemberInput

func (InstanceIamMemberArray) ElementType

func (InstanceIamMemberArray) ElementType() reflect.Type

func (InstanceIamMemberArray) ToInstanceIamMemberArrayOutput

func (i InstanceIamMemberArray) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput

func (InstanceIamMemberArray) ToInstanceIamMemberArrayOutputWithContext

func (i InstanceIamMemberArray) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput

func (InstanceIamMemberArray) ToOutput added in v6.65.1

type InstanceIamMemberArrayInput

type InstanceIamMemberArrayInput interface {
	pulumi.Input

	ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput
	ToInstanceIamMemberArrayOutputWithContext(context.Context) InstanceIamMemberArrayOutput
}

InstanceIamMemberArrayInput is an input type that accepts InstanceIamMemberArray and InstanceIamMemberArrayOutput values. You can construct a concrete instance of `InstanceIamMemberArrayInput` via:

InstanceIamMemberArray{ InstanceIamMemberArgs{...} }

type InstanceIamMemberArrayOutput

type InstanceIamMemberArrayOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberArrayOutput) ElementType

func (InstanceIamMemberArrayOutput) Index

func (InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput

func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutput() InstanceIamMemberArrayOutput

func (InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext

func (o InstanceIamMemberArrayOutput) ToInstanceIamMemberArrayOutputWithContext(ctx context.Context) InstanceIamMemberArrayOutput

func (InstanceIamMemberArrayOutput) ToOutput added in v6.65.1

type InstanceIamMemberCondition

type InstanceIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type InstanceIamMemberConditionArgs

type InstanceIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (InstanceIamMemberConditionArgs) ElementType

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext

func (i InstanceIamMemberConditionArgs) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionArgs) ToOutput added in v6.65.1

type InstanceIamMemberConditionInput

type InstanceIamMemberConditionInput interface {
	pulumi.Input

	ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput
	ToInstanceIamMemberConditionOutputWithContext(context.Context) InstanceIamMemberConditionOutput
}

InstanceIamMemberConditionInput is an input type that accepts InstanceIamMemberConditionArgs and InstanceIamMemberConditionOutput values. You can construct a concrete instance of `InstanceIamMemberConditionInput` via:

InstanceIamMemberConditionArgs{...}

type InstanceIamMemberConditionOutput

type InstanceIamMemberConditionOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberConditionOutput) Description

func (InstanceIamMemberConditionOutput) ElementType

func (InstanceIamMemberConditionOutput) Expression

func (InstanceIamMemberConditionOutput) Title

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutput() InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionOutputWithContext(ctx context.Context) InstanceIamMemberConditionOutput

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext

func (o InstanceIamMemberConditionOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionOutput) ToOutput added in v6.65.1

type InstanceIamMemberConditionPtrInput

type InstanceIamMemberConditionPtrInput interface {
	pulumi.Input

	ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput
	ToInstanceIamMemberConditionPtrOutputWithContext(context.Context) InstanceIamMemberConditionPtrOutput
}

InstanceIamMemberConditionPtrInput is an input type that accepts InstanceIamMemberConditionArgs, InstanceIamMemberConditionPtr and InstanceIamMemberConditionPtrOutput values. You can construct a concrete instance of `InstanceIamMemberConditionPtrInput` via:

        InstanceIamMemberConditionArgs{...}

or:

        nil

type InstanceIamMemberConditionPtrOutput

type InstanceIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberConditionPtrOutput) Description

func (InstanceIamMemberConditionPtrOutput) Elem

func (InstanceIamMemberConditionPtrOutput) ElementType

func (InstanceIamMemberConditionPtrOutput) Expression

func (InstanceIamMemberConditionPtrOutput) Title

func (InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput

func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutput() InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext

func (o InstanceIamMemberConditionPtrOutput) ToInstanceIamMemberConditionPtrOutputWithContext(ctx context.Context) InstanceIamMemberConditionPtrOutput

func (InstanceIamMemberConditionPtrOutput) ToOutput added in v6.65.1

type InstanceIamMemberInput

type InstanceIamMemberInput interface {
	pulumi.Input

	ToInstanceIamMemberOutput() InstanceIamMemberOutput
	ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput
}

type InstanceIamMemberMap

type InstanceIamMemberMap map[string]InstanceIamMemberInput

func (InstanceIamMemberMap) ElementType

func (InstanceIamMemberMap) ElementType() reflect.Type

func (InstanceIamMemberMap) ToInstanceIamMemberMapOutput

func (i InstanceIamMemberMap) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput

func (InstanceIamMemberMap) ToInstanceIamMemberMapOutputWithContext

func (i InstanceIamMemberMap) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput

func (InstanceIamMemberMap) ToOutput added in v6.65.1

type InstanceIamMemberMapInput

type InstanceIamMemberMapInput interface {
	pulumi.Input

	ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput
	ToInstanceIamMemberMapOutputWithContext(context.Context) InstanceIamMemberMapOutput
}

InstanceIamMemberMapInput is an input type that accepts InstanceIamMemberMap and InstanceIamMemberMapOutput values. You can construct a concrete instance of `InstanceIamMemberMapInput` via:

InstanceIamMemberMap{ "key": InstanceIamMemberArgs{...} }

type InstanceIamMemberMapOutput

type InstanceIamMemberMapOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberMapOutput) ElementType

func (InstanceIamMemberMapOutput) ElementType() reflect.Type

func (InstanceIamMemberMapOutput) MapIndex

func (InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput

func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutput() InstanceIamMemberMapOutput

func (InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext

func (o InstanceIamMemberMapOutput) ToInstanceIamMemberMapOutputWithContext(ctx context.Context) InstanceIamMemberMapOutput

func (InstanceIamMemberMapOutput) ToOutput added in v6.65.1

type InstanceIamMemberOutput

type InstanceIamMemberOutput struct{ *pulumi.OutputState }

func (InstanceIamMemberOutput) Condition added in v6.23.0

func (InstanceIamMemberOutput) ElementType

func (InstanceIamMemberOutput) ElementType() reflect.Type

func (InstanceIamMemberOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (InstanceIamMemberOutput) InstanceName added in v6.23.0

func (o InstanceIamMemberOutput) InstanceName() pulumi.StringOutput

Used to find the parent resource to bind the IAM policy to

func (InstanceIamMemberOutput) Location added in v6.23.0

A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to

func (InstanceIamMemberOutput) Member added in v6.23.0

func (InstanceIamMemberOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (InstanceIamMemberOutput) Role added in v6.23.0

The role that should be applied. Only one `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (InstanceIamMemberOutput) ToInstanceIamMemberOutput

func (o InstanceIamMemberOutput) ToInstanceIamMemberOutput() InstanceIamMemberOutput

func (InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext

func (o InstanceIamMemberOutput) ToInstanceIamMemberOutputWithContext(ctx context.Context) InstanceIamMemberOutput

func (InstanceIamMemberOutput) ToOutput added in v6.65.1

type InstanceIamMemberState

type InstanceIamMemberState struct {
	Condition InstanceIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Member   pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.InstanceIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
}

func (InstanceIamMemberState) ElementType

func (InstanceIamMemberState) ElementType() reflect.Type

type InstanceIamPolicy

type InstanceIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringOutput `pulumi:"instanceName"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput `pulumi:"location"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
}

Three different resources help you manage your IAM policy for Cloud AI Notebooks Instance. Each of these resources serves a different use case:

* `notebooks.InstanceIamPolicy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `notebooks.InstanceIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved. * `notebooks.InstanceIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `notebooks.InstanceIamPolicy`: Retrieves the IAM policy for the instance

> **Note:** `notebooks.InstanceIamPolicy` **cannot** be used in conjunction with `notebooks.InstanceIamBinding` and `notebooks.InstanceIamMember` or they will fight over what your policy should be.

> **Note:** `notebooks.InstanceIamBinding` resources **can be** used in conjunction with `notebooks.InstanceIamMember` resources **only if** they do not grant privilege to the same role.

## google\_notebooks\_instance\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewInstanceIamPolicy(ctx, "policy", &notebooks.InstanceIamPolicyArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			PolicyData:   *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_instance\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstanceIamBinding(ctx, "binding", &notebooks.InstanceIamBindingArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			Role:         pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_instance\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewInstanceIamMember(ctx, "member", &notebooks.InstanceIamMemberArgs{
			Project:      pulumi.Any(google_notebooks_instance.Instance.Project),
			Location:     pulumi.Any(google_notebooks_instance.Instance.Location),
			InstanceName: pulumi.Any(google_notebooks_instance.Instance.Name),
			Role:         pulumi.String("roles/viewer"),
			Member:       pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/instances/{{instance_name}} * {{project}}/{{location}}/{{instance_name}} * {{location}}/{{instance_name}} * {{instance_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud AI Notebooks instance IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamPolicy:InstanceIamPolicy editor "projects/{{project}}/locations/{{location}}/instances/{{instance_name}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamPolicy:InstanceIamPolicy editor "projects/{{project}}/locations/{{location}}/instances/{{instance_name}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:notebooks/instanceIamPolicy:InstanceIamPolicy editor projects/{{project}}/locations/{{location}}/instances/{{instance_name}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetInstanceIamPolicy

func GetInstanceIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *InstanceIamPolicyState, opts ...pulumi.ResourceOption) (*InstanceIamPolicy, error)

GetInstanceIamPolicy gets an existing InstanceIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewInstanceIamPolicy

func NewInstanceIamPolicy(ctx *pulumi.Context,
	name string, args *InstanceIamPolicyArgs, opts ...pulumi.ResourceOption) (*InstanceIamPolicy, error)

NewInstanceIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*InstanceIamPolicy) ElementType

func (*InstanceIamPolicy) ElementType() reflect.Type

func (*InstanceIamPolicy) ToInstanceIamPolicyOutput

func (i *InstanceIamPolicy) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput

func (*InstanceIamPolicy) ToInstanceIamPolicyOutputWithContext

func (i *InstanceIamPolicy) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput

func (*InstanceIamPolicy) ToOutput added in v6.65.1

type InstanceIamPolicyArgs

type InstanceIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a InstanceIamPolicy resource.

func (InstanceIamPolicyArgs) ElementType

func (InstanceIamPolicyArgs) ElementType() reflect.Type

type InstanceIamPolicyArray

type InstanceIamPolicyArray []InstanceIamPolicyInput

func (InstanceIamPolicyArray) ElementType

func (InstanceIamPolicyArray) ElementType() reflect.Type

func (InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutput

func (i InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput

func (InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutputWithContext

func (i InstanceIamPolicyArray) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput

func (InstanceIamPolicyArray) ToOutput added in v6.65.1

type InstanceIamPolicyArrayInput

type InstanceIamPolicyArrayInput interface {
	pulumi.Input

	ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput
	ToInstanceIamPolicyArrayOutputWithContext(context.Context) InstanceIamPolicyArrayOutput
}

InstanceIamPolicyArrayInput is an input type that accepts InstanceIamPolicyArray and InstanceIamPolicyArrayOutput values. You can construct a concrete instance of `InstanceIamPolicyArrayInput` via:

InstanceIamPolicyArray{ InstanceIamPolicyArgs{...} }

type InstanceIamPolicyArrayOutput

type InstanceIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (InstanceIamPolicyArrayOutput) ElementType

func (InstanceIamPolicyArrayOutput) Index

func (InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput

func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutput() InstanceIamPolicyArrayOutput

func (InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext

func (o InstanceIamPolicyArrayOutput) ToInstanceIamPolicyArrayOutputWithContext(ctx context.Context) InstanceIamPolicyArrayOutput

func (InstanceIamPolicyArrayOutput) ToOutput added in v6.65.1

type InstanceIamPolicyInput

type InstanceIamPolicyInput interface {
	pulumi.Input

	ToInstanceIamPolicyOutput() InstanceIamPolicyOutput
	ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput
}

type InstanceIamPolicyMap

type InstanceIamPolicyMap map[string]InstanceIamPolicyInput

func (InstanceIamPolicyMap) ElementType

func (InstanceIamPolicyMap) ElementType() reflect.Type

func (InstanceIamPolicyMap) ToInstanceIamPolicyMapOutput

func (i InstanceIamPolicyMap) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput

func (InstanceIamPolicyMap) ToInstanceIamPolicyMapOutputWithContext

func (i InstanceIamPolicyMap) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput

func (InstanceIamPolicyMap) ToOutput added in v6.65.1

type InstanceIamPolicyMapInput

type InstanceIamPolicyMapInput interface {
	pulumi.Input

	ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput
	ToInstanceIamPolicyMapOutputWithContext(context.Context) InstanceIamPolicyMapOutput
}

InstanceIamPolicyMapInput is an input type that accepts InstanceIamPolicyMap and InstanceIamPolicyMapOutput values. You can construct a concrete instance of `InstanceIamPolicyMapInput` via:

InstanceIamPolicyMap{ "key": InstanceIamPolicyArgs{...} }

type InstanceIamPolicyMapOutput

type InstanceIamPolicyMapOutput struct{ *pulumi.OutputState }

func (InstanceIamPolicyMapOutput) ElementType

func (InstanceIamPolicyMapOutput) ElementType() reflect.Type

func (InstanceIamPolicyMapOutput) MapIndex

func (InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput

func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutput() InstanceIamPolicyMapOutput

func (InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext

func (o InstanceIamPolicyMapOutput) ToInstanceIamPolicyMapOutputWithContext(ctx context.Context) InstanceIamPolicyMapOutput

func (InstanceIamPolicyMapOutput) ToOutput added in v6.65.1

type InstanceIamPolicyOutput

type InstanceIamPolicyOutput struct{ *pulumi.OutputState }

func (InstanceIamPolicyOutput) ElementType

func (InstanceIamPolicyOutput) ElementType() reflect.Type

func (InstanceIamPolicyOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (InstanceIamPolicyOutput) InstanceName added in v6.23.0

func (o InstanceIamPolicyOutput) InstanceName() pulumi.StringOutput

Used to find the parent resource to bind the IAM policy to

func (InstanceIamPolicyOutput) Location added in v6.23.0

A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to

func (InstanceIamPolicyOutput) PolicyData added in v6.23.0

The policy data generated by a `organizations.getIAMPolicy` data source.

func (InstanceIamPolicyOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (InstanceIamPolicyOutput) ToInstanceIamPolicyOutput

func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutput() InstanceIamPolicyOutput

func (InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext

func (o InstanceIamPolicyOutput) ToInstanceIamPolicyOutputWithContext(ctx context.Context) InstanceIamPolicyOutput

func (InstanceIamPolicyOutput) ToOutput added in v6.65.1

type InstanceIamPolicyState

type InstanceIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
}

func (InstanceIamPolicyState) ElementType

func (InstanceIamPolicyState) ElementType() reflect.Type

type InstanceInput

type InstanceInput interface {
	pulumi.Input

	ToInstanceOutput() InstanceOutput
	ToInstanceOutputWithContext(ctx context.Context) InstanceOutput
}

type InstanceMap

type InstanceMap map[string]InstanceInput

func (InstanceMap) ElementType

func (InstanceMap) ElementType() reflect.Type

func (InstanceMap) ToInstanceMapOutput

func (i InstanceMap) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMap) ToInstanceMapOutputWithContext

func (i InstanceMap) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

func (InstanceMap) ToOutput added in v6.65.1

func (i InstanceMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Instance]

type InstanceMapInput

type InstanceMapInput interface {
	pulumi.Input

	ToInstanceMapOutput() InstanceMapOutput
	ToInstanceMapOutputWithContext(context.Context) InstanceMapOutput
}

InstanceMapInput is an input type that accepts InstanceMap and InstanceMapOutput values. You can construct a concrete instance of `InstanceMapInput` via:

InstanceMap{ "key": InstanceArgs{...} }

type InstanceMapOutput

type InstanceMapOutput struct{ *pulumi.OutputState }

func (InstanceMapOutput) ElementType

func (InstanceMapOutput) ElementType() reflect.Type

func (InstanceMapOutput) MapIndex

func (InstanceMapOutput) ToInstanceMapOutput

func (o InstanceMapOutput) ToInstanceMapOutput() InstanceMapOutput

func (InstanceMapOutput) ToInstanceMapOutputWithContext

func (o InstanceMapOutput) ToInstanceMapOutputWithContext(ctx context.Context) InstanceMapOutput

func (InstanceMapOutput) ToOutput added in v6.65.1

type InstanceOutput

type InstanceOutput struct{ *pulumi.OutputState }

func (InstanceOutput) AcceleratorConfig added in v6.23.0

func (o InstanceOutput) AcceleratorConfig() InstanceAcceleratorConfigPtrOutput

The hardware accelerator used on this instance. If you use accelerators, make sure that your configuration has enough vCPUs and memory to support the machineType you have selected. Structure is documented below.

func (InstanceOutput) BootDiskSizeGb added in v6.23.0

func (o InstanceOutput) BootDiskSizeGb() pulumi.IntPtrOutput

The size of the boot disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB. If not specified, this defaults to 100.

func (InstanceOutput) BootDiskType added in v6.23.0

func (o InstanceOutput) BootDiskType() pulumi.StringPtrOutput

Possible disk types for notebook instances. Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.

func (InstanceOutput) ContainerImage added in v6.23.0

Use a container image to start the notebook instance. Structure is documented below.

func (InstanceOutput) CreateTime added in v6.23.0

func (o InstanceOutput) CreateTime() pulumi.StringOutput

Instance creation time

func (InstanceOutput) CustomGpuDriverPath added in v6.23.0

func (o InstanceOutput) CustomGpuDriverPath() pulumi.StringPtrOutput

Specify a custom Cloud Storage path where the GPU driver is stored. If not specified, we'll automatically choose from official GPU drivers.

func (InstanceOutput) DataDiskSizeGb added in v6.23.0

func (o InstanceOutput) DataDiskSizeGb() pulumi.IntPtrOutput

The size of the data disk in GB attached to this instance, up to a maximum of 64000 GB (64 TB). You can choose the size of the data disk based on how big your notebooks and data are. If not specified, this defaults to 100.

func (InstanceOutput) DataDiskType added in v6.23.0

func (o InstanceOutput) DataDiskType() pulumi.StringPtrOutput

Possible disk types for notebook instances. Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.

func (InstanceOutput) DiskEncryption added in v6.23.0

func (o InstanceOutput) DiskEncryption() pulumi.StringPtrOutput

Disk encryption method used on the boot and data disks, defaults to GMEK. Possible values are: `DISK_ENCRYPTION_UNSPECIFIED`, `GMEK`, `CMEK`.

func (InstanceOutput) ElementType

func (InstanceOutput) ElementType() reflect.Type

func (InstanceOutput) InstallGpuDriver added in v6.23.0

func (o InstanceOutput) InstallGpuDriver() pulumi.BoolPtrOutput

Whether the end user authorizes Google Cloud to install GPU driver on this instance. If this field is empty or set to false, the GPU driver won't be installed. Only applicable to instances with GPUs.

func (InstanceOutput) InstanceOwners added in v6.23.0

func (o InstanceOutput) InstanceOwners() pulumi.StringArrayOutput

The list of owners 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.

func (InstanceOutput) KmsKey added in v6.23.0

The KMS key used to encrypt the disks, only applicable if diskEncryption is CMEK. Format: projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}

func (InstanceOutput) Labels added in v6.23.0

Labels to apply to this instance. These can be later modified by the setLabels method. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

func (InstanceOutput) Location added in v6.23.0

func (o InstanceOutput) Location() pulumi.StringOutput

A reference to the zone where the machine resides.

***

func (InstanceOutput) MachineType added in v6.23.0

func (o InstanceOutput) MachineType() pulumi.StringOutput

A reference to a machine type which defines VM kind.

func (InstanceOutput) Metadata added in v6.23.0

func (o InstanceOutput) Metadata() pulumi.StringMapOutput

Custom metadata to apply to this instance. An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.

func (InstanceOutput) Name added in v6.23.0

The name specified for the Notebook instance.

func (InstanceOutput) Network added in v6.23.0

func (o InstanceOutput) Network() pulumi.StringOutput

The name of the VPC that this instance is in. Format: projects/{project_id}/global/networks/{network_id}

func (InstanceOutput) NicType added in v6.23.0

The type of vNIC driver. Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.

func (InstanceOutput) NoProxyAccess added in v6.23.0

func (o InstanceOutput) NoProxyAccess() pulumi.BoolPtrOutput

The notebook instance will not register with the proxy..

func (InstanceOutput) NoPublicIp added in v6.23.0

func (o InstanceOutput) NoPublicIp() pulumi.BoolPtrOutput

No public IP will be assigned to this instance.

func (InstanceOutput) NoRemoveDataDisk added in v6.23.0

func (o InstanceOutput) NoRemoveDataDisk() pulumi.BoolPtrOutput

If true, the data disk will not be auto deleted when deleting the instance.

func (InstanceOutput) PostStartupScript added in v6.23.0

func (o InstanceOutput) PostStartupScript() pulumi.StringPtrOutput

Path to a Bash script that automatically runs after a notebook instance fully boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-name).

func (InstanceOutput) Project added in v6.23.0

func (o InstanceOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (InstanceOutput) ProxyUri added in v6.23.0

func (o InstanceOutput) ProxyUri() pulumi.StringOutput

The proxy endpoint that is used to access the Jupyter notebook. Only returned when the resource is in a `PROVISIONED` state. If needed you can utilize `pulumi up -refresh-only` to await the population of this value.

func (InstanceOutput) ReservationAffinity added in v6.23.0

func (o InstanceOutput) ReservationAffinity() InstanceReservationAffinityPtrOutput

Reservation Affinity for consuming Zonal reservation. Structure is documented below.

func (InstanceOutput) ServiceAccount added in v6.23.0

func (o InstanceOutput) ServiceAccount() pulumi.StringOutput

The service account on this instance, giving access to other Google Cloud services. You can use any service account within the same project, but you must have the service account user permission to use the instance. If not specified, the Compute Engine default service account is used.

func (InstanceOutput) ServiceAccountScopes added in v6.23.0

func (o InstanceOutput) ServiceAccountScopes() pulumi.StringArrayOutput

Optional. The URIs of service account scopes to be included in Compute Engine instances. If not specified, the following scopes are defined: - https://www.googleapis.com/auth/cloud-platform - https://www.googleapis.com/auth/userinfo.email

func (InstanceOutput) ShieldedInstanceConfig added in v6.23.0

func (o InstanceOutput) ShieldedInstanceConfig() InstanceShieldedInstanceConfigOutput

A set of Shielded Instance options. Check [Images using supported Shielded VM features] Not all combinations are valid Structure is documented below.

func (InstanceOutput) State added in v6.23.0

The state of this instance.

func (InstanceOutput) Subnet added in v6.23.0

func (o InstanceOutput) Subnet() pulumi.StringOutput

The name of the subnet that this instance is in. Format: projects/{project_id}/regions/{region}/subnetworks/{subnetwork_id}

func (InstanceOutput) Tags added in v6.23.0

The Compute Engine tags to add to instance.

func (InstanceOutput) ToInstanceOutput

func (o InstanceOutput) ToInstanceOutput() InstanceOutput

func (InstanceOutput) ToInstanceOutputWithContext

func (o InstanceOutput) ToInstanceOutputWithContext(ctx context.Context) InstanceOutput

func (InstanceOutput) ToOutput added in v6.65.1

func (InstanceOutput) UpdateTime added in v6.23.0

func (o InstanceOutput) UpdateTime() pulumi.StringOutput

Instance update time.

func (InstanceOutput) VmImage added in v6.23.0

Use a Compute Engine VM image to start the notebook instance. Structure is documented below.

type InstanceReservationAffinity

type InstanceReservationAffinity struct {
	// The type of Compute Reservation.
	// Possible values are: `NO_RESERVATION`, `ANY_RESERVATION`, `SPECIFIC_RESERVATION`.
	ConsumeReservationType string `pulumi:"consumeReservationType"`
	// Corresponds to the label key of reservation resource.
	Key *string `pulumi:"key"`
	// Corresponds to the label values of reservation resource.
	Values []string `pulumi:"values"`
}

type InstanceReservationAffinityArgs

type InstanceReservationAffinityArgs struct {
	// The type of Compute Reservation.
	// Possible values are: `NO_RESERVATION`, `ANY_RESERVATION`, `SPECIFIC_RESERVATION`.
	ConsumeReservationType pulumi.StringInput `pulumi:"consumeReservationType"`
	// Corresponds to the label key of reservation resource.
	Key pulumi.StringPtrInput `pulumi:"key"`
	// Corresponds to the label values of reservation resource.
	Values pulumi.StringArrayInput `pulumi:"values"`
}

func (InstanceReservationAffinityArgs) ElementType

func (InstanceReservationAffinityArgs) ToInstanceReservationAffinityOutput

func (i InstanceReservationAffinityArgs) ToInstanceReservationAffinityOutput() InstanceReservationAffinityOutput

func (InstanceReservationAffinityArgs) ToInstanceReservationAffinityOutputWithContext

func (i InstanceReservationAffinityArgs) ToInstanceReservationAffinityOutputWithContext(ctx context.Context) InstanceReservationAffinityOutput

func (InstanceReservationAffinityArgs) ToInstanceReservationAffinityPtrOutput

func (i InstanceReservationAffinityArgs) ToInstanceReservationAffinityPtrOutput() InstanceReservationAffinityPtrOutput

func (InstanceReservationAffinityArgs) ToInstanceReservationAffinityPtrOutputWithContext

func (i InstanceReservationAffinityArgs) ToInstanceReservationAffinityPtrOutputWithContext(ctx context.Context) InstanceReservationAffinityPtrOutput

func (InstanceReservationAffinityArgs) ToOutput added in v6.65.1

type InstanceReservationAffinityInput

type InstanceReservationAffinityInput interface {
	pulumi.Input

	ToInstanceReservationAffinityOutput() InstanceReservationAffinityOutput
	ToInstanceReservationAffinityOutputWithContext(context.Context) InstanceReservationAffinityOutput
}

InstanceReservationAffinityInput is an input type that accepts InstanceReservationAffinityArgs and InstanceReservationAffinityOutput values. You can construct a concrete instance of `InstanceReservationAffinityInput` via:

InstanceReservationAffinityArgs{...}

type InstanceReservationAffinityOutput

type InstanceReservationAffinityOutput struct{ *pulumi.OutputState }

func (InstanceReservationAffinityOutput) ConsumeReservationType

func (o InstanceReservationAffinityOutput) ConsumeReservationType() pulumi.StringOutput

The type of Compute Reservation. Possible values are: `NO_RESERVATION`, `ANY_RESERVATION`, `SPECIFIC_RESERVATION`.

func (InstanceReservationAffinityOutput) ElementType

func (InstanceReservationAffinityOutput) Key

Corresponds to the label key of reservation resource.

func (InstanceReservationAffinityOutput) ToInstanceReservationAffinityOutput

func (o InstanceReservationAffinityOutput) ToInstanceReservationAffinityOutput() InstanceReservationAffinityOutput

func (InstanceReservationAffinityOutput) ToInstanceReservationAffinityOutputWithContext

func (o InstanceReservationAffinityOutput) ToInstanceReservationAffinityOutputWithContext(ctx context.Context) InstanceReservationAffinityOutput

func (InstanceReservationAffinityOutput) ToInstanceReservationAffinityPtrOutput

func (o InstanceReservationAffinityOutput) ToInstanceReservationAffinityPtrOutput() InstanceReservationAffinityPtrOutput

func (InstanceReservationAffinityOutput) ToInstanceReservationAffinityPtrOutputWithContext

func (o InstanceReservationAffinityOutput) ToInstanceReservationAffinityPtrOutputWithContext(ctx context.Context) InstanceReservationAffinityPtrOutput

func (InstanceReservationAffinityOutput) ToOutput added in v6.65.1

func (InstanceReservationAffinityOutput) Values

Corresponds to the label values of reservation resource.

type InstanceReservationAffinityPtrInput

type InstanceReservationAffinityPtrInput interface {
	pulumi.Input

	ToInstanceReservationAffinityPtrOutput() InstanceReservationAffinityPtrOutput
	ToInstanceReservationAffinityPtrOutputWithContext(context.Context) InstanceReservationAffinityPtrOutput
}

InstanceReservationAffinityPtrInput is an input type that accepts InstanceReservationAffinityArgs, InstanceReservationAffinityPtr and InstanceReservationAffinityPtrOutput values. You can construct a concrete instance of `InstanceReservationAffinityPtrInput` via:

        InstanceReservationAffinityArgs{...}

or:

        nil

type InstanceReservationAffinityPtrOutput

type InstanceReservationAffinityPtrOutput struct{ *pulumi.OutputState }

func (InstanceReservationAffinityPtrOutput) ConsumeReservationType

func (o InstanceReservationAffinityPtrOutput) ConsumeReservationType() pulumi.StringPtrOutput

The type of Compute Reservation. Possible values are: `NO_RESERVATION`, `ANY_RESERVATION`, `SPECIFIC_RESERVATION`.

func (InstanceReservationAffinityPtrOutput) Elem

func (InstanceReservationAffinityPtrOutput) ElementType

func (InstanceReservationAffinityPtrOutput) Key

Corresponds to the label key of reservation resource.

func (InstanceReservationAffinityPtrOutput) ToInstanceReservationAffinityPtrOutput

func (o InstanceReservationAffinityPtrOutput) ToInstanceReservationAffinityPtrOutput() InstanceReservationAffinityPtrOutput

func (InstanceReservationAffinityPtrOutput) ToInstanceReservationAffinityPtrOutputWithContext

func (o InstanceReservationAffinityPtrOutput) ToInstanceReservationAffinityPtrOutputWithContext(ctx context.Context) InstanceReservationAffinityPtrOutput

func (InstanceReservationAffinityPtrOutput) ToOutput added in v6.65.1

func (InstanceReservationAffinityPtrOutput) Values

Corresponds to the label values of reservation resource.

type InstanceShieldedInstanceConfig

type InstanceShieldedInstanceConfig struct {
	// Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the
	// boot integrity of the instance. The attestation is performed against the integrity policy baseline.
	// This baseline is initially derived from the implicitly trusted boot image when the instance is created.
	// Enabled by default.
	EnableIntegrityMonitoring *bool `pulumi:"enableIntegrityMonitoring"`
	// Defines whether the 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.
	EnableSecureBoot *bool `pulumi:"enableSecureBoot"`
	// Defines whether the instance has the vTPM enabled.
	// Enabled by default.
	EnableVtpm *bool `pulumi:"enableVtpm"`
}

type InstanceShieldedInstanceConfigArgs

type InstanceShieldedInstanceConfigArgs struct {
	// Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the
	// boot integrity of the instance. The attestation is performed against the integrity policy baseline.
	// This baseline is initially derived from the implicitly trusted boot image when the instance is created.
	// Enabled by default.
	EnableIntegrityMonitoring pulumi.BoolPtrInput `pulumi:"enableIntegrityMonitoring"`
	// Defines whether the 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.
	EnableSecureBoot pulumi.BoolPtrInput `pulumi:"enableSecureBoot"`
	// Defines whether the instance has the vTPM enabled.
	// Enabled by default.
	EnableVtpm pulumi.BoolPtrInput `pulumi:"enableVtpm"`
}

func (InstanceShieldedInstanceConfigArgs) ElementType

func (InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigOutput

func (i InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigOutput() InstanceShieldedInstanceConfigOutput

func (InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigOutputWithContext

func (i InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigOutputWithContext(ctx context.Context) InstanceShieldedInstanceConfigOutput

func (InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigPtrOutput

func (i InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigPtrOutput() InstanceShieldedInstanceConfigPtrOutput

func (InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigPtrOutputWithContext

func (i InstanceShieldedInstanceConfigArgs) ToInstanceShieldedInstanceConfigPtrOutputWithContext(ctx context.Context) InstanceShieldedInstanceConfigPtrOutput

func (InstanceShieldedInstanceConfigArgs) ToOutput added in v6.65.1

type InstanceShieldedInstanceConfigInput

type InstanceShieldedInstanceConfigInput interface {
	pulumi.Input

	ToInstanceShieldedInstanceConfigOutput() InstanceShieldedInstanceConfigOutput
	ToInstanceShieldedInstanceConfigOutputWithContext(context.Context) InstanceShieldedInstanceConfigOutput
}

InstanceShieldedInstanceConfigInput is an input type that accepts InstanceShieldedInstanceConfigArgs and InstanceShieldedInstanceConfigOutput values. You can construct a concrete instance of `InstanceShieldedInstanceConfigInput` via:

InstanceShieldedInstanceConfigArgs{...}

type InstanceShieldedInstanceConfigOutput

type InstanceShieldedInstanceConfigOutput struct{ *pulumi.OutputState }

func (InstanceShieldedInstanceConfigOutput) ElementType

func (InstanceShieldedInstanceConfigOutput) EnableIntegrityMonitoring

func (o InstanceShieldedInstanceConfigOutput) EnableIntegrityMonitoring() pulumi.BoolPtrOutput

Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the instance is created. Enabled by default.

func (InstanceShieldedInstanceConfigOutput) EnableSecureBoot

Defines whether the 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.

func (InstanceShieldedInstanceConfigOutput) EnableVtpm

Defines whether the instance has the vTPM enabled. Enabled by default.

func (InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigOutput

func (o InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigOutput() InstanceShieldedInstanceConfigOutput

func (InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigOutputWithContext

func (o InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigOutputWithContext(ctx context.Context) InstanceShieldedInstanceConfigOutput

func (InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigPtrOutput

func (o InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigPtrOutput() InstanceShieldedInstanceConfigPtrOutput

func (InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigPtrOutputWithContext

func (o InstanceShieldedInstanceConfigOutput) ToInstanceShieldedInstanceConfigPtrOutputWithContext(ctx context.Context) InstanceShieldedInstanceConfigPtrOutput

func (InstanceShieldedInstanceConfigOutput) ToOutput added in v6.65.1

type InstanceShieldedInstanceConfigPtrInput

type InstanceShieldedInstanceConfigPtrInput interface {
	pulumi.Input

	ToInstanceShieldedInstanceConfigPtrOutput() InstanceShieldedInstanceConfigPtrOutput
	ToInstanceShieldedInstanceConfigPtrOutputWithContext(context.Context) InstanceShieldedInstanceConfigPtrOutput
}

InstanceShieldedInstanceConfigPtrInput is an input type that accepts InstanceShieldedInstanceConfigArgs, InstanceShieldedInstanceConfigPtr and InstanceShieldedInstanceConfigPtrOutput values. You can construct a concrete instance of `InstanceShieldedInstanceConfigPtrInput` via:

        InstanceShieldedInstanceConfigArgs{...}

or:

        nil

type InstanceShieldedInstanceConfigPtrOutput

type InstanceShieldedInstanceConfigPtrOutput struct{ *pulumi.OutputState }

func (InstanceShieldedInstanceConfigPtrOutput) Elem

func (InstanceShieldedInstanceConfigPtrOutput) ElementType

func (InstanceShieldedInstanceConfigPtrOutput) EnableIntegrityMonitoring

func (o InstanceShieldedInstanceConfigPtrOutput) EnableIntegrityMonitoring() pulumi.BoolPtrOutput

Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the instance is created. Enabled by default.

func (InstanceShieldedInstanceConfigPtrOutput) EnableSecureBoot

Defines whether the 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.

func (InstanceShieldedInstanceConfigPtrOutput) EnableVtpm

Defines whether the instance has the vTPM enabled. Enabled by default.

func (InstanceShieldedInstanceConfigPtrOutput) ToInstanceShieldedInstanceConfigPtrOutput

func (o InstanceShieldedInstanceConfigPtrOutput) ToInstanceShieldedInstanceConfigPtrOutput() InstanceShieldedInstanceConfigPtrOutput

func (InstanceShieldedInstanceConfigPtrOutput) ToInstanceShieldedInstanceConfigPtrOutputWithContext

func (o InstanceShieldedInstanceConfigPtrOutput) ToInstanceShieldedInstanceConfigPtrOutputWithContext(ctx context.Context) InstanceShieldedInstanceConfigPtrOutput

func (InstanceShieldedInstanceConfigPtrOutput) ToOutput added in v6.65.1

type InstanceState

type InstanceState struct {
	// The hardware accelerator used on this instance. If you use accelerators,
	// make sure that your configuration has enough vCPUs and memory to support the
	// machineType you have selected.
	// Structure is documented below.
	AcceleratorConfig InstanceAcceleratorConfigPtrInput
	// The size of the boot disk in GB attached to this instance,
	// up to a maximum of 64000 GB (64 TB). The minimum recommended value is 100 GB.
	// If not specified, this defaults to 100.
	BootDiskSizeGb pulumi.IntPtrInput
	// Possible disk types for notebook instances.
	// Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
	BootDiskType pulumi.StringPtrInput
	// Use a container image to start the notebook instance.
	// Structure is documented below.
	ContainerImage InstanceContainerImagePtrInput
	// Instance creation time
	CreateTime pulumi.StringPtrInput
	// Specify a custom Cloud Storage path where the GPU driver is stored.
	// If not specified, we'll automatically choose from official GPU drivers.
	CustomGpuDriverPath pulumi.StringPtrInput
	// The size of the data disk in GB attached to this instance,
	// up to a maximum of 64000 GB (64 TB).
	// You can choose the size of the data disk based on how big your notebooks and data are.
	// If not specified, this defaults to 100.
	DataDiskSizeGb pulumi.IntPtrInput
	// Possible disk types for notebook instances.
	// Possible values are: `DISK_TYPE_UNSPECIFIED`, `PD_STANDARD`, `PD_SSD`, `PD_BALANCED`, `PD_EXTREME`.
	DataDiskType pulumi.StringPtrInput
	// Disk encryption method used on the boot and data disks, defaults to GMEK.
	// Possible values are: `DISK_ENCRYPTION_UNSPECIFIED`, `GMEK`, `CMEK`.
	DiskEncryption pulumi.StringPtrInput
	// Whether the end user authorizes Google Cloud to install GPU driver
	// on this instance. If this field is empty or set to false, the GPU driver
	// won't be installed. Only applicable to instances with GPUs.
	InstallGpuDriver pulumi.BoolPtrInput
	// The list of owners 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.
	InstanceOwners pulumi.StringArrayInput
	// The KMS key used to encrypt the disks, only applicable if diskEncryption is CMEK.
	// Format: projects/{project_id}/locations/{location}/keyRings/{key_ring_id}/cryptoKeys/{key_id}
	KmsKey pulumi.StringPtrInput
	// Labels to apply to this instance. These can be later modified by the setLabels method.
	// An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Labels pulumi.StringMapInput
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringPtrInput
	// A reference to a machine type which defines VM kind.
	MachineType pulumi.StringPtrInput
	// Custom metadata to apply to this instance.
	// An object containing a list of "key": value pairs. Example: { "name": "wrench", "mass": "1.3kg", "count": "3" }.
	Metadata pulumi.StringMapInput
	// The name specified for the Notebook instance.
	Name pulumi.StringPtrInput
	// The name of the VPC that this instance is in.
	// Format: projects/{project_id}/global/networks/{network_id}
	Network pulumi.StringPtrInput
	// The type of vNIC driver.
	// Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.
	NicType pulumi.StringPtrInput
	// The notebook instance will not register with the proxy..
	NoProxyAccess pulumi.BoolPtrInput
	// No public IP will be assigned to this instance.
	NoPublicIp pulumi.BoolPtrInput
	// If true, the data disk will not be auto deleted when deleting the instance.
	NoRemoveDataDisk pulumi.BoolPtrInput
	// Path to a Bash script that automatically runs after a
	// notebook instance fully boots up. The path must be a URL
	// or Cloud Storage path (gs://path-to-file/file-name).
	PostStartupScript pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The proxy endpoint that is used to access the Jupyter notebook.
	// Only returned when the resource is in a `PROVISIONED` state. If
	// needed you can utilize `pulumi up -refresh-only` to await
	// the population of this value.
	ProxyUri pulumi.StringPtrInput
	// Reservation Affinity for consuming Zonal reservation.
	// Structure is documented below.
	ReservationAffinity InstanceReservationAffinityPtrInput
	// The service account on this instance, giving access to other
	// Google Cloud services. You can use any service account within
	// the same project, but you must have the service account user
	// permission to use the instance. If not specified,
	// the Compute Engine default service account is used.
	ServiceAccount pulumi.StringPtrInput
	// Optional. The URIs of service account scopes to be included in Compute Engine instances.
	// If not specified, the following scopes are defined:
	// - https://www.googleapis.com/auth/cloud-platform
	// - https://www.googleapis.com/auth/userinfo.email
	ServiceAccountScopes pulumi.StringArrayInput
	// A set of Shielded Instance options. Check [Images using supported Shielded VM features]
	// Not all combinations are valid
	// Structure is documented below.
	ShieldedInstanceConfig InstanceShieldedInstanceConfigPtrInput
	// The state of this instance.
	State pulumi.StringPtrInput
	// The name of the subnet that this instance is in.
	// Format: projects/{project_id}/regions/{region}/subnetworks/{subnetwork_id}
	Subnet pulumi.StringPtrInput
	// The Compute Engine tags to add to instance.
	Tags pulumi.StringArrayInput
	// Instance update time.
	UpdateTime pulumi.StringPtrInput
	// Use a Compute Engine VM image to start the notebook instance.
	// Structure is documented below.
	VmImage InstanceVmImagePtrInput
}

func (InstanceState) ElementType

func (InstanceState) ElementType() reflect.Type

type InstanceVmImage

type InstanceVmImage struct {
	// Use this VM image family to find the image; the newest image in this family will be used.
	ImageFamily *string `pulumi:"imageFamily"`
	// Use VM image name to find the image.
	ImageName *string `pulumi:"imageName"`
	// The name of the Google Cloud project that this VM image belongs to.
	// Format: projects/{project_id}
	Project string `pulumi:"project"`
}

type InstanceVmImageArgs

type InstanceVmImageArgs struct {
	// Use this VM image family to find the image; the newest image in this family will be used.
	ImageFamily pulumi.StringPtrInput `pulumi:"imageFamily"`
	// Use VM image name to find the image.
	ImageName pulumi.StringPtrInput `pulumi:"imageName"`
	// The name of the Google Cloud project that this VM image belongs to.
	// Format: projects/{project_id}
	Project pulumi.StringInput `pulumi:"project"`
}

func (InstanceVmImageArgs) ElementType

func (InstanceVmImageArgs) ElementType() reflect.Type

func (InstanceVmImageArgs) ToInstanceVmImageOutput

func (i InstanceVmImageArgs) ToInstanceVmImageOutput() InstanceVmImageOutput

func (InstanceVmImageArgs) ToInstanceVmImageOutputWithContext

func (i InstanceVmImageArgs) ToInstanceVmImageOutputWithContext(ctx context.Context) InstanceVmImageOutput

func (InstanceVmImageArgs) ToInstanceVmImagePtrOutput

func (i InstanceVmImageArgs) ToInstanceVmImagePtrOutput() InstanceVmImagePtrOutput

func (InstanceVmImageArgs) ToInstanceVmImagePtrOutputWithContext

func (i InstanceVmImageArgs) ToInstanceVmImagePtrOutputWithContext(ctx context.Context) InstanceVmImagePtrOutput

func (InstanceVmImageArgs) ToOutput added in v6.65.1

type InstanceVmImageInput

type InstanceVmImageInput interface {
	pulumi.Input

	ToInstanceVmImageOutput() InstanceVmImageOutput
	ToInstanceVmImageOutputWithContext(context.Context) InstanceVmImageOutput
}

InstanceVmImageInput is an input type that accepts InstanceVmImageArgs and InstanceVmImageOutput values. You can construct a concrete instance of `InstanceVmImageInput` via:

InstanceVmImageArgs{...}

type InstanceVmImageOutput

type InstanceVmImageOutput struct{ *pulumi.OutputState }

func (InstanceVmImageOutput) ElementType

func (InstanceVmImageOutput) ElementType() reflect.Type

func (InstanceVmImageOutput) ImageFamily

Use this VM image family to find the image; the newest image in this family will be used.

func (InstanceVmImageOutput) ImageName

Use VM image name to find the image.

func (InstanceVmImageOutput) Project

The name of the Google Cloud project that this VM image belongs to. Format: projects/{project_id}

func (InstanceVmImageOutput) ToInstanceVmImageOutput

func (o InstanceVmImageOutput) ToInstanceVmImageOutput() InstanceVmImageOutput

func (InstanceVmImageOutput) ToInstanceVmImageOutputWithContext

func (o InstanceVmImageOutput) ToInstanceVmImageOutputWithContext(ctx context.Context) InstanceVmImageOutput

func (InstanceVmImageOutput) ToInstanceVmImagePtrOutput

func (o InstanceVmImageOutput) ToInstanceVmImagePtrOutput() InstanceVmImagePtrOutput

func (InstanceVmImageOutput) ToInstanceVmImagePtrOutputWithContext

func (o InstanceVmImageOutput) ToInstanceVmImagePtrOutputWithContext(ctx context.Context) InstanceVmImagePtrOutput

func (InstanceVmImageOutput) ToOutput added in v6.65.1

type InstanceVmImagePtrInput

type InstanceVmImagePtrInput interface {
	pulumi.Input

	ToInstanceVmImagePtrOutput() InstanceVmImagePtrOutput
	ToInstanceVmImagePtrOutputWithContext(context.Context) InstanceVmImagePtrOutput
}

InstanceVmImagePtrInput is an input type that accepts InstanceVmImageArgs, InstanceVmImagePtr and InstanceVmImagePtrOutput values. You can construct a concrete instance of `InstanceVmImagePtrInput` via:

        InstanceVmImageArgs{...}

or:

        nil

type InstanceVmImagePtrOutput

type InstanceVmImagePtrOutput struct{ *pulumi.OutputState }

func (InstanceVmImagePtrOutput) Elem

func (InstanceVmImagePtrOutput) ElementType

func (InstanceVmImagePtrOutput) ElementType() reflect.Type

func (InstanceVmImagePtrOutput) ImageFamily

Use this VM image family to find the image; the newest image in this family will be used.

func (InstanceVmImagePtrOutput) ImageName

Use VM image name to find the image.

func (InstanceVmImagePtrOutput) Project

The name of the Google Cloud project that this VM image belongs to. Format: projects/{project_id}

func (InstanceVmImagePtrOutput) ToInstanceVmImagePtrOutput

func (o InstanceVmImagePtrOutput) ToInstanceVmImagePtrOutput() InstanceVmImagePtrOutput

func (InstanceVmImagePtrOutput) ToInstanceVmImagePtrOutputWithContext

func (o InstanceVmImagePtrOutput) ToInstanceVmImagePtrOutputWithContext(ctx context.Context) InstanceVmImagePtrOutput

func (InstanceVmImagePtrOutput) ToOutput added in v6.65.1

type Location

type Location struct {
	pulumi.CustomResourceState

	// Name of the Location resource.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The URI of the created resource.
	SelfLink pulumi.StringOutput `pulumi:"selfLink"`
}

Represents a Location resource.

## Import

Location can be imported using any of these accepted formats

```sh

$ pulumi import gcp:notebooks/location:Location default projects/{{project}}/locations/{{name}}

```

```sh

$ pulumi import gcp:notebooks/location:Location default {{project}}/{{name}}

```

```sh

$ pulumi import gcp:notebooks/location:Location default {{name}}

```

func GetLocation

func GetLocation(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *LocationState, opts ...pulumi.ResourceOption) (*Location, error)

GetLocation gets an existing Location resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewLocation

func NewLocation(ctx *pulumi.Context,
	name string, args *LocationArgs, opts ...pulumi.ResourceOption) (*Location, error)

NewLocation registers a new resource with the given unique name, arguments, and options.

func (*Location) ElementType

func (*Location) ElementType() reflect.Type

func (*Location) ToLocationOutput

func (i *Location) ToLocationOutput() LocationOutput

func (*Location) ToLocationOutputWithContext

func (i *Location) ToLocationOutputWithContext(ctx context.Context) LocationOutput

func (*Location) ToOutput added in v6.65.1

func (i *Location) ToOutput(ctx context.Context) pulumix.Output[*Location]

type LocationArgs

type LocationArgs struct {
	// Name of the Location resource.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
}

The set of arguments for constructing a Location resource.

func (LocationArgs) ElementType

func (LocationArgs) ElementType() reflect.Type

type LocationArray

type LocationArray []LocationInput

func (LocationArray) ElementType

func (LocationArray) ElementType() reflect.Type

func (LocationArray) ToLocationArrayOutput

func (i LocationArray) ToLocationArrayOutput() LocationArrayOutput

func (LocationArray) ToLocationArrayOutputWithContext

func (i LocationArray) ToLocationArrayOutputWithContext(ctx context.Context) LocationArrayOutput

func (LocationArray) ToOutput added in v6.65.1

func (i LocationArray) ToOutput(ctx context.Context) pulumix.Output[[]*Location]

type LocationArrayInput

type LocationArrayInput interface {
	pulumi.Input

	ToLocationArrayOutput() LocationArrayOutput
	ToLocationArrayOutputWithContext(context.Context) LocationArrayOutput
}

LocationArrayInput is an input type that accepts LocationArray and LocationArrayOutput values. You can construct a concrete instance of `LocationArrayInput` via:

LocationArray{ LocationArgs{...} }

type LocationArrayOutput

type LocationArrayOutput struct{ *pulumi.OutputState }

func (LocationArrayOutput) ElementType

func (LocationArrayOutput) ElementType() reflect.Type

func (LocationArrayOutput) Index

func (LocationArrayOutput) ToLocationArrayOutput

func (o LocationArrayOutput) ToLocationArrayOutput() LocationArrayOutput

func (LocationArrayOutput) ToLocationArrayOutputWithContext

func (o LocationArrayOutput) ToLocationArrayOutputWithContext(ctx context.Context) LocationArrayOutput

func (LocationArrayOutput) ToOutput added in v6.65.1

type LocationInput

type LocationInput interface {
	pulumi.Input

	ToLocationOutput() LocationOutput
	ToLocationOutputWithContext(ctx context.Context) LocationOutput
}

type LocationMap

type LocationMap map[string]LocationInput

func (LocationMap) ElementType

func (LocationMap) ElementType() reflect.Type

func (LocationMap) ToLocationMapOutput

func (i LocationMap) ToLocationMapOutput() LocationMapOutput

func (LocationMap) ToLocationMapOutputWithContext

func (i LocationMap) ToLocationMapOutputWithContext(ctx context.Context) LocationMapOutput

func (LocationMap) ToOutput added in v6.65.1

func (i LocationMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Location]

type LocationMapInput

type LocationMapInput interface {
	pulumi.Input

	ToLocationMapOutput() LocationMapOutput
	ToLocationMapOutputWithContext(context.Context) LocationMapOutput
}

LocationMapInput is an input type that accepts LocationMap and LocationMapOutput values. You can construct a concrete instance of `LocationMapInput` via:

LocationMap{ "key": LocationArgs{...} }

type LocationMapOutput

type LocationMapOutput struct{ *pulumi.OutputState }

func (LocationMapOutput) ElementType

func (LocationMapOutput) ElementType() reflect.Type

func (LocationMapOutput) MapIndex

func (LocationMapOutput) ToLocationMapOutput

func (o LocationMapOutput) ToLocationMapOutput() LocationMapOutput

func (LocationMapOutput) ToLocationMapOutputWithContext

func (o LocationMapOutput) ToLocationMapOutputWithContext(ctx context.Context) LocationMapOutput

func (LocationMapOutput) ToOutput added in v6.65.1

type LocationOutput

type LocationOutput struct{ *pulumi.OutputState }

func (LocationOutput) ElementType

func (LocationOutput) ElementType() reflect.Type

func (LocationOutput) Name added in v6.23.0

Name of the Location resource.

func (LocationOutput) Project added in v6.23.0

func (o LocationOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (o LocationOutput) SelfLink() pulumi.StringOutput

The URI of the created resource.

func (LocationOutput) ToLocationOutput

func (o LocationOutput) ToLocationOutput() LocationOutput

func (LocationOutput) ToLocationOutputWithContext

func (o LocationOutput) ToLocationOutputWithContext(ctx context.Context) LocationOutput

func (LocationOutput) ToOutput added in v6.65.1

type LocationState

type LocationState struct {
	// Name of the Location resource.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The URI of the created resource.
	SelfLink pulumi.StringPtrInput
}

func (LocationState) ElementType

func (LocationState) ElementType() reflect.Type

type LookupInstanceIamPolicyArgs added in v6.59.0

type LookupInstanceIamPolicyArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	InstanceName string `pulumi:"instanceName"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location *string `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
}

A collection of arguments for invoking getInstanceIamPolicy.

type LookupInstanceIamPolicyOutputArgs added in v6.59.0

type LookupInstanceIamPolicyOutputArgs struct {
	// Used to find the parent resource to bind the IAM policy to
	InstanceName pulumi.StringInput `pulumi:"instanceName"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
}

A collection of arguments for invoking getInstanceIamPolicy.

func (LookupInstanceIamPolicyOutputArgs) ElementType added in v6.59.0

type LookupInstanceIamPolicyResult added in v6.59.0

type LookupInstanceIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id           string `pulumi:"id"`
	InstanceName string `pulumi:"instanceName"`
	Location     string `pulumi:"location"`
	// (Required only by `notebooks.InstanceIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData string `pulumi:"policyData"`
	Project    string `pulumi:"project"`
}

A collection of values returned by getInstanceIamPolicy.

func LookupInstanceIamPolicy added in v6.59.0

func LookupInstanceIamPolicy(ctx *pulumi.Context, args *LookupInstanceIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupInstanceIamPolicyResult, error)

Retrieves the current IAM policy data for instance

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.LookupInstanceIamPolicy(ctx, &notebooks.LookupInstanceIamPolicyArgs{
			Project:      pulumi.StringRef(google_notebooks_instance.Instance.Project),
			Location:     pulumi.StringRef(google_notebooks_instance.Instance.Location),
			InstanceName: google_notebooks_instance.Instance.Name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupInstanceIamPolicyResultOutput added in v6.59.0

type LookupInstanceIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getInstanceIamPolicy.

func LookupInstanceIamPolicyOutput added in v6.59.0

func (LookupInstanceIamPolicyResultOutput) ElementType added in v6.59.0

func (LookupInstanceIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (LookupInstanceIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (LookupInstanceIamPolicyResultOutput) InstanceName added in v6.59.0

func (LookupInstanceIamPolicyResultOutput) Location added in v6.59.0

func (LookupInstanceIamPolicyResultOutput) PolicyData added in v6.59.0

(Required only by `notebooks.InstanceIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupInstanceIamPolicyResultOutput) Project added in v6.59.0

func (LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput added in v6.59.0

func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutput() LookupInstanceIamPolicyResultOutput

func (LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext added in v6.59.0

func (o LookupInstanceIamPolicyResultOutput) ToLookupInstanceIamPolicyResultOutputWithContext(ctx context.Context) LookupInstanceIamPolicyResultOutput

func (LookupInstanceIamPolicyResultOutput) ToOutput added in v6.65.1

type LookupRuntimeIamPolicyArgs added in v6.59.0

type LookupRuntimeIamPolicyArgs struct {
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location *string `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project *string `pulumi:"project"`
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName string `pulumi:"runtimeName"`
}

A collection of arguments for invoking getRuntimeIamPolicy.

type LookupRuntimeIamPolicyOutputArgs added in v6.59.0

type LookupRuntimeIamPolicyOutputArgs struct {
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput `pulumi:"location"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	Project pulumi.StringPtrInput `pulumi:"project"`
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringInput `pulumi:"runtimeName"`
}

A collection of arguments for invoking getRuntimeIamPolicy.

func (LookupRuntimeIamPolicyOutputArgs) ElementType added in v6.59.0

type LookupRuntimeIamPolicyResult added in v6.59.0

type LookupRuntimeIamPolicyResult struct {
	// (Computed) The etag of the IAM policy.
	Etag string `pulumi:"etag"`
	// The provider-assigned unique ID for this managed resource.
	Id       string `pulumi:"id"`
	Location string `pulumi:"location"`
	// (Required only by `notebooks.RuntimeIamPolicy`) The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData  string `pulumi:"policyData"`
	Project     string `pulumi:"project"`
	RuntimeName string `pulumi:"runtimeName"`
}

A collection of values returned by getRuntimeIamPolicy.

func LookupRuntimeIamPolicy added in v6.59.0

func LookupRuntimeIamPolicy(ctx *pulumi.Context, args *LookupRuntimeIamPolicyArgs, opts ...pulumi.InvokeOption) (*LookupRuntimeIamPolicyResult, error)

Retrieves the current IAM policy data for runtime

## example

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.LookupRuntimeIamPolicy(ctx, &notebooks.LookupRuntimeIamPolicyArgs{
			Project:     pulumi.StringRef(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.StringRef(google_notebooks_runtime.Runtime.Location),
			RuntimeName: google_notebooks_runtime.Runtime.Name,
		}, nil)
		if err != nil {
			return err
		}
		return nil
	})
}

```

type LookupRuntimeIamPolicyResultOutput added in v6.59.0

type LookupRuntimeIamPolicyResultOutput struct{ *pulumi.OutputState }

A collection of values returned by getRuntimeIamPolicy.

func LookupRuntimeIamPolicyOutput added in v6.59.0

func (LookupRuntimeIamPolicyResultOutput) ElementType added in v6.59.0

func (LookupRuntimeIamPolicyResultOutput) Etag added in v6.59.0

(Computed) The etag of the IAM policy.

func (LookupRuntimeIamPolicyResultOutput) Id added in v6.59.0

The provider-assigned unique ID for this managed resource.

func (LookupRuntimeIamPolicyResultOutput) Location added in v6.59.0

func (LookupRuntimeIamPolicyResultOutput) PolicyData added in v6.59.0

(Required only by `notebooks.RuntimeIamPolicy`) The policy data generated by a `organizations.getIAMPolicy` data source.

func (LookupRuntimeIamPolicyResultOutput) Project added in v6.59.0

func (LookupRuntimeIamPolicyResultOutput) RuntimeName added in v6.59.0

func (LookupRuntimeIamPolicyResultOutput) ToLookupRuntimeIamPolicyResultOutput added in v6.59.0

func (o LookupRuntimeIamPolicyResultOutput) ToLookupRuntimeIamPolicyResultOutput() LookupRuntimeIamPolicyResultOutput

func (LookupRuntimeIamPolicyResultOutput) ToLookupRuntimeIamPolicyResultOutputWithContext added in v6.59.0

func (o LookupRuntimeIamPolicyResultOutput) ToLookupRuntimeIamPolicyResultOutputWithContext(ctx context.Context) LookupRuntimeIamPolicyResultOutput

func (LookupRuntimeIamPolicyResultOutput) ToOutput added in v6.65.1

type Runtime added in v6.4.0

type Runtime struct {
	pulumi.CustomResourceState

	// The config settings for accessing runtime.
	// Structure is documented below.
	AccessConfig RuntimeAccessConfigPtrOutput `pulumi:"accessConfig"`
	// The health state of this runtime. For a list of possible output
	// values, see `https://cloud.google.com/vertex-ai/docs/workbench/
	// reference/rest/v1/projects.locations.runtimes#healthstate`.
	HealthState pulumi.StringOutput `pulumi:"healthState"`
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringOutput `pulumi:"location"`
	// Contains Runtime daemon metrics such as Service status and JupyterLab
	// status
	// Structure is documented below.
	Metrics RuntimeMetricArrayOutput `pulumi:"metrics"`
	// The name specified for the Notebook runtime.
	Name pulumi.StringOutput `pulumi:"name"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringOutput `pulumi:"project"`
	// The config settings for software inside the runtime.
	// Structure is documented below.
	SoftwareConfig RuntimeSoftwareConfigOutput `pulumi:"softwareConfig"`
	// The state of this runtime.
	State pulumi.StringOutput `pulumi:"state"`
	// Use a Compute Engine VM image to start the managed notebook instance.
	// Structure is documented below.
	VirtualMachine RuntimeVirtualMachinePtrOutput `pulumi:"virtualMachine"`
}

A Cloud AI Platform Notebook runtime.

> **Note:** Due to limitations of the Notebooks Runtime API, many fields in this resource do not properly detect drift. These fields will also not appear in state once imported.

To get more information about Runtime, see:

* [API documentation](https://cloud.google.com/ai-platform/notebooks/docs/reference/rest) * How-to Guides

## Example Usage ### Notebook Runtime Basic

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntime(ctx, "runtime", &notebooks.RuntimeArgs{
			AccessConfig: &notebooks.RuntimeAccessConfigArgs{
				AccessType:   pulumi.String("SINGLE_USER"),
				RuntimeOwner: pulumi.String("admin@hashicorptest.com"),
			},
			Location: pulumi.String("us-central1"),
			VirtualMachine: &notebooks.RuntimeVirtualMachineArgs{
				VirtualMachineConfig: &notebooks.RuntimeVirtualMachineVirtualMachineConfigArgs{
					DataDisk: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{
						InitializeParams: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{
							DiskSizeGb: pulumi.Int(100),
							DiskType:   pulumi.String("PD_STANDARD"),
						},
					},
					MachineType: pulumi.String("n1-standard-4"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Runtime Basic Gpu

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntime(ctx, "runtimeGpu", &notebooks.RuntimeArgs{
			AccessConfig: &notebooks.RuntimeAccessConfigArgs{
				AccessType:   pulumi.String("SINGLE_USER"),
				RuntimeOwner: pulumi.String("admin@hashicorptest.com"),
			},
			Location: pulumi.String("us-central1"),
			SoftwareConfig: &notebooks.RuntimeSoftwareConfigArgs{
				InstallGpuDriver: pulumi.Bool(true),
			},
			VirtualMachine: &notebooks.RuntimeVirtualMachineArgs{
				VirtualMachineConfig: &notebooks.RuntimeVirtualMachineVirtualMachineConfigArgs{
					AcceleratorConfig: &notebooks.RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs{
						CoreCount: pulumi.Int(1),
						Type:      pulumi.String("NVIDIA_TESLA_V100"),
					},
					DataDisk: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{
						InitializeParams: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{
							DiskSizeGb: pulumi.Int(100),
							DiskType:   pulumi.String("PD_STANDARD"),
						},
					},
					MachineType: pulumi.String("n1-standard-4"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Runtime Basic Container

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntime(ctx, "runtimeContainer", &notebooks.RuntimeArgs{
			AccessConfig: &notebooks.RuntimeAccessConfigArgs{
				AccessType:   pulumi.String("SINGLE_USER"),
				RuntimeOwner: pulumi.String("admin@hashicorptest.com"),
			},
			Location: pulumi.String("us-central1"),
			VirtualMachine: &notebooks.RuntimeVirtualMachineArgs{
				VirtualMachineConfig: &notebooks.RuntimeVirtualMachineVirtualMachineConfigArgs{
					ContainerImages: notebooks.RuntimeVirtualMachineVirtualMachineConfigContainerImageArray{
						&notebooks.RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs{
							Repository: pulumi.String("gcr.io/deeplearning-platform-release/base-cpu"),
							Tag:        pulumi.String("latest"),
						},
						&notebooks.RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs{
							Repository: pulumi.String("gcr.io/deeplearning-platform-release/beam-notebooks"),
							Tag:        pulumi.String("latest"),
						},
					},
					DataDisk: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{
						InitializeParams: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{
							DiskSizeGb: pulumi.Int(100),
							DiskType:   pulumi.String("PD_STANDARD"),
						},
					},
					MachineType: pulumi.String("n1-standard-4"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Runtime Kernels

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntime(ctx, "runtimeContainer", &notebooks.RuntimeArgs{
			AccessConfig: &notebooks.RuntimeAccessConfigArgs{
				AccessType:   pulumi.String("SINGLE_USER"),
				RuntimeOwner: pulumi.String("admin@hashicorptest.com"),
			},
			Location: pulumi.String("us-central1"),
			SoftwareConfig: &notebooks.RuntimeSoftwareConfigArgs{
				Kernels: notebooks.RuntimeSoftwareConfigKernelArray{
					&notebooks.RuntimeSoftwareConfigKernelArgs{
						Repository: pulumi.String("gcr.io/deeplearning-platform-release/base-cpu"),
						Tag:        pulumi.String("latest"),
					},
				},
			},
			VirtualMachine: &notebooks.RuntimeVirtualMachineArgs{
				VirtualMachineConfig: &notebooks.RuntimeVirtualMachineVirtualMachineConfigArgs{
					DataDisk: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{
						InitializeParams: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{
							DiskSizeGb: pulumi.Int(100),
							DiskType:   pulumi.String("PD_STANDARD"),
						},
					},
					MachineType: pulumi.String("n1-standard-4"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

``` ### Notebook Runtime Script

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntime(ctx, "runtimeContainer", &notebooks.RuntimeArgs{
			AccessConfig: &notebooks.RuntimeAccessConfigArgs{
				AccessType:   pulumi.String("SINGLE_USER"),
				RuntimeOwner: pulumi.String("admin@hashicorptest.com"),
			},
			Location: pulumi.String("us-central1"),
			SoftwareConfig: &notebooks.RuntimeSoftwareConfigArgs{
				PostStartupScriptBehavior: pulumi.String("RUN_EVERY_START"),
			},
			VirtualMachine: &notebooks.RuntimeVirtualMachineArgs{
				VirtualMachineConfig: &notebooks.RuntimeVirtualMachineVirtualMachineConfigArgs{
					DataDisk: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{
						InitializeParams: &notebooks.RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{
							DiskSizeGb: pulumi.Int(100),
							DiskType:   pulumi.String("PD_STANDARD"),
						},
					},
					MachineType: pulumi.String("n1-standard-4"),
				},
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

Runtime can be imported using any of these accepted formats

```sh

$ pulumi import gcp:notebooks/runtime:Runtime default projects/{{project}}/locations/{{location}}/runtimes/{{name}}

```

```sh

$ pulumi import gcp:notebooks/runtime:Runtime default {{project}}/{{location}}/{{name}}

```

```sh

$ pulumi import gcp:notebooks/runtime:Runtime default {{location}}/{{name}}

```

func GetRuntime added in v6.4.0

func GetRuntime(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RuntimeState, opts ...pulumi.ResourceOption) (*Runtime, error)

GetRuntime gets an existing Runtime resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRuntime added in v6.4.0

func NewRuntime(ctx *pulumi.Context,
	name string, args *RuntimeArgs, opts ...pulumi.ResourceOption) (*Runtime, error)

NewRuntime registers a new resource with the given unique name, arguments, and options.

func (*Runtime) ElementType added in v6.4.0

func (*Runtime) ElementType() reflect.Type

func (*Runtime) ToOutput added in v6.65.1

func (i *Runtime) ToOutput(ctx context.Context) pulumix.Output[*Runtime]

func (*Runtime) ToRuntimeOutput added in v6.4.0

func (i *Runtime) ToRuntimeOutput() RuntimeOutput

func (*Runtime) ToRuntimeOutputWithContext added in v6.4.0

func (i *Runtime) ToRuntimeOutputWithContext(ctx context.Context) RuntimeOutput

type RuntimeAccessConfig added in v6.4.0

type RuntimeAccessConfig struct {
	// The type of access mode this instance. For valid values, see
	// `https://cloud.google.com/vertex-ai/docs/workbench/reference/
	// rest/v1/projects.locations.runtimes#RuntimeAccessType`.
	AccessType *string `pulumi:"accessType"`
	// (Output)
	// The proxy endpoint that is used to access the runtime.
	ProxyUri *string `pulumi:"proxyUri"`
	// The owner of this runtime after creation. Format: `alias@example.com`.
	// Currently supports one owner only.
	RuntimeOwner *string `pulumi:"runtimeOwner"`
}

type RuntimeAccessConfigArgs added in v6.4.0

type RuntimeAccessConfigArgs struct {
	// The type of access mode this instance. For valid values, see
	// `https://cloud.google.com/vertex-ai/docs/workbench/reference/
	// rest/v1/projects.locations.runtimes#RuntimeAccessType`.
	AccessType pulumi.StringPtrInput `pulumi:"accessType"`
	// (Output)
	// The proxy endpoint that is used to access the runtime.
	ProxyUri pulumi.StringPtrInput `pulumi:"proxyUri"`
	// The owner of this runtime after creation. Format: `alias@example.com`.
	// Currently supports one owner only.
	RuntimeOwner pulumi.StringPtrInput `pulumi:"runtimeOwner"`
}

func (RuntimeAccessConfigArgs) ElementType added in v6.4.0

func (RuntimeAccessConfigArgs) ElementType() reflect.Type

func (RuntimeAccessConfigArgs) ToOutput added in v6.65.1

func (RuntimeAccessConfigArgs) ToRuntimeAccessConfigOutput added in v6.4.0

func (i RuntimeAccessConfigArgs) ToRuntimeAccessConfigOutput() RuntimeAccessConfigOutput

func (RuntimeAccessConfigArgs) ToRuntimeAccessConfigOutputWithContext added in v6.4.0

func (i RuntimeAccessConfigArgs) ToRuntimeAccessConfigOutputWithContext(ctx context.Context) RuntimeAccessConfigOutput

func (RuntimeAccessConfigArgs) ToRuntimeAccessConfigPtrOutput added in v6.4.0

func (i RuntimeAccessConfigArgs) ToRuntimeAccessConfigPtrOutput() RuntimeAccessConfigPtrOutput

func (RuntimeAccessConfigArgs) ToRuntimeAccessConfigPtrOutputWithContext added in v6.4.0

func (i RuntimeAccessConfigArgs) ToRuntimeAccessConfigPtrOutputWithContext(ctx context.Context) RuntimeAccessConfigPtrOutput

type RuntimeAccessConfigInput added in v6.4.0

type RuntimeAccessConfigInput interface {
	pulumi.Input

	ToRuntimeAccessConfigOutput() RuntimeAccessConfigOutput
	ToRuntimeAccessConfigOutputWithContext(context.Context) RuntimeAccessConfigOutput
}

RuntimeAccessConfigInput is an input type that accepts RuntimeAccessConfigArgs and RuntimeAccessConfigOutput values. You can construct a concrete instance of `RuntimeAccessConfigInput` via:

RuntimeAccessConfigArgs{...}

type RuntimeAccessConfigOutput added in v6.4.0

type RuntimeAccessConfigOutput struct{ *pulumi.OutputState }

func (RuntimeAccessConfigOutput) AccessType added in v6.4.0

The type of access mode this instance. For valid values, see `https://cloud.google.com/vertex-ai/docs/workbench/reference/ rest/v1/projects.locations.runtimes#RuntimeAccessType`.

func (RuntimeAccessConfigOutput) ElementType added in v6.4.0

func (RuntimeAccessConfigOutput) ElementType() reflect.Type

func (RuntimeAccessConfigOutput) ProxyUri added in v6.4.0

(Output) The proxy endpoint that is used to access the runtime.

func (RuntimeAccessConfigOutput) RuntimeOwner added in v6.4.0

The owner of this runtime after creation. Format: `alias@example.com`. Currently supports one owner only.

func (RuntimeAccessConfigOutput) ToOutput added in v6.65.1

func (RuntimeAccessConfigOutput) ToRuntimeAccessConfigOutput added in v6.4.0

func (o RuntimeAccessConfigOutput) ToRuntimeAccessConfigOutput() RuntimeAccessConfigOutput

func (RuntimeAccessConfigOutput) ToRuntimeAccessConfigOutputWithContext added in v6.4.0

func (o RuntimeAccessConfigOutput) ToRuntimeAccessConfigOutputWithContext(ctx context.Context) RuntimeAccessConfigOutput

func (RuntimeAccessConfigOutput) ToRuntimeAccessConfigPtrOutput added in v6.4.0

func (o RuntimeAccessConfigOutput) ToRuntimeAccessConfigPtrOutput() RuntimeAccessConfigPtrOutput

func (RuntimeAccessConfigOutput) ToRuntimeAccessConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeAccessConfigOutput) ToRuntimeAccessConfigPtrOutputWithContext(ctx context.Context) RuntimeAccessConfigPtrOutput

type RuntimeAccessConfigPtrInput added in v6.4.0

type RuntimeAccessConfigPtrInput interface {
	pulumi.Input

	ToRuntimeAccessConfigPtrOutput() RuntimeAccessConfigPtrOutput
	ToRuntimeAccessConfigPtrOutputWithContext(context.Context) RuntimeAccessConfigPtrOutput
}

RuntimeAccessConfigPtrInput is an input type that accepts RuntimeAccessConfigArgs, RuntimeAccessConfigPtr and RuntimeAccessConfigPtrOutput values. You can construct a concrete instance of `RuntimeAccessConfigPtrInput` via:

        RuntimeAccessConfigArgs{...}

or:

        nil

func RuntimeAccessConfigPtr added in v6.4.0

func RuntimeAccessConfigPtr(v *RuntimeAccessConfigArgs) RuntimeAccessConfigPtrInput

type RuntimeAccessConfigPtrOutput added in v6.4.0

type RuntimeAccessConfigPtrOutput struct{ *pulumi.OutputState }

func (RuntimeAccessConfigPtrOutput) AccessType added in v6.4.0

The type of access mode this instance. For valid values, see `https://cloud.google.com/vertex-ai/docs/workbench/reference/ rest/v1/projects.locations.runtimes#RuntimeAccessType`.

func (RuntimeAccessConfigPtrOutput) Elem added in v6.4.0

func (RuntimeAccessConfigPtrOutput) ElementType added in v6.4.0

func (RuntimeAccessConfigPtrOutput) ProxyUri added in v6.4.0

(Output) The proxy endpoint that is used to access the runtime.

func (RuntimeAccessConfigPtrOutput) RuntimeOwner added in v6.4.0

The owner of this runtime after creation. Format: `alias@example.com`. Currently supports one owner only.

func (RuntimeAccessConfigPtrOutput) ToOutput added in v6.65.1

func (RuntimeAccessConfigPtrOutput) ToRuntimeAccessConfigPtrOutput added in v6.4.0

func (o RuntimeAccessConfigPtrOutput) ToRuntimeAccessConfigPtrOutput() RuntimeAccessConfigPtrOutput

func (RuntimeAccessConfigPtrOutput) ToRuntimeAccessConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeAccessConfigPtrOutput) ToRuntimeAccessConfigPtrOutputWithContext(ctx context.Context) RuntimeAccessConfigPtrOutput

type RuntimeArgs added in v6.4.0

type RuntimeArgs struct {
	// The config settings for accessing runtime.
	// Structure is documented below.
	AccessConfig RuntimeAccessConfigPtrInput
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringInput
	// The name specified for the Notebook runtime.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The config settings for software inside the runtime.
	// Structure is documented below.
	SoftwareConfig RuntimeSoftwareConfigPtrInput
	// Use a Compute Engine VM image to start the managed notebook instance.
	// Structure is documented below.
	VirtualMachine RuntimeVirtualMachinePtrInput
}

The set of arguments for constructing a Runtime resource.

func (RuntimeArgs) ElementType added in v6.4.0

func (RuntimeArgs) ElementType() reflect.Type

type RuntimeArray added in v6.4.0

type RuntimeArray []RuntimeInput

func (RuntimeArray) ElementType added in v6.4.0

func (RuntimeArray) ElementType() reflect.Type

func (RuntimeArray) ToOutput added in v6.65.1

func (i RuntimeArray) ToOutput(ctx context.Context) pulumix.Output[[]*Runtime]

func (RuntimeArray) ToRuntimeArrayOutput added in v6.4.0

func (i RuntimeArray) ToRuntimeArrayOutput() RuntimeArrayOutput

func (RuntimeArray) ToRuntimeArrayOutputWithContext added in v6.4.0

func (i RuntimeArray) ToRuntimeArrayOutputWithContext(ctx context.Context) RuntimeArrayOutput

type RuntimeArrayInput added in v6.4.0

type RuntimeArrayInput interface {
	pulumi.Input

	ToRuntimeArrayOutput() RuntimeArrayOutput
	ToRuntimeArrayOutputWithContext(context.Context) RuntimeArrayOutput
}

RuntimeArrayInput is an input type that accepts RuntimeArray and RuntimeArrayOutput values. You can construct a concrete instance of `RuntimeArrayInput` via:

RuntimeArray{ RuntimeArgs{...} }

type RuntimeArrayOutput added in v6.4.0

type RuntimeArrayOutput struct{ *pulumi.OutputState }

func (RuntimeArrayOutput) ElementType added in v6.4.0

func (RuntimeArrayOutput) ElementType() reflect.Type

func (RuntimeArrayOutput) Index added in v6.4.0

func (RuntimeArrayOutput) ToOutput added in v6.65.1

func (RuntimeArrayOutput) ToRuntimeArrayOutput added in v6.4.0

func (o RuntimeArrayOutput) ToRuntimeArrayOutput() RuntimeArrayOutput

func (RuntimeArrayOutput) ToRuntimeArrayOutputWithContext added in v6.4.0

func (o RuntimeArrayOutput) ToRuntimeArrayOutputWithContext(ctx context.Context) RuntimeArrayOutput

type RuntimeIamBinding added in v6.5.0

type RuntimeIamBinding struct {
	pulumi.CustomResourceState

	Condition RuntimeIamBindingConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput      `pulumi:"location"`
	Members  pulumi.StringArrayOutput `pulumi:"members"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringOutput `pulumi:"runtimeName"`
}

Three different resources help you manage your IAM policy for Cloud AI Notebooks Runtime. Each of these resources serves a different use case:

* `notebooks.RuntimeIamPolicy`: Authoritative. Sets the IAM policy for the runtime and replaces any existing policy already attached. * `notebooks.RuntimeIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the runtime are preserved. * `notebooks.RuntimeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the runtime are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `notebooks.RuntimeIamPolicy`: Retrieves the IAM policy for the runtime

> **Note:** `notebooks.RuntimeIamPolicy` **cannot** be used in conjunction with `notebooks.RuntimeIamBinding` and `notebooks.RuntimeIamMember` or they will fight over what your policy should be.

> **Note:** `notebooks.RuntimeIamBinding` resources **can be** used in conjunction with `notebooks.RuntimeIamMember` resources **only if** they do not grant privilege to the same role.

## google\_notebooks\_runtime\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewRuntimeIamPolicy(ctx, "policy", &notebooks.RuntimeIamPolicyArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_runtime\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntimeIamBinding(ctx, "binding", &notebooks.RuntimeIamBindingArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_runtime\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntimeIamMember(ctx, "member", &notebooks.RuntimeIamMemberArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} * {{project}}/{{location}}/{{runtime_name}} * {{location}}/{{runtime_name}} * {{runtime_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud AI Notebooks runtime IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamBinding:RuntimeIamBinding editor "projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamBinding:RuntimeIamBinding editor "projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamBinding:RuntimeIamBinding editor projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetRuntimeIamBinding added in v6.5.0

func GetRuntimeIamBinding(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RuntimeIamBindingState, opts ...pulumi.ResourceOption) (*RuntimeIamBinding, error)

GetRuntimeIamBinding gets an existing RuntimeIamBinding resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRuntimeIamBinding added in v6.5.0

func NewRuntimeIamBinding(ctx *pulumi.Context,
	name string, args *RuntimeIamBindingArgs, opts ...pulumi.ResourceOption) (*RuntimeIamBinding, error)

NewRuntimeIamBinding registers a new resource with the given unique name, arguments, and options.

func (*RuntimeIamBinding) ElementType added in v6.5.0

func (*RuntimeIamBinding) ElementType() reflect.Type

func (*RuntimeIamBinding) ToOutput added in v6.65.1

func (*RuntimeIamBinding) ToRuntimeIamBindingOutput added in v6.5.0

func (i *RuntimeIamBinding) ToRuntimeIamBindingOutput() RuntimeIamBindingOutput

func (*RuntimeIamBinding) ToRuntimeIamBindingOutputWithContext added in v6.5.0

func (i *RuntimeIamBinding) ToRuntimeIamBindingOutputWithContext(ctx context.Context) RuntimeIamBindingOutput

type RuntimeIamBindingArgs added in v6.5.0

type RuntimeIamBindingArgs struct {
	Condition RuntimeIamBindingConditionPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Members  pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringInput
}

The set of arguments for constructing a RuntimeIamBinding resource.

func (RuntimeIamBindingArgs) ElementType added in v6.5.0

func (RuntimeIamBindingArgs) ElementType() reflect.Type

type RuntimeIamBindingArray added in v6.5.0

type RuntimeIamBindingArray []RuntimeIamBindingInput

func (RuntimeIamBindingArray) ElementType added in v6.5.0

func (RuntimeIamBindingArray) ElementType() reflect.Type

func (RuntimeIamBindingArray) ToOutput added in v6.65.1

func (RuntimeIamBindingArray) ToRuntimeIamBindingArrayOutput added in v6.5.0

func (i RuntimeIamBindingArray) ToRuntimeIamBindingArrayOutput() RuntimeIamBindingArrayOutput

func (RuntimeIamBindingArray) ToRuntimeIamBindingArrayOutputWithContext added in v6.5.0

func (i RuntimeIamBindingArray) ToRuntimeIamBindingArrayOutputWithContext(ctx context.Context) RuntimeIamBindingArrayOutput

type RuntimeIamBindingArrayInput added in v6.5.0

type RuntimeIamBindingArrayInput interface {
	pulumi.Input

	ToRuntimeIamBindingArrayOutput() RuntimeIamBindingArrayOutput
	ToRuntimeIamBindingArrayOutputWithContext(context.Context) RuntimeIamBindingArrayOutput
}

RuntimeIamBindingArrayInput is an input type that accepts RuntimeIamBindingArray and RuntimeIamBindingArrayOutput values. You can construct a concrete instance of `RuntimeIamBindingArrayInput` via:

RuntimeIamBindingArray{ RuntimeIamBindingArgs{...} }

type RuntimeIamBindingArrayOutput added in v6.5.0

type RuntimeIamBindingArrayOutput struct{ *pulumi.OutputState }

func (RuntimeIamBindingArrayOutput) ElementType added in v6.5.0

func (RuntimeIamBindingArrayOutput) Index added in v6.5.0

func (RuntimeIamBindingArrayOutput) ToOutput added in v6.65.1

func (RuntimeIamBindingArrayOutput) ToRuntimeIamBindingArrayOutput added in v6.5.0

func (o RuntimeIamBindingArrayOutput) ToRuntimeIamBindingArrayOutput() RuntimeIamBindingArrayOutput

func (RuntimeIamBindingArrayOutput) ToRuntimeIamBindingArrayOutputWithContext added in v6.5.0

func (o RuntimeIamBindingArrayOutput) ToRuntimeIamBindingArrayOutputWithContext(ctx context.Context) RuntimeIamBindingArrayOutput

type RuntimeIamBindingCondition added in v6.5.0

type RuntimeIamBindingCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type RuntimeIamBindingConditionArgs added in v6.5.0

type RuntimeIamBindingConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (RuntimeIamBindingConditionArgs) ElementType added in v6.5.0

func (RuntimeIamBindingConditionArgs) ToOutput added in v6.65.1

func (RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionOutput added in v6.5.0

func (i RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionOutput() RuntimeIamBindingConditionOutput

func (RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionOutputWithContext added in v6.5.0

func (i RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionOutputWithContext(ctx context.Context) RuntimeIamBindingConditionOutput

func (RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionPtrOutput added in v6.5.0

func (i RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionPtrOutput() RuntimeIamBindingConditionPtrOutput

func (RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionPtrOutputWithContext added in v6.5.0

func (i RuntimeIamBindingConditionArgs) ToRuntimeIamBindingConditionPtrOutputWithContext(ctx context.Context) RuntimeIamBindingConditionPtrOutput

type RuntimeIamBindingConditionInput added in v6.5.0

type RuntimeIamBindingConditionInput interface {
	pulumi.Input

	ToRuntimeIamBindingConditionOutput() RuntimeIamBindingConditionOutput
	ToRuntimeIamBindingConditionOutputWithContext(context.Context) RuntimeIamBindingConditionOutput
}

RuntimeIamBindingConditionInput is an input type that accepts RuntimeIamBindingConditionArgs and RuntimeIamBindingConditionOutput values. You can construct a concrete instance of `RuntimeIamBindingConditionInput` via:

RuntimeIamBindingConditionArgs{...}

type RuntimeIamBindingConditionOutput added in v6.5.0

type RuntimeIamBindingConditionOutput struct{ *pulumi.OutputState }

func (RuntimeIamBindingConditionOutput) Description added in v6.5.0

func (RuntimeIamBindingConditionOutput) ElementType added in v6.5.0

func (RuntimeIamBindingConditionOutput) Expression added in v6.5.0

func (RuntimeIamBindingConditionOutput) Title added in v6.5.0

func (RuntimeIamBindingConditionOutput) ToOutput added in v6.65.1

func (RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionOutput added in v6.5.0

func (o RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionOutput() RuntimeIamBindingConditionOutput

func (RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionOutputWithContext added in v6.5.0

func (o RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionOutputWithContext(ctx context.Context) RuntimeIamBindingConditionOutput

func (RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionPtrOutput added in v6.5.0

func (o RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionPtrOutput() RuntimeIamBindingConditionPtrOutput

func (RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionPtrOutputWithContext added in v6.5.0

func (o RuntimeIamBindingConditionOutput) ToRuntimeIamBindingConditionPtrOutputWithContext(ctx context.Context) RuntimeIamBindingConditionPtrOutput

type RuntimeIamBindingConditionPtrInput added in v6.5.0

type RuntimeIamBindingConditionPtrInput interface {
	pulumi.Input

	ToRuntimeIamBindingConditionPtrOutput() RuntimeIamBindingConditionPtrOutput
	ToRuntimeIamBindingConditionPtrOutputWithContext(context.Context) RuntimeIamBindingConditionPtrOutput
}

RuntimeIamBindingConditionPtrInput is an input type that accepts RuntimeIamBindingConditionArgs, RuntimeIamBindingConditionPtr and RuntimeIamBindingConditionPtrOutput values. You can construct a concrete instance of `RuntimeIamBindingConditionPtrInput` via:

        RuntimeIamBindingConditionArgs{...}

or:

        nil

func RuntimeIamBindingConditionPtr added in v6.5.0

type RuntimeIamBindingConditionPtrOutput added in v6.5.0

type RuntimeIamBindingConditionPtrOutput struct{ *pulumi.OutputState }

func (RuntimeIamBindingConditionPtrOutput) Description added in v6.5.0

func (RuntimeIamBindingConditionPtrOutput) Elem added in v6.5.0

func (RuntimeIamBindingConditionPtrOutput) ElementType added in v6.5.0

func (RuntimeIamBindingConditionPtrOutput) Expression added in v6.5.0

func (RuntimeIamBindingConditionPtrOutput) Title added in v6.5.0

func (RuntimeIamBindingConditionPtrOutput) ToOutput added in v6.65.1

func (RuntimeIamBindingConditionPtrOutput) ToRuntimeIamBindingConditionPtrOutput added in v6.5.0

func (o RuntimeIamBindingConditionPtrOutput) ToRuntimeIamBindingConditionPtrOutput() RuntimeIamBindingConditionPtrOutput

func (RuntimeIamBindingConditionPtrOutput) ToRuntimeIamBindingConditionPtrOutputWithContext added in v6.5.0

func (o RuntimeIamBindingConditionPtrOutput) ToRuntimeIamBindingConditionPtrOutputWithContext(ctx context.Context) RuntimeIamBindingConditionPtrOutput

type RuntimeIamBindingInput added in v6.5.0

type RuntimeIamBindingInput interface {
	pulumi.Input

	ToRuntimeIamBindingOutput() RuntimeIamBindingOutput
	ToRuntimeIamBindingOutputWithContext(ctx context.Context) RuntimeIamBindingOutput
}

type RuntimeIamBindingMap added in v6.5.0

type RuntimeIamBindingMap map[string]RuntimeIamBindingInput

func (RuntimeIamBindingMap) ElementType added in v6.5.0

func (RuntimeIamBindingMap) ElementType() reflect.Type

func (RuntimeIamBindingMap) ToOutput added in v6.65.1

func (RuntimeIamBindingMap) ToRuntimeIamBindingMapOutput added in v6.5.0

func (i RuntimeIamBindingMap) ToRuntimeIamBindingMapOutput() RuntimeIamBindingMapOutput

func (RuntimeIamBindingMap) ToRuntimeIamBindingMapOutputWithContext added in v6.5.0

func (i RuntimeIamBindingMap) ToRuntimeIamBindingMapOutputWithContext(ctx context.Context) RuntimeIamBindingMapOutput

type RuntimeIamBindingMapInput added in v6.5.0

type RuntimeIamBindingMapInput interface {
	pulumi.Input

	ToRuntimeIamBindingMapOutput() RuntimeIamBindingMapOutput
	ToRuntimeIamBindingMapOutputWithContext(context.Context) RuntimeIamBindingMapOutput
}

RuntimeIamBindingMapInput is an input type that accepts RuntimeIamBindingMap and RuntimeIamBindingMapOutput values. You can construct a concrete instance of `RuntimeIamBindingMapInput` via:

RuntimeIamBindingMap{ "key": RuntimeIamBindingArgs{...} }

type RuntimeIamBindingMapOutput added in v6.5.0

type RuntimeIamBindingMapOutput struct{ *pulumi.OutputState }

func (RuntimeIamBindingMapOutput) ElementType added in v6.5.0

func (RuntimeIamBindingMapOutput) ElementType() reflect.Type

func (RuntimeIamBindingMapOutput) MapIndex added in v6.5.0

func (RuntimeIamBindingMapOutput) ToOutput added in v6.65.1

func (RuntimeIamBindingMapOutput) ToRuntimeIamBindingMapOutput added in v6.5.0

func (o RuntimeIamBindingMapOutput) ToRuntimeIamBindingMapOutput() RuntimeIamBindingMapOutput

func (RuntimeIamBindingMapOutput) ToRuntimeIamBindingMapOutputWithContext added in v6.5.0

func (o RuntimeIamBindingMapOutput) ToRuntimeIamBindingMapOutputWithContext(ctx context.Context) RuntimeIamBindingMapOutput

type RuntimeIamBindingOutput added in v6.5.0

type RuntimeIamBindingOutput struct{ *pulumi.OutputState }

func (RuntimeIamBindingOutput) Condition added in v6.23.0

func (RuntimeIamBindingOutput) ElementType added in v6.5.0

func (RuntimeIamBindingOutput) ElementType() reflect.Type

func (RuntimeIamBindingOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (RuntimeIamBindingOutput) Location added in v6.23.0

A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to

func (RuntimeIamBindingOutput) Members added in v6.23.0

func (RuntimeIamBindingOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (RuntimeIamBindingOutput) Role added in v6.23.0

The role that should be applied. Only one `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (RuntimeIamBindingOutput) RuntimeName added in v6.23.0

Used to find the parent resource to bind the IAM policy to

func (RuntimeIamBindingOutput) ToOutput added in v6.65.1

func (RuntimeIamBindingOutput) ToRuntimeIamBindingOutput added in v6.5.0

func (o RuntimeIamBindingOutput) ToRuntimeIamBindingOutput() RuntimeIamBindingOutput

func (RuntimeIamBindingOutput) ToRuntimeIamBindingOutputWithContext added in v6.5.0

func (o RuntimeIamBindingOutput) ToRuntimeIamBindingOutputWithContext(ctx context.Context) RuntimeIamBindingOutput

type RuntimeIamBindingState added in v6.5.0

type RuntimeIamBindingState struct {
	Condition RuntimeIamBindingConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Members  pulumi.StringArrayInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringPtrInput
}

func (RuntimeIamBindingState) ElementType added in v6.5.0

func (RuntimeIamBindingState) ElementType() reflect.Type

type RuntimeIamMember added in v6.5.0

type RuntimeIamMember struct {
	pulumi.CustomResourceState

	Condition RuntimeIamMemberConditionPtrOutput `pulumi:"condition"`
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput `pulumi:"location"`
	Member   pulumi.StringOutput `pulumi:"member"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// The role that should be applied. Only one
	// `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringOutput `pulumi:"role"`
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringOutput `pulumi:"runtimeName"`
}

Three different resources help you manage your IAM policy for Cloud AI Notebooks Runtime. Each of these resources serves a different use case:

* `notebooks.RuntimeIamPolicy`: Authoritative. Sets the IAM policy for the runtime and replaces any existing policy already attached. * `notebooks.RuntimeIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the runtime are preserved. * `notebooks.RuntimeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the runtime are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `notebooks.RuntimeIamPolicy`: Retrieves the IAM policy for the runtime

> **Note:** `notebooks.RuntimeIamPolicy` **cannot** be used in conjunction with `notebooks.RuntimeIamBinding` and `notebooks.RuntimeIamMember` or they will fight over what your policy should be.

> **Note:** `notebooks.RuntimeIamBinding` resources **can be** used in conjunction with `notebooks.RuntimeIamMember` resources **only if** they do not grant privilege to the same role.

## google\_notebooks\_runtime\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewRuntimeIamPolicy(ctx, "policy", &notebooks.RuntimeIamPolicyArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_runtime\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntimeIamBinding(ctx, "binding", &notebooks.RuntimeIamBindingArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_runtime\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntimeIamMember(ctx, "member", &notebooks.RuntimeIamMemberArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} * {{project}}/{{location}}/{{runtime_name}} * {{location}}/{{runtime_name}} * {{runtime_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud AI Notebooks runtime IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamMember:RuntimeIamMember editor "projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamMember:RuntimeIamMember editor "projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamMember:RuntimeIamMember editor projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetRuntimeIamMember added in v6.5.0

func GetRuntimeIamMember(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RuntimeIamMemberState, opts ...pulumi.ResourceOption) (*RuntimeIamMember, error)

GetRuntimeIamMember gets an existing RuntimeIamMember resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRuntimeIamMember added in v6.5.0

func NewRuntimeIamMember(ctx *pulumi.Context,
	name string, args *RuntimeIamMemberArgs, opts ...pulumi.ResourceOption) (*RuntimeIamMember, error)

NewRuntimeIamMember registers a new resource with the given unique name, arguments, and options.

func (*RuntimeIamMember) ElementType added in v6.5.0

func (*RuntimeIamMember) ElementType() reflect.Type

func (*RuntimeIamMember) ToOutput added in v6.65.1

func (*RuntimeIamMember) ToRuntimeIamMemberOutput added in v6.5.0

func (i *RuntimeIamMember) ToRuntimeIamMemberOutput() RuntimeIamMemberOutput

func (*RuntimeIamMember) ToRuntimeIamMemberOutputWithContext added in v6.5.0

func (i *RuntimeIamMember) ToRuntimeIamMemberOutputWithContext(ctx context.Context) RuntimeIamMemberOutput

type RuntimeIamMemberArgs added in v6.5.0

type RuntimeIamMemberArgs struct {
	Condition RuntimeIamMemberConditionPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Member   pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringInput
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringInput
}

The set of arguments for constructing a RuntimeIamMember resource.

func (RuntimeIamMemberArgs) ElementType added in v6.5.0

func (RuntimeIamMemberArgs) ElementType() reflect.Type

type RuntimeIamMemberArray added in v6.5.0

type RuntimeIamMemberArray []RuntimeIamMemberInput

func (RuntimeIamMemberArray) ElementType added in v6.5.0

func (RuntimeIamMemberArray) ElementType() reflect.Type

func (RuntimeIamMemberArray) ToOutput added in v6.65.1

func (RuntimeIamMemberArray) ToRuntimeIamMemberArrayOutput added in v6.5.0

func (i RuntimeIamMemberArray) ToRuntimeIamMemberArrayOutput() RuntimeIamMemberArrayOutput

func (RuntimeIamMemberArray) ToRuntimeIamMemberArrayOutputWithContext added in v6.5.0

func (i RuntimeIamMemberArray) ToRuntimeIamMemberArrayOutputWithContext(ctx context.Context) RuntimeIamMemberArrayOutput

type RuntimeIamMemberArrayInput added in v6.5.0

type RuntimeIamMemberArrayInput interface {
	pulumi.Input

	ToRuntimeIamMemberArrayOutput() RuntimeIamMemberArrayOutput
	ToRuntimeIamMemberArrayOutputWithContext(context.Context) RuntimeIamMemberArrayOutput
}

RuntimeIamMemberArrayInput is an input type that accepts RuntimeIamMemberArray and RuntimeIamMemberArrayOutput values. You can construct a concrete instance of `RuntimeIamMemberArrayInput` via:

RuntimeIamMemberArray{ RuntimeIamMemberArgs{...} }

type RuntimeIamMemberArrayOutput added in v6.5.0

type RuntimeIamMemberArrayOutput struct{ *pulumi.OutputState }

func (RuntimeIamMemberArrayOutput) ElementType added in v6.5.0

func (RuntimeIamMemberArrayOutput) Index added in v6.5.0

func (RuntimeIamMemberArrayOutput) ToOutput added in v6.65.1

func (RuntimeIamMemberArrayOutput) ToRuntimeIamMemberArrayOutput added in v6.5.0

func (o RuntimeIamMemberArrayOutput) ToRuntimeIamMemberArrayOutput() RuntimeIamMemberArrayOutput

func (RuntimeIamMemberArrayOutput) ToRuntimeIamMemberArrayOutputWithContext added in v6.5.0

func (o RuntimeIamMemberArrayOutput) ToRuntimeIamMemberArrayOutputWithContext(ctx context.Context) RuntimeIamMemberArrayOutput

type RuntimeIamMemberCondition added in v6.5.0

type RuntimeIamMemberCondition struct {
	Description *string `pulumi:"description"`
	Expression  string  `pulumi:"expression"`
	Title       string  `pulumi:"title"`
}

type RuntimeIamMemberConditionArgs added in v6.5.0

type RuntimeIamMemberConditionArgs struct {
	Description pulumi.StringPtrInput `pulumi:"description"`
	Expression  pulumi.StringInput    `pulumi:"expression"`
	Title       pulumi.StringInput    `pulumi:"title"`
}

func (RuntimeIamMemberConditionArgs) ElementType added in v6.5.0

func (RuntimeIamMemberConditionArgs) ToOutput added in v6.65.1

func (RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionOutput added in v6.5.0

func (i RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionOutput() RuntimeIamMemberConditionOutput

func (RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionOutputWithContext added in v6.5.0

func (i RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionOutputWithContext(ctx context.Context) RuntimeIamMemberConditionOutput

func (RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionPtrOutput added in v6.5.0

func (i RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionPtrOutput() RuntimeIamMemberConditionPtrOutput

func (RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionPtrOutputWithContext added in v6.5.0

func (i RuntimeIamMemberConditionArgs) ToRuntimeIamMemberConditionPtrOutputWithContext(ctx context.Context) RuntimeIamMemberConditionPtrOutput

type RuntimeIamMemberConditionInput added in v6.5.0

type RuntimeIamMemberConditionInput interface {
	pulumi.Input

	ToRuntimeIamMemberConditionOutput() RuntimeIamMemberConditionOutput
	ToRuntimeIamMemberConditionOutputWithContext(context.Context) RuntimeIamMemberConditionOutput
}

RuntimeIamMemberConditionInput is an input type that accepts RuntimeIamMemberConditionArgs and RuntimeIamMemberConditionOutput values. You can construct a concrete instance of `RuntimeIamMemberConditionInput` via:

RuntimeIamMemberConditionArgs{...}

type RuntimeIamMemberConditionOutput added in v6.5.0

type RuntimeIamMemberConditionOutput struct{ *pulumi.OutputState }

func (RuntimeIamMemberConditionOutput) Description added in v6.5.0

func (RuntimeIamMemberConditionOutput) ElementType added in v6.5.0

func (RuntimeIamMemberConditionOutput) Expression added in v6.5.0

func (RuntimeIamMemberConditionOutput) Title added in v6.5.0

func (RuntimeIamMemberConditionOutput) ToOutput added in v6.65.1

func (RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionOutput added in v6.5.0

func (o RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionOutput() RuntimeIamMemberConditionOutput

func (RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionOutputWithContext added in v6.5.0

func (o RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionOutputWithContext(ctx context.Context) RuntimeIamMemberConditionOutput

func (RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionPtrOutput added in v6.5.0

func (o RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionPtrOutput() RuntimeIamMemberConditionPtrOutput

func (RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionPtrOutputWithContext added in v6.5.0

func (o RuntimeIamMemberConditionOutput) ToRuntimeIamMemberConditionPtrOutputWithContext(ctx context.Context) RuntimeIamMemberConditionPtrOutput

type RuntimeIamMemberConditionPtrInput added in v6.5.0

type RuntimeIamMemberConditionPtrInput interface {
	pulumi.Input

	ToRuntimeIamMemberConditionPtrOutput() RuntimeIamMemberConditionPtrOutput
	ToRuntimeIamMemberConditionPtrOutputWithContext(context.Context) RuntimeIamMemberConditionPtrOutput
}

RuntimeIamMemberConditionPtrInput is an input type that accepts RuntimeIamMemberConditionArgs, RuntimeIamMemberConditionPtr and RuntimeIamMemberConditionPtrOutput values. You can construct a concrete instance of `RuntimeIamMemberConditionPtrInput` via:

        RuntimeIamMemberConditionArgs{...}

or:

        nil

func RuntimeIamMemberConditionPtr added in v6.5.0

type RuntimeIamMemberConditionPtrOutput added in v6.5.0

type RuntimeIamMemberConditionPtrOutput struct{ *pulumi.OutputState }

func (RuntimeIamMemberConditionPtrOutput) Description added in v6.5.0

func (RuntimeIamMemberConditionPtrOutput) Elem added in v6.5.0

func (RuntimeIamMemberConditionPtrOutput) ElementType added in v6.5.0

func (RuntimeIamMemberConditionPtrOutput) Expression added in v6.5.0

func (RuntimeIamMemberConditionPtrOutput) Title added in v6.5.0

func (RuntimeIamMemberConditionPtrOutput) ToOutput added in v6.65.1

func (RuntimeIamMemberConditionPtrOutput) ToRuntimeIamMemberConditionPtrOutput added in v6.5.0

func (o RuntimeIamMemberConditionPtrOutput) ToRuntimeIamMemberConditionPtrOutput() RuntimeIamMemberConditionPtrOutput

func (RuntimeIamMemberConditionPtrOutput) ToRuntimeIamMemberConditionPtrOutputWithContext added in v6.5.0

func (o RuntimeIamMemberConditionPtrOutput) ToRuntimeIamMemberConditionPtrOutputWithContext(ctx context.Context) RuntimeIamMemberConditionPtrOutput

type RuntimeIamMemberInput added in v6.5.0

type RuntimeIamMemberInput interface {
	pulumi.Input

	ToRuntimeIamMemberOutput() RuntimeIamMemberOutput
	ToRuntimeIamMemberOutputWithContext(ctx context.Context) RuntimeIamMemberOutput
}

type RuntimeIamMemberMap added in v6.5.0

type RuntimeIamMemberMap map[string]RuntimeIamMemberInput

func (RuntimeIamMemberMap) ElementType added in v6.5.0

func (RuntimeIamMemberMap) ElementType() reflect.Type

func (RuntimeIamMemberMap) ToOutput added in v6.65.1

func (RuntimeIamMemberMap) ToRuntimeIamMemberMapOutput added in v6.5.0

func (i RuntimeIamMemberMap) ToRuntimeIamMemberMapOutput() RuntimeIamMemberMapOutput

func (RuntimeIamMemberMap) ToRuntimeIamMemberMapOutputWithContext added in v6.5.0

func (i RuntimeIamMemberMap) ToRuntimeIamMemberMapOutputWithContext(ctx context.Context) RuntimeIamMemberMapOutput

type RuntimeIamMemberMapInput added in v6.5.0

type RuntimeIamMemberMapInput interface {
	pulumi.Input

	ToRuntimeIamMemberMapOutput() RuntimeIamMemberMapOutput
	ToRuntimeIamMemberMapOutputWithContext(context.Context) RuntimeIamMemberMapOutput
}

RuntimeIamMemberMapInput is an input type that accepts RuntimeIamMemberMap and RuntimeIamMemberMapOutput values. You can construct a concrete instance of `RuntimeIamMemberMapInput` via:

RuntimeIamMemberMap{ "key": RuntimeIamMemberArgs{...} }

type RuntimeIamMemberMapOutput added in v6.5.0

type RuntimeIamMemberMapOutput struct{ *pulumi.OutputState }

func (RuntimeIamMemberMapOutput) ElementType added in v6.5.0

func (RuntimeIamMemberMapOutput) ElementType() reflect.Type

func (RuntimeIamMemberMapOutput) MapIndex added in v6.5.0

func (RuntimeIamMemberMapOutput) ToOutput added in v6.65.1

func (RuntimeIamMemberMapOutput) ToRuntimeIamMemberMapOutput added in v6.5.0

func (o RuntimeIamMemberMapOutput) ToRuntimeIamMemberMapOutput() RuntimeIamMemberMapOutput

func (RuntimeIamMemberMapOutput) ToRuntimeIamMemberMapOutputWithContext added in v6.5.0

func (o RuntimeIamMemberMapOutput) ToRuntimeIamMemberMapOutputWithContext(ctx context.Context) RuntimeIamMemberMapOutput

type RuntimeIamMemberOutput added in v6.5.0

type RuntimeIamMemberOutput struct{ *pulumi.OutputState }

func (RuntimeIamMemberOutput) Condition added in v6.23.0

func (RuntimeIamMemberOutput) ElementType added in v6.5.0

func (RuntimeIamMemberOutput) ElementType() reflect.Type

func (RuntimeIamMemberOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (RuntimeIamMemberOutput) Location added in v6.23.0

A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to

func (RuntimeIamMemberOutput) Member added in v6.23.0

func (RuntimeIamMemberOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (RuntimeIamMemberOutput) Role added in v6.23.0

The role that should be applied. Only one `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format `[projects|organizations]/{parent-name}/roles/{role-name}`.

func (RuntimeIamMemberOutput) RuntimeName added in v6.23.0

func (o RuntimeIamMemberOutput) RuntimeName() pulumi.StringOutput

Used to find the parent resource to bind the IAM policy to

func (RuntimeIamMemberOutput) ToOutput added in v6.65.1

func (RuntimeIamMemberOutput) ToRuntimeIamMemberOutput added in v6.5.0

func (o RuntimeIamMemberOutput) ToRuntimeIamMemberOutput() RuntimeIamMemberOutput

func (RuntimeIamMemberOutput) ToRuntimeIamMemberOutputWithContext added in v6.5.0

func (o RuntimeIamMemberOutput) ToRuntimeIamMemberOutputWithContext(ctx context.Context) RuntimeIamMemberOutput

type RuntimeIamMemberState added in v6.5.0

type RuntimeIamMemberState struct {
	Condition RuntimeIamMemberConditionPtrInput
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	Member   pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// The role that should be applied. Only one
	// `notebooks.RuntimeIamBinding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringPtrInput
}

func (RuntimeIamMemberState) ElementType added in v6.5.0

func (RuntimeIamMemberState) ElementType() reflect.Type

type RuntimeIamPolicy added in v6.5.0

type RuntimeIamPolicy struct {
	pulumi.CustomResourceState

	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringOutput `pulumi:"etag"`
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringOutput `pulumi:"location"`
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringOutput `pulumi:"policyData"`
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringOutput `pulumi:"project"`
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringOutput `pulumi:"runtimeName"`
}

Three different resources help you manage your IAM policy for Cloud AI Notebooks Runtime. Each of these resources serves a different use case:

* `notebooks.RuntimeIamPolicy`: Authoritative. Sets the IAM policy for the runtime and replaces any existing policy already attached. * `notebooks.RuntimeIamBinding`: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the runtime are preserved. * `notebooks.RuntimeIamMember`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the runtime are preserved.

A data source can be used to retrieve policy data in advent you do not need creation

* `notebooks.RuntimeIamPolicy`: Retrieves the IAM policy for the runtime

> **Note:** `notebooks.RuntimeIamPolicy` **cannot** be used in conjunction with `notebooks.RuntimeIamBinding` and `notebooks.RuntimeIamMember` or they will fight over what your policy should be.

> **Note:** `notebooks.RuntimeIamBinding` resources **can be** used in conjunction with `notebooks.RuntimeIamMember` resources **only if** they do not grant privilege to the same role.

## google\_notebooks\_runtime\_iam\_policy

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/organizations"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		admin, err := organizations.LookupIAMPolicy(ctx, &organizations.LookupIAMPolicyArgs{
			Bindings: []organizations.GetIAMPolicyBinding{
				{
					Role: "roles/viewer",
					Members: []string{
						"user:jane@example.com",
					},
				},
			},
		}, nil)
		if err != nil {
			return err
		}
		_, err = notebooks.NewRuntimeIamPolicy(ctx, "policy", &notebooks.RuntimeIamPolicyArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			PolicyData:  *pulumi.String(admin.PolicyData),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_runtime\_iam\_binding

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntimeIamBinding(ctx, "binding", &notebooks.RuntimeIamBindingArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			Role:        pulumi.String("roles/viewer"),
			Members: pulumi.StringArray{
				pulumi.String("user:jane@example.com"),
			},
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## google\_notebooks\_runtime\_iam\_member

```go package main

import (

"github.com/pulumi/pulumi-gcp/sdk/v6/go/gcp/notebooks"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"

)

func main() {
	pulumi.Run(func(ctx *pulumi.Context) error {
		_, err := notebooks.NewRuntimeIamMember(ctx, "member", &notebooks.RuntimeIamMemberArgs{
			Project:     pulumi.Any(google_notebooks_runtime.Runtime.Project),
			Location:    pulumi.Any(google_notebooks_runtime.Runtime.Location),
			RuntimeName: pulumi.Any(google_notebooks_runtime.Runtime.Name),
			Role:        pulumi.String("roles/viewer"),
			Member:      pulumi.String("user:jane@example.com"),
		})
		if err != nil {
			return err
		}
		return nil
	})
}

```

## Import

For all import syntaxes, the "resource in question" can take any of the following forms* projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} * {{project}}/{{location}}/{{runtime_name}} * {{location}}/{{runtime_name}} * {{runtime_name}} Any variables not passed in the import command will be taken from the provider configuration. Cloud AI Notebooks runtime IAM resources can be imported using the resource identifiers, role, and member. IAM member imports use space-delimited identifiersthe resource in question, the role, and the member identity, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamPolicy:RuntimeIamPolicy editor "projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} roles/viewer user:jane@example.com"

```

IAM binding imports use space-delimited identifiersthe resource in question and the role, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamPolicy:RuntimeIamPolicy editor "projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}} roles/viewer"

```

IAM policy imports use the identifier of the resource in question, e.g.

```sh

$ pulumi import gcp:notebooks/runtimeIamPolicy:RuntimeIamPolicy editor projects/{{project}}/locations/{{location}}/runtimes/{{runtime_name}}

```

-> **Custom Roles**If you're importing a IAM resource with a custom role, make sure to use the

full name of the custom role, e.g. `[projects/my-project|organizations/my-org]/roles/my-custom-role`.

func GetRuntimeIamPolicy added in v6.5.0

func GetRuntimeIamPolicy(ctx *pulumi.Context,
	name string, id pulumi.IDInput, state *RuntimeIamPolicyState, opts ...pulumi.ResourceOption) (*RuntimeIamPolicy, error)

GetRuntimeIamPolicy gets an existing RuntimeIamPolicy resource's state with the given name, ID, and optional state properties that are used to uniquely qualify the lookup (nil if not required).

func NewRuntimeIamPolicy added in v6.5.0

func NewRuntimeIamPolicy(ctx *pulumi.Context,
	name string, args *RuntimeIamPolicyArgs, opts ...pulumi.ResourceOption) (*RuntimeIamPolicy, error)

NewRuntimeIamPolicy registers a new resource with the given unique name, arguments, and options.

func (*RuntimeIamPolicy) ElementType added in v6.5.0

func (*RuntimeIamPolicy) ElementType() reflect.Type

func (*RuntimeIamPolicy) ToOutput added in v6.65.1

func (*RuntimeIamPolicy) ToRuntimeIamPolicyOutput added in v6.5.0

func (i *RuntimeIamPolicy) ToRuntimeIamPolicyOutput() RuntimeIamPolicyOutput

func (*RuntimeIamPolicy) ToRuntimeIamPolicyOutputWithContext added in v6.5.0

func (i *RuntimeIamPolicy) ToRuntimeIamPolicyOutputWithContext(ctx context.Context) RuntimeIamPolicyOutput

type RuntimeIamPolicyArgs added in v6.5.0

type RuntimeIamPolicyArgs struct {
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringInput
}

The set of arguments for constructing a RuntimeIamPolicy resource.

func (RuntimeIamPolicyArgs) ElementType added in v6.5.0

func (RuntimeIamPolicyArgs) ElementType() reflect.Type

type RuntimeIamPolicyArray added in v6.5.0

type RuntimeIamPolicyArray []RuntimeIamPolicyInput

func (RuntimeIamPolicyArray) ElementType added in v6.5.0

func (RuntimeIamPolicyArray) ElementType() reflect.Type

func (RuntimeIamPolicyArray) ToOutput added in v6.65.1

func (RuntimeIamPolicyArray) ToRuntimeIamPolicyArrayOutput added in v6.5.0

func (i RuntimeIamPolicyArray) ToRuntimeIamPolicyArrayOutput() RuntimeIamPolicyArrayOutput

func (RuntimeIamPolicyArray) ToRuntimeIamPolicyArrayOutputWithContext added in v6.5.0

func (i RuntimeIamPolicyArray) ToRuntimeIamPolicyArrayOutputWithContext(ctx context.Context) RuntimeIamPolicyArrayOutput

type RuntimeIamPolicyArrayInput added in v6.5.0

type RuntimeIamPolicyArrayInput interface {
	pulumi.Input

	ToRuntimeIamPolicyArrayOutput() RuntimeIamPolicyArrayOutput
	ToRuntimeIamPolicyArrayOutputWithContext(context.Context) RuntimeIamPolicyArrayOutput
}

RuntimeIamPolicyArrayInput is an input type that accepts RuntimeIamPolicyArray and RuntimeIamPolicyArrayOutput values. You can construct a concrete instance of `RuntimeIamPolicyArrayInput` via:

RuntimeIamPolicyArray{ RuntimeIamPolicyArgs{...} }

type RuntimeIamPolicyArrayOutput added in v6.5.0

type RuntimeIamPolicyArrayOutput struct{ *pulumi.OutputState }

func (RuntimeIamPolicyArrayOutput) ElementType added in v6.5.0

func (RuntimeIamPolicyArrayOutput) Index added in v6.5.0

func (RuntimeIamPolicyArrayOutput) ToOutput added in v6.65.1

func (RuntimeIamPolicyArrayOutput) ToRuntimeIamPolicyArrayOutput added in v6.5.0

func (o RuntimeIamPolicyArrayOutput) ToRuntimeIamPolicyArrayOutput() RuntimeIamPolicyArrayOutput

func (RuntimeIamPolicyArrayOutput) ToRuntimeIamPolicyArrayOutputWithContext added in v6.5.0

func (o RuntimeIamPolicyArrayOutput) ToRuntimeIamPolicyArrayOutputWithContext(ctx context.Context) RuntimeIamPolicyArrayOutput

type RuntimeIamPolicyInput added in v6.5.0

type RuntimeIamPolicyInput interface {
	pulumi.Input

	ToRuntimeIamPolicyOutput() RuntimeIamPolicyOutput
	ToRuntimeIamPolicyOutputWithContext(ctx context.Context) RuntimeIamPolicyOutput
}

type RuntimeIamPolicyMap added in v6.5.0

type RuntimeIamPolicyMap map[string]RuntimeIamPolicyInput

func (RuntimeIamPolicyMap) ElementType added in v6.5.0

func (RuntimeIamPolicyMap) ElementType() reflect.Type

func (RuntimeIamPolicyMap) ToOutput added in v6.65.1

func (RuntimeIamPolicyMap) ToRuntimeIamPolicyMapOutput added in v6.5.0

func (i RuntimeIamPolicyMap) ToRuntimeIamPolicyMapOutput() RuntimeIamPolicyMapOutput

func (RuntimeIamPolicyMap) ToRuntimeIamPolicyMapOutputWithContext added in v6.5.0

func (i RuntimeIamPolicyMap) ToRuntimeIamPolicyMapOutputWithContext(ctx context.Context) RuntimeIamPolicyMapOutput

type RuntimeIamPolicyMapInput added in v6.5.0

type RuntimeIamPolicyMapInput interface {
	pulumi.Input

	ToRuntimeIamPolicyMapOutput() RuntimeIamPolicyMapOutput
	ToRuntimeIamPolicyMapOutputWithContext(context.Context) RuntimeIamPolicyMapOutput
}

RuntimeIamPolicyMapInput is an input type that accepts RuntimeIamPolicyMap and RuntimeIamPolicyMapOutput values. You can construct a concrete instance of `RuntimeIamPolicyMapInput` via:

RuntimeIamPolicyMap{ "key": RuntimeIamPolicyArgs{...} }

type RuntimeIamPolicyMapOutput added in v6.5.0

type RuntimeIamPolicyMapOutput struct{ *pulumi.OutputState }

func (RuntimeIamPolicyMapOutput) ElementType added in v6.5.0

func (RuntimeIamPolicyMapOutput) ElementType() reflect.Type

func (RuntimeIamPolicyMapOutput) MapIndex added in v6.5.0

func (RuntimeIamPolicyMapOutput) ToOutput added in v6.65.1

func (RuntimeIamPolicyMapOutput) ToRuntimeIamPolicyMapOutput added in v6.5.0

func (o RuntimeIamPolicyMapOutput) ToRuntimeIamPolicyMapOutput() RuntimeIamPolicyMapOutput

func (RuntimeIamPolicyMapOutput) ToRuntimeIamPolicyMapOutputWithContext added in v6.5.0

func (o RuntimeIamPolicyMapOutput) ToRuntimeIamPolicyMapOutputWithContext(ctx context.Context) RuntimeIamPolicyMapOutput

type RuntimeIamPolicyOutput added in v6.5.0

type RuntimeIamPolicyOutput struct{ *pulumi.OutputState }

func (RuntimeIamPolicyOutput) ElementType added in v6.5.0

func (RuntimeIamPolicyOutput) ElementType() reflect.Type

func (RuntimeIamPolicyOutput) Etag added in v6.23.0

(Computed) The etag of the IAM policy.

func (RuntimeIamPolicyOutput) Location added in v6.23.0

A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to

func (RuntimeIamPolicyOutput) PolicyData added in v6.23.0

The policy data generated by a `organizations.getIAMPolicy` data source.

func (RuntimeIamPolicyOutput) Project added in v6.23.0

The ID of the project in which the resource belongs. If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.

  • `member/members` - (Required) Identities that will be granted the privilege in `role`. Each entry can have one of the following values:
  • **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
  • **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
  • **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
  • **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
  • **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
  • **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
  • **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
  • **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
  • **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"

func (RuntimeIamPolicyOutput) RuntimeName added in v6.23.0

func (o RuntimeIamPolicyOutput) RuntimeName() pulumi.StringOutput

Used to find the parent resource to bind the IAM policy to

func (RuntimeIamPolicyOutput) ToOutput added in v6.65.1

func (RuntimeIamPolicyOutput) ToRuntimeIamPolicyOutput added in v6.5.0

func (o RuntimeIamPolicyOutput) ToRuntimeIamPolicyOutput() RuntimeIamPolicyOutput

func (RuntimeIamPolicyOutput) ToRuntimeIamPolicyOutputWithContext added in v6.5.0

func (o RuntimeIamPolicyOutput) ToRuntimeIamPolicyOutputWithContext(ctx context.Context) RuntimeIamPolicyOutput

type RuntimeIamPolicyState added in v6.5.0

type RuntimeIamPolicyState struct {
	// (Computed) The etag of the IAM policy.
	Etag pulumi.StringPtrInput
	// A reference to the zone where the machine resides. Used to find the parent resource to bind the IAM policy to
	Location pulumi.StringPtrInput
	// The policy data generated by
	// a `organizations.getIAMPolicy` data source.
	PolicyData pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the project will be parsed from the identifier of the parent resource. If no project is provided in the parent identifier and no project is specified, the provider project is used.
	//
	// * `member/members` - (Required) Identities that will be granted the privilege in `role`.
	//   Each entry can have one of the following values:
	// * **allUsers**: A special identifier that represents anyone who is on the internet; with or without a Google account.
	// * **allAuthenticatedUsers**: A special identifier that represents anyone who is authenticated with a Google account or a service account.
	// * **user:{emailid}**: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com.
	// * **serviceAccount:{emailid}**: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com.
	// * **group:{emailid}**: An email address that represents a Google group. For example, admins@example.com.
	// * **domain:{domain}**: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.
	// * **projectOwner:projectid**: Owners of the given project. For example, "projectOwner:my-example-project"
	// * **projectEditor:projectid**: Editors of the given project. For example, "projectEditor:my-example-project"
	// * **projectViewer:projectid**: Viewers of the given project. For example, "projectViewer:my-example-project"
	Project pulumi.StringPtrInput
	// Used to find the parent resource to bind the IAM policy to
	RuntimeName pulumi.StringPtrInput
}

func (RuntimeIamPolicyState) ElementType added in v6.5.0

func (RuntimeIamPolicyState) ElementType() reflect.Type

type RuntimeInput added in v6.4.0

type RuntimeInput interface {
	pulumi.Input

	ToRuntimeOutput() RuntimeOutput
	ToRuntimeOutputWithContext(ctx context.Context) RuntimeOutput
}

type RuntimeMap added in v6.4.0

type RuntimeMap map[string]RuntimeInput

func (RuntimeMap) ElementType added in v6.4.0

func (RuntimeMap) ElementType() reflect.Type

func (RuntimeMap) ToOutput added in v6.65.1

func (i RuntimeMap) ToOutput(ctx context.Context) pulumix.Output[map[string]*Runtime]

func (RuntimeMap) ToRuntimeMapOutput added in v6.4.0

func (i RuntimeMap) ToRuntimeMapOutput() RuntimeMapOutput

func (RuntimeMap) ToRuntimeMapOutputWithContext added in v6.4.0

func (i RuntimeMap) ToRuntimeMapOutputWithContext(ctx context.Context) RuntimeMapOutput

type RuntimeMapInput added in v6.4.0

type RuntimeMapInput interface {
	pulumi.Input

	ToRuntimeMapOutput() RuntimeMapOutput
	ToRuntimeMapOutputWithContext(context.Context) RuntimeMapOutput
}

RuntimeMapInput is an input type that accepts RuntimeMap and RuntimeMapOutput values. You can construct a concrete instance of `RuntimeMapInput` via:

RuntimeMap{ "key": RuntimeArgs{...} }

type RuntimeMapOutput added in v6.4.0

type RuntimeMapOutput struct{ *pulumi.OutputState }

func (RuntimeMapOutput) ElementType added in v6.4.0

func (RuntimeMapOutput) ElementType() reflect.Type

func (RuntimeMapOutput) MapIndex added in v6.4.0

func (RuntimeMapOutput) ToOutput added in v6.65.1

func (RuntimeMapOutput) ToRuntimeMapOutput added in v6.4.0

func (o RuntimeMapOutput) ToRuntimeMapOutput() RuntimeMapOutput

func (RuntimeMapOutput) ToRuntimeMapOutputWithContext added in v6.4.0

func (o RuntimeMapOutput) ToRuntimeMapOutputWithContext(ctx context.Context) RuntimeMapOutput

type RuntimeMetric added in v6.4.0

type RuntimeMetric struct {
	// (Output)
	// Contains runtime daemon metrics, such as OS and kernels and
	// sessions stats.
	SystemMetrics map[string]string `pulumi:"systemMetrics"`
}

type RuntimeMetricArgs added in v6.4.0

type RuntimeMetricArgs struct {
	// (Output)
	// Contains runtime daemon metrics, such as OS and kernels and
	// sessions stats.
	SystemMetrics pulumi.StringMapInput `pulumi:"systemMetrics"`
}

func (RuntimeMetricArgs) ElementType added in v6.4.0

func (RuntimeMetricArgs) ElementType() reflect.Type

func (RuntimeMetricArgs) ToOutput added in v6.65.1

func (RuntimeMetricArgs) ToRuntimeMetricOutput added in v6.4.0

func (i RuntimeMetricArgs) ToRuntimeMetricOutput() RuntimeMetricOutput

func (RuntimeMetricArgs) ToRuntimeMetricOutputWithContext added in v6.4.0

func (i RuntimeMetricArgs) ToRuntimeMetricOutputWithContext(ctx context.Context) RuntimeMetricOutput

type RuntimeMetricArray added in v6.4.0

type RuntimeMetricArray []RuntimeMetricInput

func (RuntimeMetricArray) ElementType added in v6.4.0

func (RuntimeMetricArray) ElementType() reflect.Type

func (RuntimeMetricArray) ToOutput added in v6.65.1

func (RuntimeMetricArray) ToRuntimeMetricArrayOutput added in v6.4.0

func (i RuntimeMetricArray) ToRuntimeMetricArrayOutput() RuntimeMetricArrayOutput

func (RuntimeMetricArray) ToRuntimeMetricArrayOutputWithContext added in v6.4.0

func (i RuntimeMetricArray) ToRuntimeMetricArrayOutputWithContext(ctx context.Context) RuntimeMetricArrayOutput

type RuntimeMetricArrayInput added in v6.4.0

type RuntimeMetricArrayInput interface {
	pulumi.Input

	ToRuntimeMetricArrayOutput() RuntimeMetricArrayOutput
	ToRuntimeMetricArrayOutputWithContext(context.Context) RuntimeMetricArrayOutput
}

RuntimeMetricArrayInput is an input type that accepts RuntimeMetricArray and RuntimeMetricArrayOutput values. You can construct a concrete instance of `RuntimeMetricArrayInput` via:

RuntimeMetricArray{ RuntimeMetricArgs{...} }

type RuntimeMetricArrayOutput added in v6.4.0

type RuntimeMetricArrayOutput struct{ *pulumi.OutputState }

func (RuntimeMetricArrayOutput) ElementType added in v6.4.0

func (RuntimeMetricArrayOutput) ElementType() reflect.Type

func (RuntimeMetricArrayOutput) Index added in v6.4.0

func (RuntimeMetricArrayOutput) ToOutput added in v6.65.1

func (RuntimeMetricArrayOutput) ToRuntimeMetricArrayOutput added in v6.4.0

func (o RuntimeMetricArrayOutput) ToRuntimeMetricArrayOutput() RuntimeMetricArrayOutput

func (RuntimeMetricArrayOutput) ToRuntimeMetricArrayOutputWithContext added in v6.4.0

func (o RuntimeMetricArrayOutput) ToRuntimeMetricArrayOutputWithContext(ctx context.Context) RuntimeMetricArrayOutput

type RuntimeMetricInput added in v6.4.0

type RuntimeMetricInput interface {
	pulumi.Input

	ToRuntimeMetricOutput() RuntimeMetricOutput
	ToRuntimeMetricOutputWithContext(context.Context) RuntimeMetricOutput
}

RuntimeMetricInput is an input type that accepts RuntimeMetricArgs and RuntimeMetricOutput values. You can construct a concrete instance of `RuntimeMetricInput` via:

RuntimeMetricArgs{...}

type RuntimeMetricOutput added in v6.4.0

type RuntimeMetricOutput struct{ *pulumi.OutputState }

func (RuntimeMetricOutput) ElementType added in v6.4.0

func (RuntimeMetricOutput) ElementType() reflect.Type

func (RuntimeMetricOutput) SystemMetrics added in v6.4.0

func (o RuntimeMetricOutput) SystemMetrics() pulumi.StringMapOutput

(Output) Contains runtime daemon metrics, such as OS and kernels and sessions stats.

func (RuntimeMetricOutput) ToOutput added in v6.65.1

func (RuntimeMetricOutput) ToRuntimeMetricOutput added in v6.4.0

func (o RuntimeMetricOutput) ToRuntimeMetricOutput() RuntimeMetricOutput

func (RuntimeMetricOutput) ToRuntimeMetricOutputWithContext added in v6.4.0

func (o RuntimeMetricOutput) ToRuntimeMetricOutputWithContext(ctx context.Context) RuntimeMetricOutput

type RuntimeOutput added in v6.4.0

type RuntimeOutput struct{ *pulumi.OutputState }

func (RuntimeOutput) AccessConfig added in v6.23.0

The config settings for accessing runtime. Structure is documented below.

func (RuntimeOutput) ElementType added in v6.4.0

func (RuntimeOutput) ElementType() reflect.Type

func (RuntimeOutput) HealthState added in v6.23.0

func (o RuntimeOutput) HealthState() pulumi.StringOutput

The health state of this runtime. For a list of possible output values, see `https://cloud.google.com/vertex-ai/docs/workbench/ reference/rest/v1/projects.locations.runtimes#healthstate`.

func (RuntimeOutput) Location added in v6.23.0

func (o RuntimeOutput) Location() pulumi.StringOutput

A reference to the zone where the machine resides.

***

func (RuntimeOutput) Metrics added in v6.23.0

Contains Runtime daemon metrics such as Service status and JupyterLab status Structure is documented below.

func (RuntimeOutput) Name added in v6.23.0

The name specified for the Notebook runtime.

func (RuntimeOutput) Project added in v6.23.0

func (o RuntimeOutput) Project() pulumi.StringOutput

The ID of the project in which the resource belongs. If it is not provided, the provider project is used.

func (RuntimeOutput) SoftwareConfig added in v6.23.0

func (o RuntimeOutput) SoftwareConfig() RuntimeSoftwareConfigOutput

The config settings for software inside the runtime. Structure is documented below.

func (RuntimeOutput) State added in v6.23.0

func (o RuntimeOutput) State() pulumi.StringOutput

The state of this runtime.

func (RuntimeOutput) ToOutput added in v6.65.1

func (o RuntimeOutput) ToOutput(ctx context.Context) pulumix.Output[*Runtime]

func (RuntimeOutput) ToRuntimeOutput added in v6.4.0

func (o RuntimeOutput) ToRuntimeOutput() RuntimeOutput

func (RuntimeOutput) ToRuntimeOutputWithContext added in v6.4.0

func (o RuntimeOutput) ToRuntimeOutputWithContext(ctx context.Context) RuntimeOutput

func (RuntimeOutput) VirtualMachine added in v6.23.0

func (o RuntimeOutput) VirtualMachine() RuntimeVirtualMachinePtrOutput

Use a Compute Engine VM image to start the managed notebook instance. Structure is documented below.

type RuntimeSoftwareConfig added in v6.4.0

type RuntimeSoftwareConfig struct {
	// Specify a custom Cloud Storage path where the GPU driver is stored.
	// If not specified, we'll automatically choose from official GPU drivers.
	CustomGpuDriverPath *string `pulumi:"customGpuDriverPath"`
	// Verifies core internal services are running. Default: True.
	EnableHealthMonitoring *bool `pulumi:"enableHealthMonitoring"`
	// Runtime will automatically shutdown after idle_shutdown_time.
	// Default: True
	IdleShutdown *bool `pulumi:"idleShutdown"`
	// Time in minutes to wait before shuting down runtime.
	// Default: 180 minutes
	IdleShutdownTimeout *int `pulumi:"idleShutdownTimeout"`
	// Install Nvidia Driver automatically.
	InstallGpuDriver *bool `pulumi:"installGpuDriver"`
	// Use a list of container images to use as Kernels in the notebook instance.
	// Structure is documented below.
	Kernels []RuntimeSoftwareConfigKernel `pulumi:"kernels"`
	// Cron expression in UTC timezone for schedule instance auto upgrade.
	// Please follow the [cron format](https://en.wikipedia.org/wiki/Cron).
	NotebookUpgradeSchedule *string `pulumi:"notebookUpgradeSchedule"`
	// Path to a Bash script that automatically runs after a notebook instance
	// fully boots up. The path must be a URL or
	// Cloud Storage path (gs://path-to-file/file-name).
	PostStartupScript *string `pulumi:"postStartupScript"`
	// Behavior for the post startup script.
	// Possible values are: `POST_STARTUP_SCRIPT_BEHAVIOR_UNSPECIFIED`, `RUN_EVERY_START`, `DOWNLOAD_AND_RUN_EVERY_START`.
	PostStartupScriptBehavior *string `pulumi:"postStartupScriptBehavior"`
	// (Output)
	// Bool indicating whether an newer image is available in an image family.
	Upgradeable *bool `pulumi:"upgradeable"`
}

type RuntimeSoftwareConfigArgs added in v6.4.0

type RuntimeSoftwareConfigArgs struct {
	// Specify a custom Cloud Storage path where the GPU driver is stored.
	// If not specified, we'll automatically choose from official GPU drivers.
	CustomGpuDriverPath pulumi.StringPtrInput `pulumi:"customGpuDriverPath"`
	// Verifies core internal services are running. Default: True.
	EnableHealthMonitoring pulumi.BoolPtrInput `pulumi:"enableHealthMonitoring"`
	// Runtime will automatically shutdown after idle_shutdown_time.
	// Default: True
	IdleShutdown pulumi.BoolPtrInput `pulumi:"idleShutdown"`
	// Time in minutes to wait before shuting down runtime.
	// Default: 180 minutes
	IdleShutdownTimeout pulumi.IntPtrInput `pulumi:"idleShutdownTimeout"`
	// Install Nvidia Driver automatically.
	InstallGpuDriver pulumi.BoolPtrInput `pulumi:"installGpuDriver"`
	// Use a list of container images to use as Kernels in the notebook instance.
	// Structure is documented below.
	Kernels RuntimeSoftwareConfigKernelArrayInput `pulumi:"kernels"`
	// Cron expression in UTC timezone for schedule instance auto upgrade.
	// Please follow the [cron format](https://en.wikipedia.org/wiki/Cron).
	NotebookUpgradeSchedule pulumi.StringPtrInput `pulumi:"notebookUpgradeSchedule"`
	// Path to a Bash script that automatically runs after a notebook instance
	// fully boots up. The path must be a URL or
	// Cloud Storage path (gs://path-to-file/file-name).
	PostStartupScript pulumi.StringPtrInput `pulumi:"postStartupScript"`
	// Behavior for the post startup script.
	// Possible values are: `POST_STARTUP_SCRIPT_BEHAVIOR_UNSPECIFIED`, `RUN_EVERY_START`, `DOWNLOAD_AND_RUN_EVERY_START`.
	PostStartupScriptBehavior pulumi.StringPtrInput `pulumi:"postStartupScriptBehavior"`
	// (Output)
	// Bool indicating whether an newer image is available in an image family.
	Upgradeable pulumi.BoolPtrInput `pulumi:"upgradeable"`
}

func (RuntimeSoftwareConfigArgs) ElementType added in v6.4.0

func (RuntimeSoftwareConfigArgs) ElementType() reflect.Type

func (RuntimeSoftwareConfigArgs) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigOutput added in v6.4.0

func (i RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigOutput() RuntimeSoftwareConfigOutput

func (RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigOutputWithContext added in v6.4.0

func (i RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigOutputWithContext(ctx context.Context) RuntimeSoftwareConfigOutput

func (RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigPtrOutput added in v6.4.0

func (i RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigPtrOutput() RuntimeSoftwareConfigPtrOutput

func (RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigPtrOutputWithContext added in v6.4.0

func (i RuntimeSoftwareConfigArgs) ToRuntimeSoftwareConfigPtrOutputWithContext(ctx context.Context) RuntimeSoftwareConfigPtrOutput

type RuntimeSoftwareConfigInput added in v6.4.0

type RuntimeSoftwareConfigInput interface {
	pulumi.Input

	ToRuntimeSoftwareConfigOutput() RuntimeSoftwareConfigOutput
	ToRuntimeSoftwareConfigOutputWithContext(context.Context) RuntimeSoftwareConfigOutput
}

RuntimeSoftwareConfigInput is an input type that accepts RuntimeSoftwareConfigArgs and RuntimeSoftwareConfigOutput values. You can construct a concrete instance of `RuntimeSoftwareConfigInput` via:

RuntimeSoftwareConfigArgs{...}

type RuntimeSoftwareConfigKernel added in v6.34.0

type RuntimeSoftwareConfigKernel struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository string `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag *string `pulumi:"tag"`
}

type RuntimeSoftwareConfigKernelArgs added in v6.34.0

type RuntimeSoftwareConfigKernelArgs struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository pulumi.StringInput `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag pulumi.StringPtrInput `pulumi:"tag"`
}

func (RuntimeSoftwareConfigKernelArgs) ElementType added in v6.34.0

func (RuntimeSoftwareConfigKernelArgs) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigKernelArgs) ToRuntimeSoftwareConfigKernelOutput added in v6.34.0

func (i RuntimeSoftwareConfigKernelArgs) ToRuntimeSoftwareConfigKernelOutput() RuntimeSoftwareConfigKernelOutput

func (RuntimeSoftwareConfigKernelArgs) ToRuntimeSoftwareConfigKernelOutputWithContext added in v6.34.0

func (i RuntimeSoftwareConfigKernelArgs) ToRuntimeSoftwareConfigKernelOutputWithContext(ctx context.Context) RuntimeSoftwareConfigKernelOutput

type RuntimeSoftwareConfigKernelArray added in v6.34.0

type RuntimeSoftwareConfigKernelArray []RuntimeSoftwareConfigKernelInput

func (RuntimeSoftwareConfigKernelArray) ElementType added in v6.34.0

func (RuntimeSoftwareConfigKernelArray) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigKernelArray) ToRuntimeSoftwareConfigKernelArrayOutput added in v6.34.0

func (i RuntimeSoftwareConfigKernelArray) ToRuntimeSoftwareConfigKernelArrayOutput() RuntimeSoftwareConfigKernelArrayOutput

func (RuntimeSoftwareConfigKernelArray) ToRuntimeSoftwareConfigKernelArrayOutputWithContext added in v6.34.0

func (i RuntimeSoftwareConfigKernelArray) ToRuntimeSoftwareConfigKernelArrayOutputWithContext(ctx context.Context) RuntimeSoftwareConfigKernelArrayOutput

type RuntimeSoftwareConfigKernelArrayInput added in v6.34.0

type RuntimeSoftwareConfigKernelArrayInput interface {
	pulumi.Input

	ToRuntimeSoftwareConfigKernelArrayOutput() RuntimeSoftwareConfigKernelArrayOutput
	ToRuntimeSoftwareConfigKernelArrayOutputWithContext(context.Context) RuntimeSoftwareConfigKernelArrayOutput
}

RuntimeSoftwareConfigKernelArrayInput is an input type that accepts RuntimeSoftwareConfigKernelArray and RuntimeSoftwareConfigKernelArrayOutput values. You can construct a concrete instance of `RuntimeSoftwareConfigKernelArrayInput` via:

RuntimeSoftwareConfigKernelArray{ RuntimeSoftwareConfigKernelArgs{...} }

type RuntimeSoftwareConfigKernelArrayOutput added in v6.34.0

type RuntimeSoftwareConfigKernelArrayOutput struct{ *pulumi.OutputState }

func (RuntimeSoftwareConfigKernelArrayOutput) ElementType added in v6.34.0

func (RuntimeSoftwareConfigKernelArrayOutput) Index added in v6.34.0

func (RuntimeSoftwareConfigKernelArrayOutput) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigKernelArrayOutput) ToRuntimeSoftwareConfigKernelArrayOutput added in v6.34.0

func (o RuntimeSoftwareConfigKernelArrayOutput) ToRuntimeSoftwareConfigKernelArrayOutput() RuntimeSoftwareConfigKernelArrayOutput

func (RuntimeSoftwareConfigKernelArrayOutput) ToRuntimeSoftwareConfigKernelArrayOutputWithContext added in v6.34.0

func (o RuntimeSoftwareConfigKernelArrayOutput) ToRuntimeSoftwareConfigKernelArrayOutputWithContext(ctx context.Context) RuntimeSoftwareConfigKernelArrayOutput

type RuntimeSoftwareConfigKernelInput added in v6.34.0

type RuntimeSoftwareConfigKernelInput interface {
	pulumi.Input

	ToRuntimeSoftwareConfigKernelOutput() RuntimeSoftwareConfigKernelOutput
	ToRuntimeSoftwareConfigKernelOutputWithContext(context.Context) RuntimeSoftwareConfigKernelOutput
}

RuntimeSoftwareConfigKernelInput is an input type that accepts RuntimeSoftwareConfigKernelArgs and RuntimeSoftwareConfigKernelOutput values. You can construct a concrete instance of `RuntimeSoftwareConfigKernelInput` via:

RuntimeSoftwareConfigKernelArgs{...}

type RuntimeSoftwareConfigKernelOutput added in v6.34.0

type RuntimeSoftwareConfigKernelOutput struct{ *pulumi.OutputState }

func (RuntimeSoftwareConfigKernelOutput) ElementType added in v6.34.0

func (RuntimeSoftwareConfigKernelOutput) Repository added in v6.34.0

The path to the container image repository. For example: gcr.io/{project_id}/{imageName}

func (RuntimeSoftwareConfigKernelOutput) Tag added in v6.34.0

The tag of the container image. If not specified, this defaults to the latest tag.

func (RuntimeSoftwareConfigKernelOutput) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigKernelOutput) ToRuntimeSoftwareConfigKernelOutput added in v6.34.0

func (o RuntimeSoftwareConfigKernelOutput) ToRuntimeSoftwareConfigKernelOutput() RuntimeSoftwareConfigKernelOutput

func (RuntimeSoftwareConfigKernelOutput) ToRuntimeSoftwareConfigKernelOutputWithContext added in v6.34.0

func (o RuntimeSoftwareConfigKernelOutput) ToRuntimeSoftwareConfigKernelOutputWithContext(ctx context.Context) RuntimeSoftwareConfigKernelOutput

type RuntimeSoftwareConfigOutput added in v6.4.0

type RuntimeSoftwareConfigOutput struct{ *pulumi.OutputState }

func (RuntimeSoftwareConfigOutput) CustomGpuDriverPath added in v6.4.0

func (o RuntimeSoftwareConfigOutput) CustomGpuDriverPath() pulumi.StringPtrOutput

Specify a custom Cloud Storage path where the GPU driver is stored. If not specified, we'll automatically choose from official GPU drivers.

func (RuntimeSoftwareConfigOutput) ElementType added in v6.4.0

func (RuntimeSoftwareConfigOutput) EnableHealthMonitoring added in v6.4.0

func (o RuntimeSoftwareConfigOutput) EnableHealthMonitoring() pulumi.BoolPtrOutput

Verifies core internal services are running. Default: True.

func (RuntimeSoftwareConfigOutput) IdleShutdown added in v6.4.0

Runtime will automatically shutdown after idle_shutdown_time. Default: True

func (RuntimeSoftwareConfigOutput) IdleShutdownTimeout added in v6.4.0

func (o RuntimeSoftwareConfigOutput) IdleShutdownTimeout() pulumi.IntPtrOutput

Time in minutes to wait before shuting down runtime. Default: 180 minutes

func (RuntimeSoftwareConfigOutput) InstallGpuDriver added in v6.4.0

func (o RuntimeSoftwareConfigOutput) InstallGpuDriver() pulumi.BoolPtrOutput

Install Nvidia Driver automatically.

func (RuntimeSoftwareConfigOutput) Kernels added in v6.34.0

Use a list of container images to use as Kernels in the notebook instance. Structure is documented below.

func (RuntimeSoftwareConfigOutput) NotebookUpgradeSchedule added in v6.4.0

func (o RuntimeSoftwareConfigOutput) NotebookUpgradeSchedule() pulumi.StringPtrOutput

Cron expression in UTC timezone for schedule instance auto upgrade. Please follow the [cron format](https://en.wikipedia.org/wiki/Cron).

func (RuntimeSoftwareConfigOutput) PostStartupScript added in v6.4.0

func (o RuntimeSoftwareConfigOutput) PostStartupScript() pulumi.StringPtrOutput

Path to a Bash script that automatically runs after a notebook instance fully boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-name).

func (RuntimeSoftwareConfigOutput) PostStartupScriptBehavior added in v6.34.0

func (o RuntimeSoftwareConfigOutput) PostStartupScriptBehavior() pulumi.StringPtrOutput

Behavior for the post startup script. Possible values are: `POST_STARTUP_SCRIPT_BEHAVIOR_UNSPECIFIED`, `RUN_EVERY_START`, `DOWNLOAD_AND_RUN_EVERY_START`.

func (RuntimeSoftwareConfigOutput) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigOutput added in v6.4.0

func (o RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigOutput() RuntimeSoftwareConfigOutput

func (RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigOutputWithContext added in v6.4.0

func (o RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigOutputWithContext(ctx context.Context) RuntimeSoftwareConfigOutput

func (RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigPtrOutput added in v6.4.0

func (o RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigPtrOutput() RuntimeSoftwareConfigPtrOutput

func (RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeSoftwareConfigOutput) ToRuntimeSoftwareConfigPtrOutputWithContext(ctx context.Context) RuntimeSoftwareConfigPtrOutput

func (RuntimeSoftwareConfigOutput) Upgradeable added in v6.34.0

(Output) Bool indicating whether an newer image is available in an image family.

type RuntimeSoftwareConfigPtrInput added in v6.4.0

type RuntimeSoftwareConfigPtrInput interface {
	pulumi.Input

	ToRuntimeSoftwareConfigPtrOutput() RuntimeSoftwareConfigPtrOutput
	ToRuntimeSoftwareConfigPtrOutputWithContext(context.Context) RuntimeSoftwareConfigPtrOutput
}

RuntimeSoftwareConfigPtrInput is an input type that accepts RuntimeSoftwareConfigArgs, RuntimeSoftwareConfigPtr and RuntimeSoftwareConfigPtrOutput values. You can construct a concrete instance of `RuntimeSoftwareConfigPtrInput` via:

        RuntimeSoftwareConfigArgs{...}

or:

        nil

func RuntimeSoftwareConfigPtr added in v6.4.0

func RuntimeSoftwareConfigPtr(v *RuntimeSoftwareConfigArgs) RuntimeSoftwareConfigPtrInput

type RuntimeSoftwareConfigPtrOutput added in v6.4.0

type RuntimeSoftwareConfigPtrOutput struct{ *pulumi.OutputState }

func (RuntimeSoftwareConfigPtrOutput) CustomGpuDriverPath added in v6.4.0

func (o RuntimeSoftwareConfigPtrOutput) CustomGpuDriverPath() pulumi.StringPtrOutput

Specify a custom Cloud Storage path where the GPU driver is stored. If not specified, we'll automatically choose from official GPU drivers.

func (RuntimeSoftwareConfigPtrOutput) Elem added in v6.4.0

func (RuntimeSoftwareConfigPtrOutput) ElementType added in v6.4.0

func (RuntimeSoftwareConfigPtrOutput) EnableHealthMonitoring added in v6.4.0

func (o RuntimeSoftwareConfigPtrOutput) EnableHealthMonitoring() pulumi.BoolPtrOutput

Verifies core internal services are running. Default: True.

func (RuntimeSoftwareConfigPtrOutput) IdleShutdown added in v6.4.0

Runtime will automatically shutdown after idle_shutdown_time. Default: True

func (RuntimeSoftwareConfigPtrOutput) IdleShutdownTimeout added in v6.4.0

func (o RuntimeSoftwareConfigPtrOutput) IdleShutdownTimeout() pulumi.IntPtrOutput

Time in minutes to wait before shuting down runtime. Default: 180 minutes

func (RuntimeSoftwareConfigPtrOutput) InstallGpuDriver added in v6.4.0

Install Nvidia Driver automatically.

func (RuntimeSoftwareConfigPtrOutput) Kernels added in v6.34.0

Use a list of container images to use as Kernels in the notebook instance. Structure is documented below.

func (RuntimeSoftwareConfigPtrOutput) NotebookUpgradeSchedule added in v6.4.0

func (o RuntimeSoftwareConfigPtrOutput) NotebookUpgradeSchedule() pulumi.StringPtrOutput

Cron expression in UTC timezone for schedule instance auto upgrade. Please follow the [cron format](https://en.wikipedia.org/wiki/Cron).

func (RuntimeSoftwareConfigPtrOutput) PostStartupScript added in v6.4.0

Path to a Bash script that automatically runs after a notebook instance fully boots up. The path must be a URL or Cloud Storage path (gs://path-to-file/file-name).

func (RuntimeSoftwareConfigPtrOutput) PostStartupScriptBehavior added in v6.34.0

func (o RuntimeSoftwareConfigPtrOutput) PostStartupScriptBehavior() pulumi.StringPtrOutput

Behavior for the post startup script. Possible values are: `POST_STARTUP_SCRIPT_BEHAVIOR_UNSPECIFIED`, `RUN_EVERY_START`, `DOWNLOAD_AND_RUN_EVERY_START`.

func (RuntimeSoftwareConfigPtrOutput) ToOutput added in v6.65.1

func (RuntimeSoftwareConfigPtrOutput) ToRuntimeSoftwareConfigPtrOutput added in v6.4.0

func (o RuntimeSoftwareConfigPtrOutput) ToRuntimeSoftwareConfigPtrOutput() RuntimeSoftwareConfigPtrOutput

func (RuntimeSoftwareConfigPtrOutput) ToRuntimeSoftwareConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeSoftwareConfigPtrOutput) ToRuntimeSoftwareConfigPtrOutputWithContext(ctx context.Context) RuntimeSoftwareConfigPtrOutput

func (RuntimeSoftwareConfigPtrOutput) Upgradeable added in v6.34.0

(Output) Bool indicating whether an newer image is available in an image family.

type RuntimeState added in v6.4.0

type RuntimeState struct {
	// The config settings for accessing runtime.
	// Structure is documented below.
	AccessConfig RuntimeAccessConfigPtrInput
	// The health state of this runtime. For a list of possible output
	// values, see `https://cloud.google.com/vertex-ai/docs/workbench/
	// reference/rest/v1/projects.locations.runtimes#healthstate`.
	HealthState pulumi.StringPtrInput
	// A reference to the zone where the machine resides.
	//
	// ***
	Location pulumi.StringPtrInput
	// Contains Runtime daemon metrics such as Service status and JupyterLab
	// status
	// Structure is documented below.
	Metrics RuntimeMetricArrayInput
	// The name specified for the Notebook runtime.
	Name pulumi.StringPtrInput
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project pulumi.StringPtrInput
	// The config settings for software inside the runtime.
	// Structure is documented below.
	SoftwareConfig RuntimeSoftwareConfigPtrInput
	// The state of this runtime.
	State pulumi.StringPtrInput
	// Use a Compute Engine VM image to start the managed notebook instance.
	// Structure is documented below.
	VirtualMachine RuntimeVirtualMachinePtrInput
}

func (RuntimeState) ElementType added in v6.4.0

func (RuntimeState) ElementType() reflect.Type

type RuntimeVirtualMachine added in v6.4.0

type RuntimeVirtualMachine struct {
	// (Output)
	// The unique identifier of the Managed Compute Engine instance.
	InstanceId *string `pulumi:"instanceId"`
	// (Output)
	// The user-friendly name of the Managed Compute Engine instance.
	InstanceName *string `pulumi:"instanceName"`
	// Virtual Machine configuration settings.
	// Structure is documented below.
	VirtualMachineConfig *RuntimeVirtualMachineVirtualMachineConfig `pulumi:"virtualMachineConfig"`
}

type RuntimeVirtualMachineArgs added in v6.4.0

type RuntimeVirtualMachineArgs struct {
	// (Output)
	// The unique identifier of the Managed Compute Engine instance.
	InstanceId pulumi.StringPtrInput `pulumi:"instanceId"`
	// (Output)
	// The user-friendly name of the Managed Compute Engine instance.
	InstanceName pulumi.StringPtrInput `pulumi:"instanceName"`
	// Virtual Machine configuration settings.
	// Structure is documented below.
	VirtualMachineConfig RuntimeVirtualMachineVirtualMachineConfigPtrInput `pulumi:"virtualMachineConfig"`
}

func (RuntimeVirtualMachineArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineArgs) ElementType() reflect.Type

func (RuntimeVirtualMachineArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineArgs) ToRuntimeVirtualMachineOutput added in v6.4.0

func (i RuntimeVirtualMachineArgs) ToRuntimeVirtualMachineOutput() RuntimeVirtualMachineOutput

func (RuntimeVirtualMachineArgs) ToRuntimeVirtualMachineOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineArgs) ToRuntimeVirtualMachineOutputWithContext(ctx context.Context) RuntimeVirtualMachineOutput

func (RuntimeVirtualMachineArgs) ToRuntimeVirtualMachinePtrOutput added in v6.4.0

func (i RuntimeVirtualMachineArgs) ToRuntimeVirtualMachinePtrOutput() RuntimeVirtualMachinePtrOutput

func (RuntimeVirtualMachineArgs) ToRuntimeVirtualMachinePtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineArgs) ToRuntimeVirtualMachinePtrOutputWithContext(ctx context.Context) RuntimeVirtualMachinePtrOutput

type RuntimeVirtualMachineInput added in v6.4.0

type RuntimeVirtualMachineInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineOutput() RuntimeVirtualMachineOutput
	ToRuntimeVirtualMachineOutputWithContext(context.Context) RuntimeVirtualMachineOutput
}

RuntimeVirtualMachineInput is an input type that accepts RuntimeVirtualMachineArgs and RuntimeVirtualMachineOutput values. You can construct a concrete instance of `RuntimeVirtualMachineInput` via:

RuntimeVirtualMachineArgs{...}

type RuntimeVirtualMachineOutput added in v6.4.0

type RuntimeVirtualMachineOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineOutput) InstanceId added in v6.4.0

(Output) The unique identifier of the Managed Compute Engine instance.

func (RuntimeVirtualMachineOutput) InstanceName added in v6.4.0

(Output) The user-friendly name of the Managed Compute Engine instance.

func (RuntimeVirtualMachineOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineOutput) ToRuntimeVirtualMachineOutput added in v6.4.0

func (o RuntimeVirtualMachineOutput) ToRuntimeVirtualMachineOutput() RuntimeVirtualMachineOutput

func (RuntimeVirtualMachineOutput) ToRuntimeVirtualMachineOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineOutput) ToRuntimeVirtualMachineOutputWithContext(ctx context.Context) RuntimeVirtualMachineOutput

func (RuntimeVirtualMachineOutput) ToRuntimeVirtualMachinePtrOutput added in v6.4.0

func (o RuntimeVirtualMachineOutput) ToRuntimeVirtualMachinePtrOutput() RuntimeVirtualMachinePtrOutput

func (RuntimeVirtualMachineOutput) ToRuntimeVirtualMachinePtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineOutput) ToRuntimeVirtualMachinePtrOutputWithContext(ctx context.Context) RuntimeVirtualMachinePtrOutput

func (RuntimeVirtualMachineOutput) VirtualMachineConfig added in v6.4.0

Virtual Machine configuration settings. Structure is documented below.

type RuntimeVirtualMachinePtrInput added in v6.4.0

type RuntimeVirtualMachinePtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachinePtrOutput() RuntimeVirtualMachinePtrOutput
	ToRuntimeVirtualMachinePtrOutputWithContext(context.Context) RuntimeVirtualMachinePtrOutput
}

RuntimeVirtualMachinePtrInput is an input type that accepts RuntimeVirtualMachineArgs, RuntimeVirtualMachinePtr and RuntimeVirtualMachinePtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachinePtrInput` via:

        RuntimeVirtualMachineArgs{...}

or:

        nil

func RuntimeVirtualMachinePtr added in v6.4.0

func RuntimeVirtualMachinePtr(v *RuntimeVirtualMachineArgs) RuntimeVirtualMachinePtrInput

type RuntimeVirtualMachinePtrOutput added in v6.4.0

type RuntimeVirtualMachinePtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachinePtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachinePtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachinePtrOutput) InstanceId added in v6.4.0

(Output) The unique identifier of the Managed Compute Engine instance.

func (RuntimeVirtualMachinePtrOutput) InstanceName added in v6.4.0

(Output) The user-friendly name of the Managed Compute Engine instance.

func (RuntimeVirtualMachinePtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachinePtrOutput) ToRuntimeVirtualMachinePtrOutput added in v6.4.0

func (o RuntimeVirtualMachinePtrOutput) ToRuntimeVirtualMachinePtrOutput() RuntimeVirtualMachinePtrOutput

func (RuntimeVirtualMachinePtrOutput) ToRuntimeVirtualMachinePtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachinePtrOutput) ToRuntimeVirtualMachinePtrOutputWithContext(ctx context.Context) RuntimeVirtualMachinePtrOutput

func (RuntimeVirtualMachinePtrOutput) VirtualMachineConfig added in v6.4.0

Virtual Machine configuration settings. Structure is documented below.

type RuntimeVirtualMachineVirtualMachineConfig added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfig struct {
	// The Compute Engine accelerator configuration for this runtime.
	// Structure is documented below.
	AcceleratorConfig *RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfig `pulumi:"acceleratorConfig"`
	// Use a list of container images to start the notebook instance.
	// Structure is documented below.
	ContainerImages []RuntimeVirtualMachineVirtualMachineConfigContainerImage `pulumi:"containerImages"`
	// Data disk option configuration settings.
	// Structure is documented below.
	DataDisk RuntimeVirtualMachineVirtualMachineConfigDataDisk `pulumi:"dataDisk"`
	// Encryption settings for virtual machine data disk.
	// Structure is documented below.
	EncryptionConfig *RuntimeVirtualMachineVirtualMachineConfigEncryptionConfig `pulumi:"encryptionConfig"`
	// (Output)
	// The Compute Engine guest attributes. (see [Project and instance
	// guest attributes](https://cloud.google.com/compute/docs/
	// storing-retrieving-metadata#guest_attributes)).
	GuestAttributes map[string]string `pulumi:"guestAttributes"`
	// If true, runtime will only have internal IP addresses. By default,
	// runtimes are not restricted to internal IP addresses, and will
	// have ephemeral external IP addresses assigned to each vm. This
	// `internalIpOnly` restriction can only be enabled for subnetwork
	// enabled networks, and all dependencies must be configured to be
	// accessible without external IP addresses.
	InternalIpOnly *bool `pulumi:"internalIpOnly"`
	// The labels to associate with this runtime. Label **keys** must
	// contain 1 to 63 characters, and must conform to [RFC 1035]
	// (https://www.ietf.org/rfc/rfc1035.txt). Label **values** may be
	// empty, but, if present, must contain 1 to 63 characters, and must
	// conform to [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). No
	// more than 32 labels can be associated with a cluster.
	Labels map[string]string `pulumi:"labels"`
	// The Compute Engine machine type used for runtimes.
	MachineType string `pulumi:"machineType"`
	// The Compute Engine metadata entries to add to virtual machine.
	// (see [Project and instance metadata](https://cloud.google.com
	// /compute/docs/storing-retrieving-metadata#project_and_instance
	// _metadata)).
	Metadata map[string]string `pulumi:"metadata"`
	// The Compute Engine network to be used for machine communications.
	// Cannot be specified with subnetwork. If neither `network` nor
	// `subnet` is specified, the "default" network of the project is
	// used, if it exists. A full URL or partial URI. Examples:
	// * `https://www.googleapis.com/compute/v1/projects/[projectId]/
	//   regions/global/default`
	// * `projects/[projectId]/regions/global/default`
	//   Runtimes are managed resources inside Google Infrastructure.
	//   Runtimes support the following network configurations:
	// * Google Managed Network (Network & subnet are empty)
	// * Consumer Project VPC (network & subnet are required). Requires
	//   configuring Private Service Access.
	// * Shared VPC (network & subnet are required). Requires
	//   configuring Private Service Access.
	Network *string `pulumi:"network"`
	// The type of vNIC to be used on this interface. This may be gVNIC
	// or VirtioNet.
	// Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.
	NicType *string `pulumi:"nicType"`
	// Reserved IP Range name is used for VPC Peering. The
	// subnetwork allocation will use the range *name* if it's assigned.
	ReservedIpRange *string `pulumi:"reservedIpRange"`
	// Shielded VM Instance configuration settings.
	// Structure is documented below.
	ShieldedInstanceConfig *RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfig `pulumi:"shieldedInstanceConfig"`
	// The Compute Engine subnetwork to be used for machine
	// communications. Cannot be specified with network. A full URL or
	// partial URI are valid. Examples:
	// * `https://www.googleapis.com/compute/v1/projects/[projectId]/
	//   regions/us-east1/subnetworks/sub0`
	// * `projects/[projectId]/regions/us-east1/subnetworks/sub0`
	Subnet *string `pulumi:"subnet"`
	// The Compute Engine tags to add to runtime (see [Tagging instances]
	// (https://cloud.google.com/compute/docs/
	// label-or-tag-resources#tags)).
	Tags []string `pulumi:"tags"`
	// (Output)
	// The zone where the virtual machine is located.
	Zone *string `pulumi:"zone"`
}

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfig added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfig struct {
	// Count of cores of this accelerator.
	CoreCount *int `pulumi:"coreCount"`
	// Accelerator model. For valid values, see
	// `https://cloud.google.com/vertex-ai/docs/workbench/reference/
	// rest/v1/projects.locations.runtimes#AcceleratorType`
	Type *string `pulumi:"type"`
}

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs struct {
	// Count of cores of this accelerator.
	CoreCount pulumi.IntPtrInput `pulumi:"coreCount"`
	// Accelerator model. For valid values, see
	// `https://cloud.google.com/vertex-ai/docs/workbench/reference/
	// rest/v1/projects.locations.runtimes#AcceleratorType`
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput() RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput
	ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput
}

RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs and RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigInput` via:

RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) CoreCount added in v6.4.0

Count of cores of this accelerator.

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigOutput) Type added in v6.4.0

Accelerator model. For valid values, see `https://cloud.google.com/vertex-ai/docs/workbench/reference/ rest/v1/projects.locations.runtimes#AcceleratorType`

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput
	ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput
}

RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs, RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtr and RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrInput` via:

        RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigArgs{...}

or:

        nil

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) CoreCount added in v6.4.0

Count of cores of this accelerator.

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrOutput) Type added in v6.4.0

Accelerator model. For valid values, see `https://cloud.google.com/vertex-ai/docs/workbench/reference/ rest/v1/projects.locations.runtimes#AcceleratorType`

type RuntimeVirtualMachineVirtualMachineConfigArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigArgs struct {
	// The Compute Engine accelerator configuration for this runtime.
	// Structure is documented below.
	AcceleratorConfig RuntimeVirtualMachineVirtualMachineConfigAcceleratorConfigPtrInput `pulumi:"acceleratorConfig"`
	// Use a list of container images to start the notebook instance.
	// Structure is documented below.
	ContainerImages RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayInput `pulumi:"containerImages"`
	// Data disk option configuration settings.
	// Structure is documented below.
	DataDisk RuntimeVirtualMachineVirtualMachineConfigDataDiskInput `pulumi:"dataDisk"`
	// Encryption settings for virtual machine data disk.
	// Structure is documented below.
	EncryptionConfig RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrInput `pulumi:"encryptionConfig"`
	// (Output)
	// The Compute Engine guest attributes. (see [Project and instance
	// guest attributes](https://cloud.google.com/compute/docs/
	// storing-retrieving-metadata#guest_attributes)).
	GuestAttributes pulumi.StringMapInput `pulumi:"guestAttributes"`
	// If true, runtime will only have internal IP addresses. By default,
	// runtimes are not restricted to internal IP addresses, and will
	// have ephemeral external IP addresses assigned to each vm. This
	// `internalIpOnly` restriction can only be enabled for subnetwork
	// enabled networks, and all dependencies must be configured to be
	// accessible without external IP addresses.
	InternalIpOnly pulumi.BoolPtrInput `pulumi:"internalIpOnly"`
	// The labels to associate with this runtime. Label **keys** must
	// contain 1 to 63 characters, and must conform to [RFC 1035]
	// (https://www.ietf.org/rfc/rfc1035.txt). Label **values** may be
	// empty, but, if present, must contain 1 to 63 characters, and must
	// conform to [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). No
	// more than 32 labels can be associated with a cluster.
	Labels pulumi.StringMapInput `pulumi:"labels"`
	// The Compute Engine machine type used for runtimes.
	MachineType pulumi.StringInput `pulumi:"machineType"`
	// The Compute Engine metadata entries to add to virtual machine.
	// (see [Project and instance metadata](https://cloud.google.com
	// /compute/docs/storing-retrieving-metadata#project_and_instance
	// _metadata)).
	Metadata pulumi.StringMapInput `pulumi:"metadata"`
	// The Compute Engine network to be used for machine communications.
	// Cannot be specified with subnetwork. If neither `network` nor
	// `subnet` is specified, the "default" network of the project is
	// used, if it exists. A full URL or partial URI. Examples:
	// * `https://www.googleapis.com/compute/v1/projects/[projectId]/
	//   regions/global/default`
	// * `projects/[projectId]/regions/global/default`
	//   Runtimes are managed resources inside Google Infrastructure.
	//   Runtimes support the following network configurations:
	// * Google Managed Network (Network & subnet are empty)
	// * Consumer Project VPC (network & subnet are required). Requires
	//   configuring Private Service Access.
	// * Shared VPC (network & subnet are required). Requires
	//   configuring Private Service Access.
	Network pulumi.StringPtrInput `pulumi:"network"`
	// The type of vNIC to be used on this interface. This may be gVNIC
	// or VirtioNet.
	// Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.
	NicType pulumi.StringPtrInput `pulumi:"nicType"`
	// Reserved IP Range name is used for VPC Peering. The
	// subnetwork allocation will use the range *name* if it's assigned.
	ReservedIpRange pulumi.StringPtrInput `pulumi:"reservedIpRange"`
	// Shielded VM Instance configuration settings.
	// Structure is documented below.
	ShieldedInstanceConfig RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrInput `pulumi:"shieldedInstanceConfig"`
	// The Compute Engine subnetwork to be used for machine
	// communications. Cannot be specified with network. A full URL or
	// partial URI are valid. Examples:
	// * `https://www.googleapis.com/compute/v1/projects/[projectId]/
	//   regions/us-east1/subnetworks/sub0`
	// * `projects/[projectId]/regions/us-east1/subnetworks/sub0`
	Subnet pulumi.StringPtrInput `pulumi:"subnet"`
	// The Compute Engine tags to add to runtime (see [Tagging instances]
	// (https://cloud.google.com/compute/docs/
	// label-or-tag-resources#tags)).
	Tags pulumi.StringArrayInput `pulumi:"tags"`
	// (Output)
	// The zone where the virtual machine is located.
	Zone pulumi.StringPtrInput `pulumi:"zone"`
}

func (RuntimeVirtualMachineVirtualMachineConfigArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigOutput added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigOutput() RuntimeVirtualMachineVirtualMachineConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigContainerImage added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImage struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository string `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag *string `pulumi:"tag"`
}

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs struct {
	// The path to the container image repository.
	// For example: gcr.io/{project_id}/{imageName}
	Repository pulumi.StringInput `pulumi:"repository"`
	// The tag of the container image. If not specified, this defaults to the latest tag.
	Tag pulumi.StringPtrInput `pulumi:"tag"`
}

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArray added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArray []RuntimeVirtualMachineVirtualMachineConfigContainerImageInput

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArray) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArray) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArray) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArray) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigContainerImageArray) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput() RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput
	ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput
}

RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigContainerImageArray and RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayInput` via:

RuntimeVirtualMachineVirtualMachineConfigContainerImageArray{ RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs{...} }

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput) Index added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigContainerImageArrayOutput

type RuntimeVirtualMachineVirtualMachineConfigContainerImageInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImageInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutput() RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput
	ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput
}

RuntimeVirtualMachineVirtualMachineConfigContainerImageInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs and RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigContainerImageInput` via:

RuntimeVirtualMachineVirtualMachineConfigContainerImageArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) Repository added in v6.4.0

The path to the container image repository. For example: gcr.io/{project_id}/{imageName}

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) Tag added in v6.4.0

The tag of the container image. If not specified, this defaults to the latest tag.

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput) ToRuntimeVirtualMachineVirtualMachineConfigContainerImageOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigContainerImageOutput

type RuntimeVirtualMachineVirtualMachineConfigDataDisk added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDisk struct {
	// (Output)
	// Optional. Specifies whether the disk will be auto-deleted
	// when the instance is deleted (but not when the disk is
	// detached from the instance).
	AutoDelete *bool `pulumi:"autoDelete"`
	// (Output)
	// Optional. Indicates that this is a boot disk. The virtual
	// machine will use the first partition of the disk for its
	// root filesystem.
	Boot *bool `pulumi:"boot"`
	// (Output)
	// Optional. Specifies a unique device name of your choice
	// that is reflected into the /dev/disk/by-id/google-* tree
	// of a Linux operating system running within the instance.
	// This name can be used to reference the device for mounting,
	// resizing, and so on, from within the instance.
	// If not specified, the server chooses a default device name
	// to apply to this disk, in the form persistent-disk-x, where
	// x is a number assigned by Google Compute Engine. This field
	// is only applicable for persistent disks.
	DeviceName *string `pulumi:"deviceName"`
	// (Output)
	// Indicates a list of features to enable on the guest operating
	// system. Applicable only for bootable images. To see a list of
	// available features, read `https://cloud.google.com/compute/docs/
	// images/create-delete-deprecate-private-images#guest-os-features`
	// options. “
	GuestOsFeatures []string `pulumi:"guestOsFeatures"`
	// (Output)
	// Output only. A zero-based index to this disk, where 0 is
	// reserved for the boot disk. If you have many disks attached
	// to an instance, each disk would have a unique index number.
	Index *int `pulumi:"index"`
	// Input only. Specifies the parameters for a new disk that will
	// be created alongside the new instance. Use initialization
	// parameters to create boot disks or local SSDs attached to the
	// new instance. This property is mutually exclusive with the
	// source property; you can only define one or the other, but not
	// both.
	// Structure is documented below.
	InitializeParams *RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParams `pulumi:"initializeParams"`
	// "Specifies the disk interface to use for attaching this disk,
	// which is either SCSI or NVME. The default is SCSI. Persistent
	// disks must always use SCSI and the request will fail if you attempt
	// to attach a persistent disk in any other format than SCSI. Local SSDs
	// can use either NVME or SCSI. For performance characteristics of SCSI
	// over NVMe, see Local SSD performance. Valid values: * NVME * SCSI".
	Interface *string `pulumi:"interface"`
	// (Output)
	// Type of the resource. Always compute#attachedDisk for attached
	// disks.
	Kind *string `pulumi:"kind"`
	// (Output)
	// Output only. Any valid publicly visible licenses.
	Licenses []string `pulumi:"licenses"`
	// The mode in which to attach this disk, either READ_WRITE
	// or READ_ONLY. If not specified, the default is to attach
	// the disk in READ_WRITE mode.
	Mode *string `pulumi:"mode"`
	// Specifies a valid partial or full URL to an existing
	// Persistent Disk resource.
	Source *string `pulumi:"source"`
	// Specifies the type of the disk, either SCRATCH or PERSISTENT.
	// If not specified, the default is PERSISTENT.
	Type *string `pulumi:"type"`
}

type RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs struct {
	// (Output)
	// Optional. Specifies whether the disk will be auto-deleted
	// when the instance is deleted (but not when the disk is
	// detached from the instance).
	AutoDelete pulumi.BoolPtrInput `pulumi:"autoDelete"`
	// (Output)
	// Optional. Indicates that this is a boot disk. The virtual
	// machine will use the first partition of the disk for its
	// root filesystem.
	Boot pulumi.BoolPtrInput `pulumi:"boot"`
	// (Output)
	// Optional. Specifies a unique device name of your choice
	// that is reflected into the /dev/disk/by-id/google-* tree
	// of a Linux operating system running within the instance.
	// This name can be used to reference the device for mounting,
	// resizing, and so on, from within the instance.
	// If not specified, the server chooses a default device name
	// to apply to this disk, in the form persistent-disk-x, where
	// x is a number assigned by Google Compute Engine. This field
	// is only applicable for persistent disks.
	DeviceName pulumi.StringPtrInput `pulumi:"deviceName"`
	// (Output)
	// Indicates a list of features to enable on the guest operating
	// system. Applicable only for bootable images. To see a list of
	// available features, read `https://cloud.google.com/compute/docs/
	// images/create-delete-deprecate-private-images#guest-os-features`
	// options. “
	GuestOsFeatures pulumi.StringArrayInput `pulumi:"guestOsFeatures"`
	// (Output)
	// Output only. A zero-based index to this disk, where 0 is
	// reserved for the boot disk. If you have many disks attached
	// to an instance, each disk would have a unique index number.
	Index pulumi.IntPtrInput `pulumi:"index"`
	// Input only. Specifies the parameters for a new disk that will
	// be created alongside the new instance. Use initialization
	// parameters to create boot disks or local SSDs attached to the
	// new instance. This property is mutually exclusive with the
	// source property; you can only define one or the other, but not
	// both.
	// Structure is documented below.
	InitializeParams RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrInput `pulumi:"initializeParams"`
	// "Specifies the disk interface to use for attaching this disk,
	// which is either SCSI or NVME. The default is SCSI. Persistent
	// disks must always use SCSI and the request will fail if you attempt
	// to attach a persistent disk in any other format than SCSI. Local SSDs
	// can use either NVME or SCSI. For performance characteristics of SCSI
	// over NVMe, see Local SSD performance. Valid values: * NVME * SCSI".
	Interface pulumi.StringPtrInput `pulumi:"interface"`
	// (Output)
	// Type of the resource. Always compute#attachedDisk for attached
	// disks.
	Kind pulumi.StringPtrInput `pulumi:"kind"`
	// (Output)
	// Output only. Any valid publicly visible licenses.
	Licenses pulumi.StringArrayInput `pulumi:"licenses"`
	// The mode in which to attach this disk, either READ_WRITE
	// or READ_ONLY. If not specified, the default is to attach
	// the disk in READ_WRITE mode.
	Mode pulumi.StringPtrInput `pulumi:"mode"`
	// Specifies a valid partial or full URL to an existing
	// Persistent Disk resource.
	Source pulumi.StringPtrInput `pulumi:"source"`
	// Specifies the type of the disk, either SCRATCH or PERSISTENT.
	// If not specified, the default is PERSISTENT.
	Type pulumi.StringPtrInput `pulumi:"type"`
}

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutput added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutput() RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput() RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParams added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParams struct {
	// Provide this property when creating the disk.
	Description *string `pulumi:"description"`
	// Specifies the disk name. If not specified, the default is
	// to use the name of the instance. If the disk with the
	// instance name exists already in the given zone/region, a
	// new name will be automatically generated.
	DiskName *string `pulumi:"diskName"`
	// Specifies the size of the disk in base-2 GB. If not
	// specified, the disk will be the same size as the image
	// (usually 10GB). If specified, the size must be equal to
	// or larger than 10GB. Default 100 GB.
	DiskSizeGb *int `pulumi:"diskSizeGb"`
	// The type of the boot disk attached to this runtime,
	// defaults to standard persistent disk. For valid values,
	// see `https://cloud.google.com/vertex-ai/docs/workbench/
	// reference/rest/v1/projects.locations.runtimes#disktype`
	DiskType *string `pulumi:"diskType"`
	// Labels to apply to this disk. These can be later modified
	// by the disks.setLabels method. This field is only
	// applicable for persistent disks.
	Labels map[string]string `pulumi:"labels"`
}

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs struct {
	// Provide this property when creating the disk.
	Description pulumi.StringPtrInput `pulumi:"description"`
	// Specifies the disk name. If not specified, the default is
	// to use the name of the instance. If the disk with the
	// instance name exists already in the given zone/region, a
	// new name will be automatically generated.
	DiskName pulumi.StringPtrInput `pulumi:"diskName"`
	// Specifies the size of the disk in base-2 GB. If not
	// specified, the disk will be the same size as the image
	// (usually 10GB). If specified, the size must be equal to
	// or larger than 10GB. Default 100 GB.
	DiskSizeGb pulumi.IntPtrInput `pulumi:"diskSizeGb"`
	// The type of the boot disk attached to this runtime,
	// defaults to standard persistent disk. For valid values,
	// see `https://cloud.google.com/vertex-ai/docs/workbench/
	// reference/rest/v1/projects.locations.runtimes#disktype`
	DiskType pulumi.StringPtrInput `pulumi:"diskType"`
	// Labels to apply to this disk. These can be later modified
	// by the disks.setLabels method. This field is only
	// applicable for persistent disks.
	Labels pulumi.StringMapInput `pulumi:"labels"`
}

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput() RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput
	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput
}

RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs and RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsInput` via:

RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) Description added in v6.4.0

Provide this property when creating the disk.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) DiskName added in v6.4.0

Specifies the disk name. If not specified, the default is to use the name of the instance. If the disk with the instance name exists already in the given zone/region, a new name will be automatically generated.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) DiskSizeGb added in v6.4.0

Specifies the size of the disk in base-2 GB. If not specified, the disk will be the same size as the image (usually 10GB). If specified, the size must be equal to or larger than 10GB. Default 100 GB.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) DiskType added in v6.4.0

The type of the boot disk attached to this runtime, defaults to standard persistent disk. For valid values, see `https://cloud.google.com/vertex-ai/docs/workbench/ reference/rest/v1/projects.locations.runtimes#disktype`

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) Labels added in v6.4.0

Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput() RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput
	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput
}

RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs, RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtr and RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrInput` via:

        RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsArgs{...}

or:

        nil

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) Description added in v6.4.0

Provide this property when creating the disk.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) DiskName added in v6.4.0

Specifies the disk name. If not specified, the default is to use the name of the instance. If the disk with the instance name exists already in the given zone/region, a new name will be automatically generated.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) DiskSizeGb added in v6.4.0

Specifies the size of the disk in base-2 GB. If not specified, the disk will be the same size as the image (usually 10GB). If specified, the size must be equal to or larger than 10GB. Default 100 GB.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) DiskType added in v6.4.0

The type of the boot disk attached to this runtime, defaults to standard persistent disk. For valid values, see `https://cloud.google.com/vertex-ai/docs/workbench/ reference/rest/v1/projects.locations.runtimes#disktype`

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) Labels added in v6.4.0

Labels to apply to this disk. These can be later modified by the disks.setLabels method. This field is only applicable for persistent disks.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskInitializeParamsPtrOutputWithContext added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutput() RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput
	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput
}

RuntimeVirtualMachineVirtualMachineConfigDataDiskInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs and RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigDataDiskInput` via:

RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) AutoDelete added in v6.4.0

(Output) Optional. Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Boot added in v6.4.0

(Output) Optional. Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) DeviceName added in v6.4.0

(Output) Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) GuestOsFeatures added in v6.4.0

(Output) Indicates a list of features to enable on the guest operating system. Applicable only for bootable images. To see a list of available features, read `https://cloud.google.com/compute/docs/ images/create-delete-deprecate-private-images#guest-os-features` options. “

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Index added in v6.4.0

(Output) Output only. A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) InitializeParams added in v6.4.0

Input only. Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. This property is mutually exclusive with the source property; you can only define one or the other, but not both. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Interface added in v6.4.0

"Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance. Valid values: * NVME * SCSI".

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Kind added in v6.4.0

(Output) Type of the resource. Always compute#attachedDisk for attached disks.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Licenses added in v6.4.0

(Output) Output only. Any valid publicly visible licenses.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Mode added in v6.4.0

The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Source added in v6.4.0

Specifies a valid partial or full URL to an existing Persistent Disk resource.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskOutput) Type added in v6.4.0

Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.

type RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput() RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput
	ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput
}

RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs, RuntimeVirtualMachineVirtualMachineConfigDataDiskPtr and RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrInput` via:

        RuntimeVirtualMachineVirtualMachineConfigDataDiskArgs{...}

or:

        nil

type RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) AutoDelete added in v6.4.0

(Output) Optional. Specifies whether the disk will be auto-deleted when the instance is deleted (but not when the disk is detached from the instance).

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Boot added in v6.4.0

(Output) Optional. Indicates that this is a boot disk. The virtual machine will use the first partition of the disk for its root filesystem.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) DeviceName added in v6.4.0

(Output) Optional. Specifies a unique device name of your choice that is reflected into the /dev/disk/by-id/google-* tree of a Linux operating system running within the instance. This name can be used to reference the device for mounting, resizing, and so on, from within the instance. If not specified, the server chooses a default device name to apply to this disk, in the form persistent-disk-x, where x is a number assigned by Google Compute Engine. This field is only applicable for persistent disks.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) GuestOsFeatures added in v6.4.0

(Output) Indicates a list of features to enable on the guest operating system. Applicable only for bootable images. To see a list of available features, read `https://cloud.google.com/compute/docs/ images/create-delete-deprecate-private-images#guest-os-features` options. “

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Index added in v6.4.0

(Output) Output only. A zero-based index to this disk, where 0 is reserved for the boot disk. If you have many disks attached to an instance, each disk would have a unique index number.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) InitializeParams added in v6.4.0

Input only. Specifies the parameters for a new disk that will be created alongside the new instance. Use initialization parameters to create boot disks or local SSDs attached to the new instance. This property is mutually exclusive with the source property; you can only define one or the other, but not both. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Interface added in v6.4.0

"Specifies the disk interface to use for attaching this disk, which is either SCSI or NVME. The default is SCSI. Persistent disks must always use SCSI and the request will fail if you attempt to attach a persistent disk in any other format than SCSI. Local SSDs can use either NVME or SCSI. For performance characteristics of SCSI over NVMe, see Local SSD performance. Valid values: * NVME * SCSI".

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Kind added in v6.4.0

(Output) Type of the resource. Always compute#attachedDisk for attached disks.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Licenses added in v6.4.0

(Output) Output only. Any valid publicly visible licenses.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Mode added in v6.4.0

The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If not specified, the default is to attach the disk in READ_WRITE mode.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Source added in v6.4.0

Specifies a valid partial or full URL to an existing Persistent Disk resource.

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigDataDiskPtrOutput) Type added in v6.4.0

Specifies the type of the disk, either SCRATCH or PERSISTENT. If not specified, the default is PERSISTENT.

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfig added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfig struct {
	// The Cloud KMS resource identifier of the customer-managed
	// encryption key used to protect a resource, such as a disks.
	// It has the following format:
	// `projects/{PROJECT_ID}/locations/{REGION}/keyRings/
	// {KEY_RING_NAME}/cryptoKeys/{KEY_NAME}`
	KmsKey *string `pulumi:"kmsKey"`
}

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs struct {
	// The Cloud KMS resource identifier of the customer-managed
	// encryption key used to protect a resource, such as a disks.
	// It has the following format:
	// `projects/{PROJECT_ID}/locations/{REGION}/keyRings/
	// {KEY_RING_NAME}/cryptoKeys/{KEY_NAME}`
	KmsKey pulumi.StringPtrInput `pulumi:"kmsKey"`
}

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput() RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput
	ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput
}

RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs and RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigInput` via:

RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) KmsKey added in v6.4.0

The Cloud KMS resource identifier of the customer-managed encryption key used to protect a resource, such as a disks. It has the following format: `projects/{PROJECT_ID}/locations/{REGION}/keyRings/ {KEY_RING_NAME}/cryptoKeys/{KEY_NAME}`

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput
	ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput
}

RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs, RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtr and RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrInput` via:

        RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigArgs{...}

or:

        nil

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) KmsKey added in v6.4.0

The Cloud KMS resource identifier of the customer-managed encryption key used to protect a resource, such as a disks. It has the following format: `projects/{PROJECT_ID}/locations/{REGION}/keyRings/ {KEY_RING_NAME}/cryptoKeys/{KEY_NAME}`

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigEncryptionConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigOutput() RuntimeVirtualMachineVirtualMachineConfigOutput
	ToRuntimeVirtualMachineVirtualMachineConfigOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigOutput
}

RuntimeVirtualMachineVirtualMachineConfigInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigArgs and RuntimeVirtualMachineVirtualMachineConfigOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigInput` via:

RuntimeVirtualMachineVirtualMachineConfigArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigOutput) AcceleratorConfig added in v6.4.0

The Compute Engine accelerator configuration for this runtime. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ContainerImages added in v6.4.0

Use a list of container images to start the notebook instance. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) DataDisk added in v6.4.0

Data disk option configuration settings. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigOutput) EncryptionConfig added in v6.4.0

Encryption settings for virtual machine data disk. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) GuestAttributes added in v6.4.0

(Output) The Compute Engine guest attributes. (see [Project and instance guest attributes](https://cloud.google.com/compute/docs/ storing-retrieving-metadata#guest_attributes)).

func (RuntimeVirtualMachineVirtualMachineConfigOutput) InternalIpOnly added in v6.4.0

If true, runtime will only have internal IP addresses. By default, runtimes are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each vm. This `internalIpOnly` restriction can only be enabled for subnetwork enabled networks, and all dependencies must be configured to be accessible without external IP addresses.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) Labels added in v6.4.0

The labels to associate with this runtime. Label **keys** must contain 1 to 63 characters, and must conform to [RFC 1035] (https://www.ietf.org/rfc/rfc1035.txt). Label **values** may be empty, but, if present, must contain 1 to 63 characters, and must conform to [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) MachineType added in v6.4.0

The Compute Engine machine type used for runtimes.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) Metadata added in v6.4.0

The Compute Engine metadata entries to add to virtual machine. (see [Project and instance metadata](https://cloud.google.com /compute/docs/storing-retrieving-metadata#project_and_instance _metadata)).

func (RuntimeVirtualMachineVirtualMachineConfigOutput) Network added in v6.4.0

The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork. If neither `network` nor `subnet` is specified, the "default" network of the project is used, if it exists. A full URL or partial URI. Examples:

  • `https://www.googleapis.com/compute/v1/projects/[projectId]/ regions/global/default`
  • `projects/[projectId]/regions/global/default` Runtimes are managed resources inside Google Infrastructure. Runtimes support the following network configurations:
  • Google Managed Network (Network & subnet are empty)
  • Consumer Project VPC (network & subnet are required). Requires configuring Private Service Access.
  • Shared VPC (network & subnet are required). Requires configuring Private Service Access.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) NicType added in v6.4.0

The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ReservedIpRange added in v6.34.0

Reserved IP Range name is used for VPC Peering. The subnetwork allocation will use the range *name* if it's assigned.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ShieldedInstanceConfig added in v6.4.0

Shielded VM Instance configuration settings. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigOutput) Subnet added in v6.4.0

The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network. A full URL or partial URI are valid. Examples:

func (RuntimeVirtualMachineVirtualMachineConfigOutput) Tags added in v6.4.0

The Compute Engine tags to add to runtime (see [Tagging instances] (https://cloud.google.com/compute/docs/ label-or-tag-resources#tags)).

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigOutput added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigOutput() RuntimeVirtualMachineVirtualMachineConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigOutput) Zone added in v6.4.0

(Output) The zone where the virtual machine is located.

type RuntimeVirtualMachineVirtualMachineConfigPtrInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigPtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigPtrOutput
	ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigPtrOutput
}

RuntimeVirtualMachineVirtualMachineConfigPtrInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigArgs, RuntimeVirtualMachineVirtualMachineConfigPtr and RuntimeVirtualMachineVirtualMachineConfigPtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigPtrInput` via:

        RuntimeVirtualMachineVirtualMachineConfigArgs{...}

or:

        nil

type RuntimeVirtualMachineVirtualMachineConfigPtrOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigPtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) AcceleratorConfig added in v6.4.0

The Compute Engine accelerator configuration for this runtime. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ContainerImages added in v6.4.0

Use a list of container images to start the notebook instance. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) DataDisk added in v6.4.0

Data disk option configuration settings. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) EncryptionConfig added in v6.4.0

Encryption settings for virtual machine data disk. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) GuestAttributes added in v6.4.0

(Output) The Compute Engine guest attributes. (see [Project and instance guest attributes](https://cloud.google.com/compute/docs/ storing-retrieving-metadata#guest_attributes)).

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) InternalIpOnly added in v6.4.0

If true, runtime will only have internal IP addresses. By default, runtimes are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each vm. This `internalIpOnly` restriction can only be enabled for subnetwork enabled networks, and all dependencies must be configured to be accessible without external IP addresses.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Labels added in v6.4.0

The labels to associate with this runtime. Label **keys** must contain 1 to 63 characters, and must conform to [RFC 1035] (https://www.ietf.org/rfc/rfc1035.txt). Label **values** may be empty, but, if present, must contain 1 to 63 characters, and must conform to [RFC 1035](https://www.ietf.org/rfc/rfc1035.txt). No more than 32 labels can be associated with a cluster.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) MachineType added in v6.4.0

The Compute Engine machine type used for runtimes.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Metadata added in v6.4.0

The Compute Engine metadata entries to add to virtual machine. (see [Project and instance metadata](https://cloud.google.com /compute/docs/storing-retrieving-metadata#project_and_instance _metadata)).

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Network added in v6.4.0

The Compute Engine network to be used for machine communications. Cannot be specified with subnetwork. If neither `network` nor `subnet` is specified, the "default" network of the project is used, if it exists. A full URL or partial URI. Examples:

  • `https://www.googleapis.com/compute/v1/projects/[projectId]/ regions/global/default`
  • `projects/[projectId]/regions/global/default` Runtimes are managed resources inside Google Infrastructure. Runtimes support the following network configurations:
  • Google Managed Network (Network & subnet are empty)
  • Consumer Project VPC (network & subnet are required). Requires configuring Private Service Access.
  • Shared VPC (network & subnet are required). Requires configuring Private Service Access.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) NicType added in v6.4.0

The type of vNIC to be used on this interface. This may be gVNIC or VirtioNet. Possible values are: `UNSPECIFIED_NIC_TYPE`, `VIRTIO_NET`, `GVNIC`.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ReservedIpRange added in v6.34.0

Reserved IP Range name is used for VPC Peering. The subnetwork allocation will use the range *name* if it's assigned.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ShieldedInstanceConfig added in v6.4.0

Shielded VM Instance configuration settings. Structure is documented below.

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Subnet added in v6.4.0

The Compute Engine subnetwork to be used for machine communications. Cannot be specified with network. A full URL or partial URI are valid. Examples:

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Tags added in v6.4.0

The Compute Engine tags to add to runtime (see [Tagging instances] (https://cloud.google.com/compute/docs/ label-or-tag-resources#tags)).

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigPtrOutput

func (RuntimeVirtualMachineVirtualMachineConfigPtrOutput) Zone added in v6.4.0

(Output) The zone where the virtual machine is located.

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfig added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfig struct {
	// Defines whether the instance has integrity monitoring enabled.
	// Enables monitoring and attestation of the boot integrity of
	// the instance. The attestation is performed against the
	// integrity policy baseline. This baseline is initially derived
	// from the implicitly trusted boot image when the instance is
	// created. Enabled by default.
	EnableIntegrityMonitoring *bool `pulumi:"enableIntegrityMonitoring"`
	// Defines whether the 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.
	EnableSecureBoot *bool `pulumi:"enableSecureBoot"`
	// Defines whether the instance has the vTPM enabled. Enabled by
	// default.
	EnableVtpm *bool `pulumi:"enableVtpm"`
}

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs struct {
	// Defines whether the instance has integrity monitoring enabled.
	// Enables monitoring and attestation of the boot integrity of
	// the instance. The attestation is performed against the
	// integrity policy baseline. This baseline is initially derived
	// from the implicitly trusted boot image when the instance is
	// created. Enabled by default.
	EnableIntegrityMonitoring pulumi.BoolPtrInput `pulumi:"enableIntegrityMonitoring"`
	// Defines whether the 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.
	EnableSecureBoot pulumi.BoolPtrInput `pulumi:"enableSecureBoot"`
	// Defines whether the instance has the vTPM enabled. Enabled by
	// default.
	EnableVtpm pulumi.BoolPtrInput `pulumi:"enableVtpm"`
}

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutputWithContext added in v6.4.0

func (i RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput() RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput
	ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput
}

RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs and RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigInput` via:

RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs{...}

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) EnableIntegrityMonitoring added in v6.4.0

Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the instance is created. Enabled by default.

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) EnableSecureBoot added in v6.4.0

Defines whether the 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.

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) EnableVtpm added in v6.4.0

Defines whether the instance has the vTPM enabled. Enabled by default.

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutputWithContext added in v6.4.0

func (o RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutputWithContext(ctx context.Context) RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrInput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrInput interface {
	pulumi.Input

	ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput() RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput
	ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutputWithContext(context.Context) RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput
}

RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrInput is an input type that accepts RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs, RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtr and RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput values. You can construct a concrete instance of `RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrInput` via:

        RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigArgs{...}

or:

        nil

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput added in v6.4.0

type RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput struct{ *pulumi.OutputState }

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) Elem added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) ElementType added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) EnableIntegrityMonitoring added in v6.4.0

Defines whether the instance has integrity monitoring enabled. Enables monitoring and attestation of the boot integrity of the instance. The attestation is performed against the integrity policy baseline. This baseline is initially derived from the implicitly trusted boot image when the instance is created. Enabled by default.

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) EnableSecureBoot added in v6.4.0

Defines whether the 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.

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) EnableVtpm added in v6.4.0

Defines whether the instance has the vTPM enabled. Enabled by default.

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) ToOutput added in v6.65.1

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput added in v6.4.0

func (RuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutput) ToRuntimeVirtualMachineVirtualMachineConfigShieldedInstanceConfigPtrOutputWithContext added in v6.4.0

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL