compute

package
v0.18.10 Latest Latest
Warning

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

Go to latest
Published: Jul 3, 2019 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Address

type Address struct {
	// contains filtered or unexported fields
}

Represents an Address resource.

Each virtual machine instance has an ephemeral internal IP address and, optionally, an external IP address. To communicate between instances on the same network, you can use an instance's internal IP address. To communicate with the Internet and instances outside of the same network, you must specify the instance's external IP address.

Internal IP addresses are ephemeral and only belong to an instance for the lifetime of the instance; if the instance is deleted and recreated, the instance is assigned a new internal IP address, either by Compute Engine or by you. External IP addresses can be either ephemeral or static.

To get more information about Address, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/beta/addresses) * How-to Guides

func GetAddress

func GetAddress(ctx *pulumi.Context,
	name string, id pulumi.ID, state *AddressState, opts ...pulumi.ResourceOpt) (*Address, error)

GetAddress gets an existing Address 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 NewAddress

func NewAddress(ctx *pulumi.Context,
	name string, args *AddressArgs, opts ...pulumi.ResourceOpt) (*Address, error)

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

func (*Address) Address

func (r *Address) Address() *pulumi.StringOutput

The IP of the created resource.

func (*Address) AddressType

func (r *Address) AddressType() *pulumi.StringOutput

func (*Address) CreationTimestamp added in v0.15.0

func (r *Address) CreationTimestamp() *pulumi.StringOutput

func (*Address) Description added in v0.15.0

func (r *Address) Description() *pulumi.StringOutput

func (*Address) ID

func (r *Address) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Address) LabelFingerprint added in v0.16.0

func (r *Address) LabelFingerprint() *pulumi.StringOutput

func (*Address) Labels added in v0.16.0

func (r *Address) Labels() *pulumi.MapOutput

func (*Address) Name

func (r *Address) Name() *pulumi.StringOutput

func (*Address) NetworkTier added in v0.15.0

func (r *Address) NetworkTier() *pulumi.StringOutput

func (*Address) Project

func (r *Address) Project() *pulumi.StringOutput

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

func (*Address) Region

func (r *Address) Region() *pulumi.StringOutput
func (r *Address) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Address) Subnetwork

func (r *Address) Subnetwork() *pulumi.StringOutput

func (*Address) URN

func (r *Address) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*Address) Users added in v0.15.0

func (r *Address) Users() *pulumi.ArrayOutput

type AddressArgs

type AddressArgs struct {
	// The IP of the created resource.
	Address     interface{}
	AddressType interface{}
	Description interface{}
	Labels      interface{}
	Name        interface{}
	NetworkTier interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project    interface{}
	Region     interface{}
	Subnetwork interface{}
}

The set of arguments for constructing a Address resource.

type AddressState

type AddressState struct {
	// The IP of the created resource.
	Address           interface{}
	AddressType       interface{}
	CreationTimestamp interface{}
	Description       interface{}
	LabelFingerprint  interface{}
	Labels            interface{}
	Name              interface{}
	NetworkTier       interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink   interface{}
	Subnetwork interface{}
	Users      interface{}
}

Input properties used for looking up and filtering Address resources.

type AttachedDisk added in v0.16.0

type AttachedDisk struct {
	// contains filtered or unexported fields
}

Persistent disks can be attached to a compute instance using [the `attached_disk` section within the compute instance configuration](https://www.terraform.io/docs/providers/google/r/compute_instance.html#attached_disk). However there may be situations where managing the attached disks via the compute instance config isn't preferable or possible, such as attaching dynamic numbers of disks using the `count` variable.

To get more information about attaching disks, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/instances/attachDisk) * [Resource: google_compute_disk](https://www.terraform.io/docs/providers/google/r/compute_disk.html) * How-to Guides

**Note:** When using `compute_attached_disk` you **must** use `lifecycle.ignore_changes = ["attached_disk"]` on the `compute_instance` resource that has the disks attached. Otherwise the two resources will fight for control of the attached disk block.

func GetAttachedDisk added in v0.16.0

func GetAttachedDisk(ctx *pulumi.Context,
	name string, id pulumi.ID, state *AttachedDiskState, opts ...pulumi.ResourceOpt) (*AttachedDisk, error)

GetAttachedDisk gets an existing AttachedDisk 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 NewAttachedDisk added in v0.16.0

func NewAttachedDisk(ctx *pulumi.Context,
	name string, args *AttachedDiskArgs, opts ...pulumi.ResourceOpt) (*AttachedDisk, error)

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

func (*AttachedDisk) DeviceName added in v0.16.0

func (r *AttachedDisk) DeviceName() *pulumi.StringOutput

func (*AttachedDisk) Disk added in v0.16.0

func (r *AttachedDisk) Disk() *pulumi.StringOutput

func (*AttachedDisk) ID added in v0.16.0

func (r *AttachedDisk) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*AttachedDisk) Instance added in v0.16.0

func (r *AttachedDisk) Instance() *pulumi.StringOutput

func (*AttachedDisk) Mode added in v0.16.0

func (r *AttachedDisk) Mode() *pulumi.StringOutput

func (*AttachedDisk) Project added in v0.16.0

func (r *AttachedDisk) Project() *pulumi.StringOutput

func (*AttachedDisk) URN added in v0.16.0

func (r *AttachedDisk) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*AttachedDisk) Zone added in v0.16.0

func (r *AttachedDisk) Zone() *pulumi.StringOutput

type AttachedDiskArgs added in v0.16.0

type AttachedDiskArgs struct {
	DeviceName interface{}
	Disk       interface{}
	Instance   interface{}
	Mode       interface{}
	Project    interface{}
	Zone       interface{}
}

The set of arguments for constructing a AttachedDisk resource.

type AttachedDiskState added in v0.16.0

type AttachedDiskState struct {
	DeviceName interface{}
	Disk       interface{}
	Instance   interface{}
	Mode       interface{}
	Project    interface{}
	Zone       interface{}
}

Input properties used for looking up and filtering AttachedDisk resources.

type Autoscalar

type Autoscalar struct {
	// contains filtered or unexported fields
}

Represents an Autoscaler resource.

Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define.

To get more information about Autoscaler, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/autoscalers) * How-to Guides

func GetAutoscalar

func GetAutoscalar(ctx *pulumi.Context,
	name string, id pulumi.ID, state *AutoscalarState, opts ...pulumi.ResourceOpt) (*Autoscalar, error)

GetAutoscalar gets an existing Autoscalar 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 NewAutoscalar

func NewAutoscalar(ctx *pulumi.Context,
	name string, args *AutoscalarArgs, opts ...pulumi.ResourceOpt) (*Autoscalar, error)

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

func (*Autoscalar) AutoscalingPolicy

func (r *Autoscalar) AutoscalingPolicy() *pulumi.Output

func (*Autoscalar) CreationTimestamp added in v0.15.0

func (r *Autoscalar) CreationTimestamp() *pulumi.StringOutput

func (*Autoscalar) Description

func (r *Autoscalar) Description() *pulumi.StringOutput

func (*Autoscalar) ID

func (r *Autoscalar) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Autoscalar) Name

func (r *Autoscalar) Name() *pulumi.StringOutput

func (*Autoscalar) Project

func (r *Autoscalar) Project() *pulumi.StringOutput
func (r *Autoscalar) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Autoscalar) Target

func (r *Autoscalar) Target() *pulumi.StringOutput

func (*Autoscalar) URN

func (r *Autoscalar) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*Autoscalar) Zone

func (r *Autoscalar) Zone() *pulumi.StringOutput

type AutoscalarArgs

type AutoscalarArgs struct {
	AutoscalingPolicy interface{}
	Description       interface{}
	Name              interface{}
	Project           interface{}
	Target            interface{}
	Zone              interface{}
}

The set of arguments for constructing a Autoscalar resource.

type AutoscalarState

type AutoscalarState struct {
	AutoscalingPolicy interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	Project           interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Target   interface{}
	Zone     interface{}
}

Input properties used for looking up and filtering Autoscalar resources.

type BackendBucket

type BackendBucket struct {
	// contains filtered or unexported fields
}

Backend buckets allow you to use Google Cloud Storage buckets with HTTP(S) load balancing.

An HTTP(S) load balancer can direct traffic to specified URLs to a backend bucket rather than a backend service. It can send requests for static content to a Cloud Storage bucket and requests for dynamic content a virtual machine instance.

To get more information about BackendBucket, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/backendBuckets) * How-to Guides

func GetBackendBucket

func GetBackendBucket(ctx *pulumi.Context,
	name string, id pulumi.ID, state *BackendBucketState, opts ...pulumi.ResourceOpt) (*BackendBucket, error)

GetBackendBucket gets an existing BackendBucket 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 NewBackendBucket

func NewBackendBucket(ctx *pulumi.Context,
	name string, args *BackendBucketArgs, opts ...pulumi.ResourceOpt) (*BackendBucket, error)

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

func (*BackendBucket) BucketName

func (r *BackendBucket) BucketName() *pulumi.StringOutput

func (*BackendBucket) CdnPolicy added in v0.18.5

func (r *BackendBucket) CdnPolicy() *pulumi.Output

func (*BackendBucket) CreationTimestamp

func (r *BackendBucket) CreationTimestamp() *pulumi.StringOutput

func (*BackendBucket) Description

func (r *BackendBucket) Description() *pulumi.StringOutput

func (*BackendBucket) EnableCdn

func (r *BackendBucket) EnableCdn() *pulumi.BoolOutput

func (*BackendBucket) ID

func (r *BackendBucket) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*BackendBucket) Name

func (r *BackendBucket) Name() *pulumi.StringOutput

func (*BackendBucket) Project

func (r *BackendBucket) Project() *pulumi.StringOutput

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

func (r *BackendBucket) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*BackendBucket) URN

func (r *BackendBucket) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type BackendBucketArgs

type BackendBucketArgs struct {
	BucketName  interface{}
	CdnPolicy   interface{}
	Description interface{}
	EnableCdn   interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
}

The set of arguments for constructing a BackendBucket resource.

type BackendBucketState

type BackendBucketState struct {
	BucketName        interface{}
	CdnPolicy         interface{}
	CreationTimestamp interface{}
	Description       interface{}
	EnableCdn         interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering BackendBucket resources.

type BackendService

type BackendService struct {
	// contains filtered or unexported fields
}

A Backend Service defines a group of virtual machines that will serve traffic for load balancing. This resource is a global backend service, appropriate for external load balancing or self-managed internal load balancing. For managed internal load balancing, use a regional backend service instead.

Currently self-managed internal load balancing is only available in beta.

To get more information about BackendService, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/backendServices) * How-to Guides

func GetBackendService

func GetBackendService(ctx *pulumi.Context,
	name string, id pulumi.ID, state *BackendServiceState, opts ...pulumi.ResourceOpt) (*BackendService, error)

GetBackendService gets an existing BackendService 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 NewBackendService

func NewBackendService(ctx *pulumi.Context,
	name string, args *BackendServiceArgs, opts ...pulumi.ResourceOpt) (*BackendService, error)

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

func (*BackendService) AffinityCookieTtlSec added in v0.18.0

func (r *BackendService) AffinityCookieTtlSec() *pulumi.IntOutput

func (*BackendService) Backends

func (r *BackendService) Backends() *pulumi.ArrayOutput

func (*BackendService) CdnPolicy

func (r *BackendService) CdnPolicy() *pulumi.Output

func (*BackendService) ConnectionDrainingTimeoutSec

func (r *BackendService) ConnectionDrainingTimeoutSec() *pulumi.IntOutput

func (*BackendService) CreationTimestamp added in v0.18.5

func (r *BackendService) CreationTimestamp() *pulumi.StringOutput

func (*BackendService) CustomRequestHeaders added in v0.15.0

func (r *BackendService) CustomRequestHeaders() *pulumi.ArrayOutput

func (*BackendService) Description

func (r *BackendService) Description() *pulumi.StringOutput

func (*BackendService) EnableCdn

func (r *BackendService) EnableCdn() *pulumi.BoolOutput

func (*BackendService) Fingerprint

func (r *BackendService) Fingerprint() *pulumi.StringOutput

func (*BackendService) HealthChecks

func (r *BackendService) HealthChecks() *pulumi.StringOutput

func (*BackendService) ID

func (r *BackendService) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*BackendService) Iap

func (r *BackendService) Iap() *pulumi.Output

func (*BackendService) LoadBalancingScheme added in v0.18.5

func (r *BackendService) LoadBalancingScheme() *pulumi.StringOutput

func (*BackendService) Name

func (r *BackendService) Name() *pulumi.StringOutput

func (*BackendService) PortName

func (r *BackendService) PortName() *pulumi.StringOutput

func (*BackendService) Project

func (r *BackendService) Project() *pulumi.StringOutput

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

func (*BackendService) Protocol

func (r *BackendService) Protocol() *pulumi.StringOutput

func (*BackendService) SecurityPolicy

func (r *BackendService) SecurityPolicy() *pulumi.StringOutput
func (r *BackendService) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*BackendService) SessionAffinity

func (r *BackendService) SessionAffinity() *pulumi.StringOutput

func (*BackendService) TimeoutSec

func (r *BackendService) TimeoutSec() *pulumi.IntOutput

func (*BackendService) URN

func (r *BackendService) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type BackendServiceArgs

type BackendServiceArgs struct {
	AffinityCookieTtlSec         interface{}
	Backends                     interface{}
	CdnPolicy                    interface{}
	ConnectionDrainingTimeoutSec interface{}
	CustomRequestHeaders         interface{}
	Description                  interface{}
	EnableCdn                    interface{}
	HealthChecks                 interface{}
	Iap                          interface{}
	LoadBalancingScheme          interface{}
	Name                         interface{}
	PortName                     interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project         interface{}
	Protocol        interface{}
	SecurityPolicy  interface{}
	SessionAffinity interface{}
	TimeoutSec      interface{}
}

The set of arguments for constructing a BackendService resource.

type BackendServiceState

type BackendServiceState struct {
	AffinityCookieTtlSec         interface{}
	Backends                     interface{}
	CdnPolicy                    interface{}
	ConnectionDrainingTimeoutSec interface{}
	CreationTimestamp            interface{}
	CustomRequestHeaders         interface{}
	Description                  interface{}
	EnableCdn                    interface{}
	Fingerprint                  interface{}
	HealthChecks                 interface{}
	Iap                          interface{}
	LoadBalancingScheme          interface{}
	Name                         interface{}
	PortName                     interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project        interface{}
	Protocol       interface{}
	SecurityPolicy interface{}
	// The URI of the created resource.
	SelfLink        interface{}
	SessionAffinity interface{}
	TimeoutSec      interface{}
}

Input properties used for looking up and filtering BackendService resources.

type Disk

type Disk struct {
	// contains filtered or unexported fields
}

Persistent disks are durable storage devices that function similarly to the physical disks in a desktop or a server. Compute Engine manages the hardware behind these devices to ensure data redundancy and optimize performance for you. Persistent disks are available as either standard hard disk drives (HDD) or solid-state drives (SSD).

Persistent disks are located independently from your virtual machine instances, so you can detach or move persistent disks to keep your data even after you delete your instances. Persistent disk performance scales automatically with size, so you can resize your existing persistent disks or add more persistent disks to an instance to meet your performance and storage space requirements.

Add a persistent disk to your instance when you need reliable and affordable storage with consistent performance characteristics.

To get more information about Disk, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/disks) * How-to Guides

> **Warning:** All arguments including the disk encryption key will be stored in the raw state as plain-text. [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).

func GetDisk

func GetDisk(ctx *pulumi.Context,
	name string, id pulumi.ID, state *DiskState, opts ...pulumi.ResourceOpt) (*Disk, error)

GetDisk gets an existing Disk 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 NewDisk

func NewDisk(ctx *pulumi.Context,
	name string, args *DiskArgs, opts ...pulumi.ResourceOpt) (*Disk, error)

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

func (*Disk) CreationTimestamp added in v0.15.0

func (r *Disk) CreationTimestamp() *pulumi.StringOutput

func (*Disk) Description added in v0.15.0

func (r *Disk) Description() *pulumi.StringOutput

func (*Disk) DiskEncryptionKey added in v0.15.0

func (r *Disk) DiskEncryptionKey() *pulumi.Output

func (*Disk) ID

func (r *Disk) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Disk) Image

func (r *Disk) Image() *pulumi.StringOutput

func (*Disk) LabelFingerprint

func (r *Disk) LabelFingerprint() *pulumi.StringOutput

func (*Disk) Labels

func (r *Disk) Labels() *pulumi.MapOutput

func (*Disk) LastAttachTimestamp added in v0.15.0

func (r *Disk) LastAttachTimestamp() *pulumi.StringOutput

func (*Disk) LastDetachTimestamp added in v0.15.0

func (r *Disk) LastDetachTimestamp() *pulumi.StringOutput

func (*Disk) Name

func (r *Disk) Name() *pulumi.StringOutput

func (*Disk) PhysicalBlockSizeBytes added in v0.18.1

func (r *Disk) PhysicalBlockSizeBytes() *pulumi.IntOutput

func (*Disk) Project

func (r *Disk) Project() *pulumi.StringOutput

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

func (r *Disk) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Disk) Size

func (r *Disk) Size() *pulumi.IntOutput

func (*Disk) Snapshot

func (r *Disk) Snapshot() *pulumi.StringOutput

func (*Disk) SourceImageEncryptionKey added in v0.15.0

func (r *Disk) SourceImageEncryptionKey() *pulumi.Output

func (*Disk) SourceImageId added in v0.15.0

func (r *Disk) SourceImageId() *pulumi.StringOutput

func (*Disk) SourceSnapshotEncryptionKey added in v0.15.0

func (r *Disk) SourceSnapshotEncryptionKey() *pulumi.Output

func (*Disk) SourceSnapshotId added in v0.15.0

func (r *Disk) SourceSnapshotId() *pulumi.StringOutput

func (*Disk) Type

func (r *Disk) Type() *pulumi.StringOutput

func (*Disk) URN

func (r *Disk) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*Disk) Users

func (r *Disk) Users() *pulumi.ArrayOutput

func (*Disk) Zone

func (r *Disk) Zone() *pulumi.StringOutput

type DiskArgs

type DiskArgs struct {
	Description            interface{}
	DiskEncryptionKey      interface{}
	Image                  interface{}
	Labels                 interface{}
	Name                   interface{}
	PhysicalBlockSizeBytes interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                     interface{}
	Size                        interface{}
	Snapshot                    interface{}
	SourceImageEncryptionKey    interface{}
	SourceSnapshotEncryptionKey interface{}
	Type                        interface{}
	Zone                        interface{}
}

The set of arguments for constructing a Disk resource.

type DiskState

type DiskState struct {
	CreationTimestamp      interface{}
	Description            interface{}
	DiskEncryptionKey      interface{}
	Image                  interface{}
	LabelFingerprint       interface{}
	Labels                 interface{}
	LastAttachTimestamp    interface{}
	LastDetachTimestamp    interface{}
	Name                   interface{}
	PhysicalBlockSizeBytes interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink                    interface{}
	Size                        interface{}
	Snapshot                    interface{}
	SourceImageEncryptionKey    interface{}
	SourceImageId               interface{}
	SourceSnapshotEncryptionKey interface{}
	SourceSnapshotId            interface{}
	Type                        interface{}
	Users                       interface{}
	Zone                        interface{}
}

Input properties used for looking up and filtering Disk resources.

type ExternalVpnGateway added in v0.18.8

type ExternalVpnGateway struct {
	// contains filtered or unexported fields
}

Represents a VPN gateway managed outside of GCP.

> **Warning:** This resource is in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

To get more information about ExternalVpnGateway, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/externalVpnGateways)

func GetExternalVpnGateway added in v0.18.8

func GetExternalVpnGateway(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ExternalVpnGatewayState, opts ...pulumi.ResourceOpt) (*ExternalVpnGateway, error)

GetExternalVpnGateway gets an existing ExternalVpnGateway 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 NewExternalVpnGateway added in v0.18.8

func NewExternalVpnGateway(ctx *pulumi.Context,
	name string, args *ExternalVpnGatewayArgs, opts ...pulumi.ResourceOpt) (*ExternalVpnGateway, error)

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

func (*ExternalVpnGateway) Description added in v0.18.8

func (r *ExternalVpnGateway) Description() *pulumi.StringOutput

func (*ExternalVpnGateway) ID added in v0.18.8

ID is this resource's unique identifier assigned by its provider.

func (*ExternalVpnGateway) Interfaces added in v0.18.8

func (r *ExternalVpnGateway) Interfaces() *pulumi.ArrayOutput

func (*ExternalVpnGateway) Name added in v0.18.8

func (*ExternalVpnGateway) Project added in v0.18.8

func (r *ExternalVpnGateway) Project() *pulumi.StringOutput

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

func (*ExternalVpnGateway) RedundancyType added in v0.18.8

func (r *ExternalVpnGateway) RedundancyType() *pulumi.StringOutput
func (r *ExternalVpnGateway) SelfLink() *pulumi.StringOutput

func (*ExternalVpnGateway) URN added in v0.18.8

URN is this resource's unique name assigned by Pulumi.

type ExternalVpnGatewayArgs added in v0.18.8

type ExternalVpnGatewayArgs struct {
	Description interface{}
	Interfaces  interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project        interface{}
	RedundancyType interface{}
}

The set of arguments for constructing a ExternalVpnGateway resource.

type ExternalVpnGatewayState added in v0.18.8

type ExternalVpnGatewayState struct {
	Description interface{}
	Interfaces  interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project        interface{}
	RedundancyType interface{}
	SelfLink       interface{}
}

Input properties used for looking up and filtering ExternalVpnGateway resources.

type Firewall

type Firewall struct {
	// contains filtered or unexported fields
}

Each network has its own firewall controlling access to and from the instances.

All traffic to instances, even from other instances, is blocked by the firewall unless firewall rules are created to allow it.

The default network has automatically created firewall rules that are shown in default firewall rules. No manually created network has automatically created firewall rules except for a default "allow" rule for outgoing traffic and a default "deny" for incoming traffic. For all networks except the default network, you must create any firewall rules you need.

To get more information about Firewall, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/firewalls) * How-to Guides

func GetFirewall

func GetFirewall(ctx *pulumi.Context,
	name string, id pulumi.ID, state *FirewallState, opts ...pulumi.ResourceOpt) (*Firewall, error)

GetFirewall gets an existing Firewall 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 NewFirewall

func NewFirewall(ctx *pulumi.Context,
	name string, args *FirewallArgs, opts ...pulumi.ResourceOpt) (*Firewall, error)

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

func (*Firewall) Allows

func (r *Firewall) Allows() *pulumi.ArrayOutput

func (*Firewall) CreationTimestamp added in v0.16.0

func (r *Firewall) CreationTimestamp() *pulumi.StringOutput

func (*Firewall) Denies

func (r *Firewall) Denies() *pulumi.ArrayOutput

func (*Firewall) Description

func (r *Firewall) Description() *pulumi.StringOutput

func (*Firewall) DestinationRanges

func (r *Firewall) DestinationRanges() *pulumi.ArrayOutput

func (*Firewall) Direction

func (r *Firewall) Direction() *pulumi.StringOutput

func (*Firewall) Disabled added in v0.15.0

func (r *Firewall) Disabled() *pulumi.BoolOutput

func (*Firewall) EnableLogging added in v0.16.0

func (r *Firewall) EnableLogging() *pulumi.BoolOutput

func (*Firewall) ID

func (r *Firewall) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Firewall) Name

func (r *Firewall) Name() *pulumi.StringOutput

func (*Firewall) Network

func (r *Firewall) Network() *pulumi.StringOutput

func (*Firewall) Priority

func (r *Firewall) Priority() *pulumi.IntOutput

func (*Firewall) Project

func (r *Firewall) Project() *pulumi.StringOutput

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

func (r *Firewall) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Firewall) SourceRanges

func (r *Firewall) SourceRanges() *pulumi.ArrayOutput

func (*Firewall) SourceServiceAccounts

func (r *Firewall) SourceServiceAccounts() *pulumi.ArrayOutput

func (*Firewall) SourceTags

func (r *Firewall) SourceTags() *pulumi.ArrayOutput

func (*Firewall) TargetServiceAccounts

func (r *Firewall) TargetServiceAccounts() *pulumi.ArrayOutput

func (*Firewall) TargetTags

func (r *Firewall) TargetTags() *pulumi.ArrayOutput

func (*Firewall) URN

func (r *Firewall) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type FirewallArgs

type FirewallArgs struct {
	Allows            interface{}
	Denies            interface{}
	Description       interface{}
	DestinationRanges interface{}
	Direction         interface{}
	Disabled          interface{}
	EnableLogging     interface{}
	Name              interface{}
	Network           interface{}
	Priority          interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project               interface{}
	SourceRanges          interface{}
	SourceServiceAccounts interface{}
	SourceTags            interface{}
	TargetServiceAccounts interface{}
	TargetTags            interface{}
}

The set of arguments for constructing a Firewall resource.

type FirewallState

type FirewallState struct {
	Allows            interface{}
	CreationTimestamp interface{}
	Denies            interface{}
	Description       interface{}
	DestinationRanges interface{}
	Direction         interface{}
	Disabled          interface{}
	EnableLogging     interface{}
	Name              interface{}
	Network           interface{}
	Priority          interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink              interface{}
	SourceRanges          interface{}
	SourceServiceAccounts interface{}
	SourceTags            interface{}
	TargetServiceAccounts interface{}
	TargetTags            interface{}
}

Input properties used for looking up and filtering Firewall resources.

type ForwardingRule

type ForwardingRule struct {
	// contains filtered or unexported fields
}

A ForwardingRule resource. A ForwardingRule resource specifies which pool of target virtual machines to forward a packet to if it matches the given [IPAddress, IPProtocol, portRange] tuple.

To get more information about ForwardingRule, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/forwardingRule) * How-to Guides

func GetForwardingRule

func GetForwardingRule(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ForwardingRuleState, opts ...pulumi.ResourceOpt) (*ForwardingRule, error)

GetForwardingRule gets an existing ForwardingRule 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 NewForwardingRule

func NewForwardingRule(ctx *pulumi.Context,
	name string, args *ForwardingRuleArgs, opts ...pulumi.ResourceOpt) (*ForwardingRule, error)

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

func (*ForwardingRule) AllPorts added in v0.18.0

func (r *ForwardingRule) AllPorts() *pulumi.BoolOutput

func (*ForwardingRule) BackendService

func (r *ForwardingRule) BackendService() *pulumi.StringOutput

func (*ForwardingRule) CreationTimestamp added in v0.15.0

func (r *ForwardingRule) CreationTimestamp() *pulumi.StringOutput

func (*ForwardingRule) Description

func (r *ForwardingRule) Description() *pulumi.StringOutput

func (*ForwardingRule) ID

func (r *ForwardingRule) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*ForwardingRule) IpAddress

func (r *ForwardingRule) IpAddress() *pulumi.StringOutput

func (*ForwardingRule) IpProtocol

func (r *ForwardingRule) IpProtocol() *pulumi.StringOutput

func (*ForwardingRule) IpVersion added in v0.15.0

func (r *ForwardingRule) IpVersion() *pulumi.StringOutput

func (*ForwardingRule) LabelFingerprint added in v0.15.0

func (r *ForwardingRule) LabelFingerprint() *pulumi.StringOutput

func (*ForwardingRule) Labels added in v0.15.0

func (r *ForwardingRule) Labels() *pulumi.MapOutput

func (*ForwardingRule) LoadBalancingScheme

func (r *ForwardingRule) LoadBalancingScheme() *pulumi.StringOutput

func (*ForwardingRule) Name

func (r *ForwardingRule) Name() *pulumi.StringOutput

func (*ForwardingRule) Network

func (r *ForwardingRule) Network() *pulumi.StringOutput

func (*ForwardingRule) NetworkTier added in v0.15.0

func (r *ForwardingRule) NetworkTier() *pulumi.StringOutput

func (*ForwardingRule) PortRange

func (r *ForwardingRule) PortRange() *pulumi.StringOutput

func (*ForwardingRule) Ports

func (r *ForwardingRule) Ports() *pulumi.ArrayOutput

func (*ForwardingRule) Project

func (r *ForwardingRule) Project() *pulumi.StringOutput

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

func (*ForwardingRule) Region

func (r *ForwardingRule) Region() *pulumi.StringOutput
func (r *ForwardingRule) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*ForwardingRule) ServiceLabel added in v0.15.0

func (r *ForwardingRule) ServiceLabel() *pulumi.StringOutput

func (*ForwardingRule) ServiceName added in v0.15.0

func (r *ForwardingRule) ServiceName() *pulumi.StringOutput

func (*ForwardingRule) Subnetwork

func (r *ForwardingRule) Subnetwork() *pulumi.StringOutput

func (*ForwardingRule) Target

func (r *ForwardingRule) Target() *pulumi.StringOutput

func (*ForwardingRule) URN

func (r *ForwardingRule) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ForwardingRuleArgs

type ForwardingRuleArgs struct {
	AllPorts            interface{}
	BackendService      interface{}
	Description         interface{}
	IpAddress           interface{}
	IpProtocol          interface{}
	IpVersion           interface{}
	Labels              interface{}
	LoadBalancingScheme interface{}
	Name                interface{}
	Network             interface{}
	NetworkTier         interface{}
	PortRange           interface{}
	Ports               interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project      interface{}
	Region       interface{}
	ServiceLabel interface{}
	Subnetwork   interface{}
	Target       interface{}
}

The set of arguments for constructing a ForwardingRule resource.

type ForwardingRuleState

type ForwardingRuleState struct {
	AllPorts            interface{}
	BackendService      interface{}
	CreationTimestamp   interface{}
	Description         interface{}
	IpAddress           interface{}
	IpProtocol          interface{}
	IpVersion           interface{}
	LabelFingerprint    interface{}
	Labels              interface{}
	LoadBalancingScheme interface{}
	Name                interface{}
	Network             interface{}
	NetworkTier         interface{}
	PortRange           interface{}
	Ports               interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink     interface{}
	ServiceLabel interface{}
	ServiceName  interface{}
	Subnetwork   interface{}
	Target       interface{}
}

Input properties used for looking up and filtering ForwardingRule resources.

type GetAddressArgs

type GetAddressArgs struct {
	// A unique name for the resource, required by GCE.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The Region in which the created address reside.
	// If it is not provided, the provider region is used.
	Region interface{}
}

A collection of arguments for invoking getAddress.

type GetAddressResult

type GetAddressResult struct {
	// The IP of the created resource.
	Address interface{}
	Name    interface{}
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// Indicates if the address is used. Possible values are: RESERVED or IN_USE.
	Status interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getAddress.

func LookupAddress

func LookupAddress(ctx *pulumi.Context, args *GetAddressArgs) (*GetAddressResult, error)

Get the IP address from a static address. For more information see the official [API](https://cloud.google.com/compute/docs/reference/latest/addresses/get) documentation.

type GetBackendServiceArgs

type GetBackendServiceArgs struct {
	// The name of the Backend Service.
	Name interface{}
	// The project in which the resource belongs. If it is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getBackendService.

type GetBackendServiceResult

type GetBackendServiceResult struct {
	AffinityCookieTtlSec interface{}
	// The set of backends that serve this Backend Service.
	Backends    interface{}
	CdnPolicies interface{}
	// Time for which instance will be drained (not accept new connections, but still work to finish started ones).
	ConnectionDrainingTimeoutSec interface{}
	CreationTimestamp            interface{}
	CustomRequestHeaders         interface{}
	// Textual description for the Backend Service.
	Description interface{}
	// Whether or not Cloud CDN is enabled on the Backend Service.
	EnableCdn interface{}
	// The fingerprint of the Backend Service.
	Fingerprint interface{}
	// The set of HTTP/HTTPS health checks used by the Backend Service.
	HealthChecks        interface{}
	Iaps                interface{}
	LoadBalancingScheme interface{}
	Name                interface{}
	// The name of a service that has been added to an instance group in this backend.
	PortName interface{}
	Project  interface{}
	// The protocol for incoming requests.
	Protocol       interface{}
	SecurityPolicy interface{}
	// The URI of the Backend Service.
	SelfLink interface{}
	// The Backend Service session stickyness configuration.
	SessionAffinity interface{}
	// The number of seconds to wait for a backend to respond to a request before considering the request failed.
	TimeoutSec interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getBackendService.

func LookupBackendService

func LookupBackendService(ctx *pulumi.Context, args *GetBackendServiceArgs) (*GetBackendServiceResult, error)

Provide access to a Backend Service's attribute. For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/http/backend-service) and the [API](https://cloud.google.com/compute/docs/reference/latest/backendServices).

type GetCertificateArgs added in v0.18.7

type GetCertificateArgs struct {
	// The name of the certificate.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getCertificate.

type GetCertificateResult added in v0.18.7

type GetCertificateResult struct {
	Certificate       interface{}
	CertificateId     interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	NamePrefix        interface{}
	PrivateKey        interface{}
	Project           interface{}
	SelfLink          interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getCertificate.

func LookupCertificate added in v0.18.7

func LookupCertificate(ctx *pulumi.Context, args *GetCertificateArgs) (*GetCertificateResult, error)

Get info about a Google Compute SSL Certificate from its name.

type GetDefaultServiceAccountArgs

type GetDefaultServiceAccountArgs struct {
	// The project ID. If it is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getDefaultServiceAccount.

type GetDefaultServiceAccountResult added in v0.14.1

type GetDefaultServiceAccountResult struct {
	// The display name for the service account.
	DisplayName interface{}
	// Email address of the default service account used by VMs running in this project
	Email interface{}
	// The fully-qualified name of the service account.
	Name    interface{}
	Project interface{}
	// The unique id of the service account.
	UniqueId interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getDefaultServiceAccount.

func LookupDefaultServiceAccount

func LookupDefaultServiceAccount(ctx *pulumi.Context, args *GetDefaultServiceAccountArgs) (*GetDefaultServiceAccountResult, error)

Use this data source to retrieve default service account for this project

type GetForwardingRuleArgs

type GetForwardingRuleArgs struct {
	// The name of the forwarding rule.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region in which the resource belongs. If it
	// is not provided, the project region is used.
	Region interface{}
}

A collection of arguments for invoking getForwardingRule.

type GetForwardingRuleResult

type GetForwardingRuleResult struct {
	// Backend service, if this forwarding rule has one.
	BackendService interface{}
	// Description of this forwarding rule.
	Description interface{}
	// IP address of this forwarding rule.
	IpAddress interface{}
	// IP protocol of this forwarding rule.
	IpProtocol interface{}
	// Type of load balancing of this forwarding rule.
	LoadBalancingScheme interface{}
	Name                interface{}
	// Network of this forwarding rule.
	Network interface{}
	// Port range, if this forwarding rule has one.
	PortRange interface{}
	// List of ports to use for internal load balancing, if this forwarding rule has any.
	Ports   interface{}
	Project interface{}
	// Region of this forwarding rule.
	Region interface{}
	// The URI of the resource.
	SelfLink interface{}
	// Subnetwork of this forwarding rule.
	Subnetwork interface{}
	// URL of the target pool, if this forwarding rule has one.
	Target interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getForwardingRule.

func LookupForwardingRule

func LookupForwardingRule(ctx *pulumi.Context, args *GetForwardingRuleArgs) (*GetForwardingRuleResult, error)

Get a forwarding rule within GCE from its name.

type GetGlobalAddressArgs

type GetGlobalAddressArgs struct {
	// A unique name for the resource, required by GCE.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getGlobalAddress.

type GetGlobalAddressResult

type GetGlobalAddressResult struct {
	// The IP of the created resource.
	Address interface{}
	Name    interface{}
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// Indicates if the address is used. Possible values are: RESERVED or IN_USE.
	Status interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getGlobalAddress.

func LookupGlobalAddress

func LookupGlobalAddress(ctx *pulumi.Context, args *GetGlobalAddressArgs) (*GetGlobalAddressResult, error)

Get the IP address from a static address reserved for a Global Forwarding Rule which are only used for HTTP load balancing. For more information see the official [API](https://cloud.google.com/compute/docs/reference/latest/globalAddresses) documentation.

type GetImageArgs

type GetImageArgs struct {
	Family interface{}
	Name   interface{}
	// The project in which the resource belongs. If it is not
	// provided, the provider project is used. If you are using a
	// [public base image][pubimg], be sure to specify the correct Image Project.
	Project interface{}
}

A collection of arguments for invoking getImage.

type GetImageResult

type GetImageResult struct {
	// The size of the image tar.gz archive stored in Google Cloud Storage in bytes.
	ArchiveSizeBytes interface{}
	// The creation timestamp in RFC3339 text format.
	CreationTimestamp interface{}
	// An optional description of this image.
	Description interface{}
	// The size of the image when restored onto a persistent disk in gigabytes.
	DiskSizeGb interface{}
	// The family name of the image.
	Family interface{}
	// The [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// encoded SHA-256 hash of the [customer-supplied encryption key](https://cloud.google.com/compute/docs/disks/customer-supplied-encryption)
	// that protects this image.
	ImageEncryptionKeySha256 interface{}
	// The unique identifier for the image.
	ImageId interface{}
	// A fingerprint for the labels being applied to this image.
	LabelFingerprint interface{}
	// A map of labels applied to this image.
	Labels interface{}
	// A list of applicable license URI.
	Licenses interface{}
	// The name of the image.
	Name    interface{}
	Project interface{}
	// The URI of the image.
	SelfLink interface{}
	// The URL of the source disk used to create this image.
	SourceDisk interface{}
	// The [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// encoded SHA-256 hash of the [customer-supplied encryption key](https://cloud.google.com/compute/docs/disks/customer-supplied-encryption)
	// that protects this image.
	SourceDiskEncryptionKeySha256 interface{}
	// The ID value of the disk used to create this image.
	SourceDiskId interface{}
	// The ID value of the image used to create this image.
	SourceImageId interface{}
	// The status of the image. Possible values are **FAILED**, **PENDING**, or **READY**.
	Status interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getImage.

func LookupImage

func LookupImage(ctx *pulumi.Context, args *GetImageArgs) (*GetImageResult, error)

Get information about a Google Compute Image. Check that your service account has the `compute.imageUser` role if you want to share [custom images](https://cloud.google.com/compute/docs/images/sharing-images-across-projects) from another project. If you want to use [public images][pubimg], do not forget to specify the dedicated project. For more information see [the official documentation](https://cloud.google.com/compute/docs/images) and its [API](https://cloud.google.com/compute/docs/reference/latest/images).

type GetInstanceArgs added in v0.16.1

type GetInstanceArgs struct {
	// The name of the instance. One of `name` or `self_link` must be provided.
	Name interface{}
	// The ID of the project in which the resource belongs.
	// If `self_link` is provided, this value is ignored.  If neither `self_link`
	// nor `project` are provided, the provider project is used.
	Project interface{}
	// The self link of the instance. One of `name` or `self_link` must be provided.
	SelfLink interface{}
	// The zone of the instance. If `self_link` is provided, this
	// value is ignored.  If neither `self_link` nor `zone` are provided, the
	// provider zone is used.
	Zone interface{}
}

A collection of arguments for invoking getInstance.

type GetInstanceGroupArgs

type GetInstanceGroupArgs struct {
	// The name of the instance group. Either `name` or `self_link` must be provided.
	Name interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The self link of the instance group. Either `name` or `self_link` must be provided.
	SelfLink interface{}
	// The zone of the instance group. If referencing the instance group by name
	// and `zone` is not provided, the provider zone is used.
	Zone interface{}
}

A collection of arguments for invoking getInstanceGroup.

type GetInstanceGroupResult

type GetInstanceGroupResult struct {
	// Textual description of the instance group.
	Description interface{}
	// List of instances in the group.
	Instances interface{}
	Name      interface{}
	// List of named ports in the group.
	NamedPorts interface{}
	// The URL of the network the instance group is in.
	Network interface{}
	Project interface{}
	// The URI of the resource.
	SelfLink interface{}
	// The number of instances in the group.
	Size interface{}
	Zone interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getInstanceGroup.

func LookupInstanceGroup

func LookupInstanceGroup(ctx *pulumi.Context, args *GetInstanceGroupArgs) (*GetInstanceGroupResult, error)

Get a Compute Instance Group within GCE. For more information, see [the official documentation](https://cloud.google.com/compute/docs/instance-groups/#unmanaged_instance_groups) and [API](https://cloud.google.com/compute/docs/reference/latest/instanceGroups)

type GetInstanceResult added in v0.16.1

type GetInstanceResult struct {
	AllowStoppingForUpdate interface{}
	// List of disks attached to the instance. Structure is documented below.
	AttachedDisks interface{}
	// The boot disk for the instance. Structure is documented below.
	BootDisks interface{}
	// Whether sending and receiving of packets with non-matching source or destination IPs is allowed.
	CanIpForward interface{}
	// The CPU platform used by this instance.
	CpuPlatform interface{}
	// Whether deletion protection is enabled on this instance.
	DeletionProtection interface{}
	// A brief description of the resource.
	Description interface{}
	Disks       interface{}
	// List of the type and count of accelerator cards attached to the instance. Structure is documented below.
	GuestAccelerators interface{}
	Hostname          interface{}
	// The server-assigned unique identifier of this instance.
	InstanceId interface{}
	// The unique fingerprint of the labels.
	LabelFingerprint interface{}
	// A set of key/value label pairs assigned to the instance.
	Labels interface{}
	// The machine type to create.
	MachineType interface{}
	// Metadata key/value pairs made available within the instance.
	Metadata interface{}
	// The unique fingerprint of the metadata.
	MetadataFingerprint   interface{}
	MetadataStartupScript interface{}
	// The minimum CPU platform specified for the VM instance.
	MinCpuPlatform interface{}
	Name           interface{}
	// The networks attached to the instance. Structure is documented below.
	NetworkInterfaces interface{}
	Project           interface{}
	// The scheduling strategy being used by the instance.
	Schedulings interface{}
	// The scratch disks attached to the instance. Structure is documented below.
	ScratchDisks interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// The service account to attach to the instance. Structure is documented below.
	ServiceAccounts interface{}
	// The shielded vm config being used by the instance. Structure is documented below.
	ShieldedInstanceConfigs interface{}
	// The list of tags attached to the instance.
	Tags interface{}
	// The unique fingerprint of the tags.
	TagsFingerprint interface{}
	Zone            interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getInstance.

func LookupInstance added in v0.16.1

func LookupInstance(ctx *pulumi.Context, args *GetInstanceArgs) (*GetInstanceResult, error)

Get information about a VM instance resource within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/instances) and [API](https://cloud.google.com/compute/docs/reference/latest/instances).

type GetLBIPRangesResult

type GetLBIPRangesResult struct {
	// The IP ranges used for health checks when **HTTP(S), SSL proxy, TCP proxy, and Internal load balancing** is used
	HttpSslTcpInternals interface{}
	// The IP ranges used for health checks when **Network load balancing** is used
	Networks interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getLBIPRanges.

func LookupLBIPRanges

func LookupLBIPRanges(ctx *pulumi.Context) (*GetLBIPRangesResult, error)

Use this data source to access IP ranges in your firewall rules.

https://cloud.google.com/compute/docs/load-balancing/health-checks#health_check_source_ips_and_firewall_rules

type GetNetblockIPRangesResult added in v0.15.0

type GetNetblockIPRangesResult struct {
	// Retrieve list of all CIDR blocks.
	CidrBlocks interface{}
	// Retrieve list of the IP4 CIDR blocks
	CidrBlocksIpv4s interface{}
	// Retrieve list of the IP6 CIDR blocks.
	CidrBlocksIpv6s interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNetblockIPRanges.

func LookupNetblockIPRanges added in v0.15.0

func LookupNetblockIPRanges(ctx *pulumi.Context) (*GetNetblockIPRangesResult, error)

Use this data source to get the IP ranges from the sender policy framework (SPF) record of \_cloud-netblocks.googleusercontent

https://cloud.google.com/compute/docs/faq#where_can_i_find_product_name_short_ip_ranges

type GetNetworkArgs

type GetNetworkArgs struct {
	// The name of the network.
	Name interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getNetwork.

type GetNetworkResult

type GetNetworkResult struct {
	// Description of this network.
	Description interface{}
	// The IP address of the gateway.
	GatewayIpv4 interface{}
	Name        interface{}
	Project     interface{}
	// The URI of the resource.
	SelfLink interface{}
	// the list of subnetworks which belong to the network
	SubnetworksSelfLinks interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNetwork.

func LookupNetwork

func LookupNetwork(ctx *pulumi.Context, args *GetNetworkArgs) (*GetNetworkResult, error)

Get a network within GCE from its name.

type GetNodeTypesArgs added in v0.18.6

type GetNodeTypesArgs struct {
	// ID of the project to list available node types for.
	// Should match the project the nodes of this type will be deployed to.
	// Defaults to the project that the provider is authenticated with.
	Project interface{}
	// The zone to list node types for. Should be in zone of intended node groups and region of referencing node template. If `zone` is not specified, the provider-level zone must be set and is used
	// instead.
	Zone interface{}
}

A collection of arguments for invoking getNodeTypes.

type GetNodeTypesResult added in v0.18.6

type GetNodeTypesResult struct {
	// A list of node types available in the given zone and project.
	Names   interface{}
	Project interface{}
	Zone    interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getNodeTypes.

func LookupNodeTypes added in v0.18.6

func LookupNodeTypes(ctx *pulumi.Context, args *GetNodeTypesArgs) (*GetNodeTypesResult, error)

Provides available node types for Compute Engine sole-tenant nodes in a zone for a given project. For more information, see [the official documentation](https://cloud.google.com/compute/docs/nodes/#types) and [API](https://cloud.google.com/compute/docs/reference/rest/v1/nodeTypes).

type GetRegionInstanceGroupArgs

type GetRegionInstanceGroupArgs struct {
	// The name of the instance group.  One of `name` or `self_link` must be provided.
	Name interface{}
	// The ID of the project in which the resource belongs.
	// If `self_link` is provided, this value is ignored.  If neither `self_link`
	// nor `project` are provided, the provider project is used.
	Project interface{}
	// The region in which the resource belongs.  If `self_link`
	// is provided, this value is ignored.  If neither `self_link` nor `region` are
	// provided, the provider region is used.
	Region interface{}
	// The link to the instance group.  One of `name` or `self_link` must be provided.
	SelfLink interface{}
}

A collection of arguments for invoking getRegionInstanceGroup.

type GetRegionInstanceGroupResult

type GetRegionInstanceGroupResult struct {
	// List of instances in the group, as a list of resources, each containing:
	Instances interface{}
	// String port name
	Name     interface{}
	Project  interface{}
	Region   interface{}
	SelfLink interface{}
	// The number of instances in the group.
	Size interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getRegionInstanceGroup.

func LookupRegionInstanceGroup

func LookupRegionInstanceGroup(ctx *pulumi.Context, args *GetRegionInstanceGroupArgs) (*GetRegionInstanceGroupResult, error)

Get a Compute Region Instance Group within GCE. For more information, see [the official documentation](https://cloud.google.com/compute/docs/instance-groups/distributing-instances-with-regional-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/latest/regionInstanceGroups).

The most common use of this datasource will be to fetch information about the instances inside regional managed instance groups, for instance:

type GetRegionsArgs added in v0.15.0

type GetRegionsArgs struct {
	// Project from which to list available regions. Defaults to project declared in the provider.
	Project interface{}
	// Allows to filter list of regions based on their current status. Status can be either `UP` or `DOWN`.
	// Defaults to no filtering (all available regions - both `UP` and `DOWN`).
	Status interface{}
}

A collection of arguments for invoking getRegions.

type GetRegionsResult added in v0.15.0

type GetRegionsResult struct {
	// A list of regions available in the given project
	Names   interface{}
	Project interface{}
	Status  interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getRegions.

func LookupRegions added in v0.15.0

func LookupRegions(ctx *pulumi.Context, args *GetRegionsArgs) (*GetRegionsResult, error)

Provides access to available Google Compute regions for a given project. See more about [regions and regions](https://cloud.google.com/compute/docs/regions-zones/) in the upstream docs.

type GetSSLPolicyArgs added in v0.15.0

type GetSSLPolicyArgs struct {
	// The name of the SSL Policy.
	Name interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getSSLPolicy.

type GetSSLPolicyResult added in v0.15.0

type GetSSLPolicyResult struct {
	CreationTimestamp interface{}
	// If the `profile` is `CUSTOM`, these are the custom encryption
	// ciphers supported by the profile. If the `profile` is *not* `CUSTOM`, this
	// attribute will be empty.
	CustomFeatures interface{}
	// Description of this SSL Policy.
	Description interface{}
	// The set of enabled encryption ciphers as a result of the policy config
	EnabledFeatures interface{}
	// Fingerprint of this resource.
	Fingerprint interface{}
	// The minimum supported TLS version of this policy.
	MinTlsVersion interface{}
	Name          interface{}
	// The Google-curated or custom profile used by this policy.
	Profile interface{}
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getSSLPolicy.

func LookupSSLPolicy added in v0.15.0

func LookupSSLPolicy(ctx *pulumi.Context, args *GetSSLPolicyArgs) (*GetSSLPolicyResult, error)

Gets an SSL Policy within GCE from its name, for use with Target HTTPS and Target SSL Proxies.

For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/ssl-policies).

type GetSubnetworkArgs

type GetSubnetworkArgs struct {
	// The name of the subnetwork. One of `name` or `self_link`
	// must be specified.
	Name interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region this subnetwork has been created in. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The self link of the subnetwork. If `self_link` is
	// specified, `name`, `project`, and `region` are ignored.
	SelfLink interface{}
}

A collection of arguments for invoking getSubnetwork.

type GetSubnetworkResult

type GetSubnetworkResult struct {
	// Description of this subnetwork.
	Description interface{}
	// The IP address of the gateway.
	GatewayAddress interface{}
	// The range of IP addresses belonging to this subnetwork
	// secondary range.
	IpCidrRange interface{}
	Name        interface{}
	// The network name or resource link to the parent
	// network of this subnetwork.
	Network interface{}
	// Whether the VMs in this subnet
	// can access Google services without assigned external IP
	// addresses.
	PrivateIpGoogleAccess interface{}
	Project               interface{}
	Region                interface{}
	// An array of configurations for secondary IP ranges for
	// VM instances contained in this subnetwork. Structure is documented below.
	SecondaryIpRanges interface{}
	SelfLink          interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getSubnetwork.

func LookupSubnetwork

func LookupSubnetwork(ctx *pulumi.Context, args *GetSubnetworkArgs) (*GetSubnetworkResult, error)

Get a subnetwork within GCE from its name and region.

type GetVPNGatewayArgs

type GetVPNGatewayArgs struct {
	// The name of the VPN gateway.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region in which the resource belongs. If it
	// is not provided, the project region is used.
	Region interface{}
}

A collection of arguments for invoking getVPNGateway.

type GetVPNGatewayResult

type GetVPNGatewayResult struct {
	// Description of this VPN gateway.
	Description interface{}
	Name        interface{}
	// The network of this VPN gateway.
	Network interface{}
	Project interface{}
	// Region of this VPN gateway.
	Region interface{}
	// The URI of the resource.
	SelfLink interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getVPNGateway.

func LookupVPNGateway

func LookupVPNGateway(ctx *pulumi.Context, args *GetVPNGatewayArgs) (*GetVPNGatewayResult, error)

Get a VPN gateway within GCE from its name.

type GetZonesArgs

type GetZonesArgs struct {
	// Project from which to list available zones. Defaults to project declared in the provider.
	Project interface{}
	// Region from which to list available zones. Defaults to region declared in the provider.
	Region interface{}
	// Allows to filter list of zones based on their current status. Status can be either `UP` or `DOWN`.
	// Defaults to no filtering (all available zones - both `UP` and `DOWN`).
	Status interface{}
}

A collection of arguments for invoking getZones.

type GetZonesResult

type GetZonesResult struct {
	// A list of zones available in the given region
	Names   interface{}
	Project interface{}
	Region  interface{}
	Status  interface{}
	// id is the provider-assigned unique ID for this managed resource.
	Id interface{}
}

A collection of values returned by getZones.

func LookupZones

func LookupZones(ctx *pulumi.Context, args *GetZonesArgs) (*GetZonesResult, error)

Provides access to available Google Compute zones in a region for a given project. See more about [regions and zones](https://cloud.google.com/compute/docs/regions-zones/regions-zones) in the upstream docs.

type GlobalAddress

type GlobalAddress struct {
	// contains filtered or unexported fields
}

Represents a Global Address resource. Global addresses are used for HTTP(S) load balancing.

To get more information about GlobalAddress, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/globalAddresses) * How-to Guides

func GetGlobalAddress

func GetGlobalAddress(ctx *pulumi.Context,
	name string, id pulumi.ID, state *GlobalAddressState, opts ...pulumi.ResourceOpt) (*GlobalAddress, error)

GetGlobalAddress gets an existing GlobalAddress 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 NewGlobalAddress

func NewGlobalAddress(ctx *pulumi.Context,
	name string, args *GlobalAddressArgs, opts ...pulumi.ResourceOpt) (*GlobalAddress, error)

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

func (*GlobalAddress) Address

func (r *GlobalAddress) Address() *pulumi.StringOutput

func (*GlobalAddress) AddressType added in v0.16.1

func (r *GlobalAddress) AddressType() *pulumi.StringOutput

func (*GlobalAddress) CreationTimestamp

func (r *GlobalAddress) CreationTimestamp() *pulumi.StringOutput

func (*GlobalAddress) Description

func (r *GlobalAddress) Description() *pulumi.StringOutput

func (*GlobalAddress) ID

func (r *GlobalAddress) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*GlobalAddress) IpVersion

func (r *GlobalAddress) IpVersion() *pulumi.StringOutput

func (*GlobalAddress) LabelFingerprint added in v0.16.0

func (r *GlobalAddress) LabelFingerprint() *pulumi.StringOutput

func (*GlobalAddress) Labels added in v0.16.0

func (r *GlobalAddress) Labels() *pulumi.MapOutput

func (*GlobalAddress) Name

func (r *GlobalAddress) Name() *pulumi.StringOutput

func (*GlobalAddress) Network added in v0.16.1

func (r *GlobalAddress) Network() *pulumi.StringOutput

func (*GlobalAddress) PrefixLength added in v0.16.1

func (r *GlobalAddress) PrefixLength() *pulumi.IntOutput

func (*GlobalAddress) Project

func (r *GlobalAddress) Project() *pulumi.StringOutput

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

func (*GlobalAddress) Purpose added in v0.16.1

func (r *GlobalAddress) Purpose() *pulumi.StringOutput
func (r *GlobalAddress) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*GlobalAddress) URN

func (r *GlobalAddress) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type GlobalAddressArgs

type GlobalAddressArgs struct {
	Address      interface{}
	AddressType  interface{}
	Description  interface{}
	IpVersion    interface{}
	Labels       interface{}
	Name         interface{}
	Network      interface{}
	PrefixLength interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Purpose interface{}
}

The set of arguments for constructing a GlobalAddress resource.

type GlobalAddressState

type GlobalAddressState struct {
	Address           interface{}
	AddressType       interface{}
	CreationTimestamp interface{}
	Description       interface{}
	IpVersion         interface{}
	LabelFingerprint  interface{}
	Labels            interface{}
	Name              interface{}
	Network           interface{}
	PrefixLength      interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Purpose interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering GlobalAddress resources.

type GlobalForwardingRule

type GlobalForwardingRule struct {
	// contains filtered or unexported fields
}

Represents a GlobalForwardingRule resource. Global forwarding rules are used to forward traffic to the correct load balancer for HTTP load balancing. Global forwarding rules can only be used for HTTP load balancing.

For more information, see https://cloud.google.com/compute/docs/load-balancing/http/

func GetGlobalForwardingRule

func GetGlobalForwardingRule(ctx *pulumi.Context,
	name string, id pulumi.ID, state *GlobalForwardingRuleState, opts ...pulumi.ResourceOpt) (*GlobalForwardingRule, error)

GetGlobalForwardingRule gets an existing GlobalForwardingRule 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 NewGlobalForwardingRule

func NewGlobalForwardingRule(ctx *pulumi.Context,
	name string, args *GlobalForwardingRuleArgs, opts ...pulumi.ResourceOpt) (*GlobalForwardingRule, error)

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

func (*GlobalForwardingRule) Description

func (r *GlobalForwardingRule) Description() *pulumi.StringOutput

func (*GlobalForwardingRule) ID

ID is this resource's unique identifier assigned by its provider.

func (*GlobalForwardingRule) IpAddress

func (r *GlobalForwardingRule) IpAddress() *pulumi.StringOutput

func (*GlobalForwardingRule) IpProtocol

func (r *GlobalForwardingRule) IpProtocol() *pulumi.StringOutput

func (*GlobalForwardingRule) IpVersion

func (r *GlobalForwardingRule) IpVersion() *pulumi.StringOutput

func (*GlobalForwardingRule) LabelFingerprint

func (r *GlobalForwardingRule) LabelFingerprint() *pulumi.StringOutput

func (*GlobalForwardingRule) Labels

func (r *GlobalForwardingRule) Labels() *pulumi.MapOutput

func (*GlobalForwardingRule) LoadBalancingScheme added in v0.18.7

func (r *GlobalForwardingRule) LoadBalancingScheme() *pulumi.StringOutput

func (*GlobalForwardingRule) Name

func (*GlobalForwardingRule) Network added in v0.18.7

func (*GlobalForwardingRule) PortRange

func (r *GlobalForwardingRule) PortRange() *pulumi.StringOutput

func (*GlobalForwardingRule) Project

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

func (r *GlobalForwardingRule) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*GlobalForwardingRule) Target

func (*GlobalForwardingRule) URN

URN is this resource's unique name assigned by Pulumi.

type GlobalForwardingRuleArgs

type GlobalForwardingRuleArgs struct {
	Description         interface{}
	IpAddress           interface{}
	IpProtocol          interface{}
	IpVersion           interface{}
	Labels              interface{}
	LoadBalancingScheme interface{}
	Name                interface{}
	Network             interface{}
	PortRange           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Target  interface{}
}

The set of arguments for constructing a GlobalForwardingRule resource.

type GlobalForwardingRuleState

type GlobalForwardingRuleState struct {
	Description         interface{}
	IpAddress           interface{}
	IpProtocol          interface{}
	IpVersion           interface{}
	LabelFingerprint    interface{}
	Labels              interface{}
	LoadBalancingScheme interface{}
	Name                interface{}
	Network             interface{}
	PortRange           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Target   interface{}
}

Input properties used for looking up and filtering GlobalForwardingRule resources.

type HaVpnGateway added in v0.18.7

type HaVpnGateway struct {
	// contains filtered or unexported fields
}

Represents a VPN gateway running in GCP. This virtual device is managed by Google, but used only by you. This type of VPN Gateway allows for the creation of VPN solutions with higher availability than classic Target VPN Gateways.

> **Warning:** This resource is in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

To get more information about HaVpnGateway, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/vpnGateways) * How-to Guides

func GetHaVpnGateway added in v0.18.7

func GetHaVpnGateway(ctx *pulumi.Context,
	name string, id pulumi.ID, state *HaVpnGatewayState, opts ...pulumi.ResourceOpt) (*HaVpnGateway, error)

GetHaVpnGateway gets an existing HaVpnGateway 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 NewHaVpnGateway added in v0.18.7

func NewHaVpnGateway(ctx *pulumi.Context,
	name string, args *HaVpnGatewayArgs, opts ...pulumi.ResourceOpt) (*HaVpnGateway, error)

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

func (*HaVpnGateway) Description added in v0.18.7

func (r *HaVpnGateway) Description() *pulumi.StringOutput

func (*HaVpnGateway) ID added in v0.18.7

func (r *HaVpnGateway) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*HaVpnGateway) Name added in v0.18.7

func (r *HaVpnGateway) Name() *pulumi.StringOutput

func (*HaVpnGateway) Network added in v0.18.7

func (r *HaVpnGateway) Network() *pulumi.StringOutput

func (*HaVpnGateway) Project added in v0.18.7

func (r *HaVpnGateway) Project() *pulumi.StringOutput

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

func (*HaVpnGateway) Region added in v0.18.7

func (r *HaVpnGateway) Region() *pulumi.StringOutput
func (r *HaVpnGateway) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*HaVpnGateway) URN added in v0.18.7

func (r *HaVpnGateway) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*HaVpnGateway) VpnInterfaces added in v0.18.7

func (r *HaVpnGateway) VpnInterfaces() *pulumi.ArrayOutput

type HaVpnGatewayArgs added in v0.18.7

type HaVpnGatewayArgs struct {
	Description interface{}
	Name        interface{}
	Network     interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
}

The set of arguments for constructing a HaVpnGateway resource.

type HaVpnGatewayState added in v0.18.7

type HaVpnGatewayState struct {
	Description interface{}
	Name        interface{}
	Network     interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink      interface{}
	VpnInterfaces interface{}
}

Input properties used for looking up and filtering HaVpnGateway resources.

type HealthCheck

type HealthCheck struct {
	// contains filtered or unexported fields
}

Health Checks determine whether instances are responsive and able to do work. They are an important part of a comprehensive load balancing configuration, as they enable monitoring instances behind load balancers.

Health Checks poll instances at a specified interval. Instances that do not respond successfully to some number of probes in a row are marked as unhealthy. No new connections are sent to unhealthy instances, though existing connections will continue. The health check will continue to poll unhealthy instances. If an instance later responds successfully to some number of consecutive probes, it is marked healthy again and can receive new connections.

To get more information about HealthCheck, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/healthChecks) * How-to Guides

func GetHealthCheck

func GetHealthCheck(ctx *pulumi.Context,
	name string, id pulumi.ID, state *HealthCheckState, opts ...pulumi.ResourceOpt) (*HealthCheck, error)

GetHealthCheck gets an existing HealthCheck 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 NewHealthCheck

func NewHealthCheck(ctx *pulumi.Context,
	name string, args *HealthCheckArgs, opts ...pulumi.ResourceOpt) (*HealthCheck, error)

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

func (*HealthCheck) CheckIntervalSec

func (r *HealthCheck) CheckIntervalSec() *pulumi.IntOutput

func (*HealthCheck) CreationTimestamp added in v0.16.0

func (r *HealthCheck) CreationTimestamp() *pulumi.StringOutput

func (*HealthCheck) Description

func (r *HealthCheck) Description() *pulumi.StringOutput

func (*HealthCheck) HealthyThreshold

func (r *HealthCheck) HealthyThreshold() *pulumi.IntOutput

func (*HealthCheck) HttpHealthCheck

func (r *HealthCheck) HttpHealthCheck() *pulumi.Output

func (*HealthCheck) HttpsHealthCheck

func (r *HealthCheck) HttpsHealthCheck() *pulumi.Output

func (*HealthCheck) ID

func (r *HealthCheck) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*HealthCheck) Name

func (r *HealthCheck) Name() *pulumi.StringOutput

func (*HealthCheck) Project

func (r *HealthCheck) Project() *pulumi.StringOutput

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

func (r *HealthCheck) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*HealthCheck) SslHealthCheck

func (r *HealthCheck) SslHealthCheck() *pulumi.Output

func (*HealthCheck) TcpHealthCheck

func (r *HealthCheck) TcpHealthCheck() *pulumi.Output

func (*HealthCheck) TimeoutSec

func (r *HealthCheck) TimeoutSec() *pulumi.IntOutput

func (*HealthCheck) Type added in v0.16.0

func (r *HealthCheck) Type() *pulumi.StringOutput

func (*HealthCheck) URN

func (r *HealthCheck) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*HealthCheck) UnhealthyThreshold

func (r *HealthCheck) UnhealthyThreshold() *pulumi.IntOutput

type HealthCheckArgs

type HealthCheckArgs struct {
	CheckIntervalSec interface{}
	Description      interface{}
	HealthyThreshold interface{}
	HttpHealthCheck  interface{}
	HttpsHealthCheck interface{}
	Name             interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project            interface{}
	SslHealthCheck     interface{}
	TcpHealthCheck     interface{}
	TimeoutSec         interface{}
	UnhealthyThreshold interface{}
}

The set of arguments for constructing a HealthCheck resource.

type HealthCheckState

type HealthCheckState struct {
	CheckIntervalSec  interface{}
	CreationTimestamp interface{}
	Description       interface{}
	HealthyThreshold  interface{}
	HttpHealthCheck   interface{}
	HttpsHealthCheck  interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink           interface{}
	SslHealthCheck     interface{}
	TcpHealthCheck     interface{}
	TimeoutSec         interface{}
	Type               interface{}
	UnhealthyThreshold interface{}
}

Input properties used for looking up and filtering HealthCheck resources.

type HttpHealthCheck

type HttpHealthCheck struct {
	// contains filtered or unexported fields
}

An HttpHealthCheck resource. This resource defines a template for how individual VMs should be checked for health, via HTTP.

> **Note:** google_compute_http_health_check is a legacy health check. The newer [google_compute_health_check](https://www.terraform.io/docs/providers/google/r/compute_health_check.html) should be preferred for all uses except [Network Load Balancers](https://cloud.google.com/compute/docs/load-balancing/network/) which still require the legacy version.

To get more information about HttpHealthCheck, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/httpHealthChecks) * How-to Guides

func GetHttpHealthCheck

func GetHttpHealthCheck(ctx *pulumi.Context,
	name string, id pulumi.ID, state *HttpHealthCheckState, opts ...pulumi.ResourceOpt) (*HttpHealthCheck, error)

GetHttpHealthCheck gets an existing HttpHealthCheck 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 NewHttpHealthCheck

func NewHttpHealthCheck(ctx *pulumi.Context,
	name string, args *HttpHealthCheckArgs, opts ...pulumi.ResourceOpt) (*HttpHealthCheck, error)

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

func (*HttpHealthCheck) CheckIntervalSec

func (r *HttpHealthCheck) CheckIntervalSec() *pulumi.IntOutput

func (*HttpHealthCheck) CreationTimestamp

func (r *HttpHealthCheck) CreationTimestamp() *pulumi.StringOutput

func (*HttpHealthCheck) Description

func (r *HttpHealthCheck) Description() *pulumi.StringOutput

func (*HttpHealthCheck) HealthyThreshold

func (r *HttpHealthCheck) HealthyThreshold() *pulumi.IntOutput

func (*HttpHealthCheck) Host

func (r *HttpHealthCheck) Host() *pulumi.StringOutput

func (*HttpHealthCheck) ID

func (r *HttpHealthCheck) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*HttpHealthCheck) Name

func (r *HttpHealthCheck) Name() *pulumi.StringOutput

func (*HttpHealthCheck) Port

func (r *HttpHealthCheck) Port() *pulumi.IntOutput

func (*HttpHealthCheck) Project

func (r *HttpHealthCheck) Project() *pulumi.StringOutput

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

func (*HttpHealthCheck) RequestPath

func (r *HttpHealthCheck) RequestPath() *pulumi.StringOutput
func (r *HttpHealthCheck) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*HttpHealthCheck) TimeoutSec

func (r *HttpHealthCheck) TimeoutSec() *pulumi.IntOutput

func (*HttpHealthCheck) URN

func (r *HttpHealthCheck) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*HttpHealthCheck) UnhealthyThreshold

func (r *HttpHealthCheck) UnhealthyThreshold() *pulumi.IntOutput

type HttpHealthCheckArgs

type HttpHealthCheckArgs struct {
	CheckIntervalSec interface{}
	Description      interface{}
	HealthyThreshold interface{}
	Host             interface{}
	Name             interface{}
	Port             interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project            interface{}
	RequestPath        interface{}
	TimeoutSec         interface{}
	UnhealthyThreshold interface{}
}

The set of arguments for constructing a HttpHealthCheck resource.

type HttpHealthCheckState

type HttpHealthCheckState struct {
	CheckIntervalSec  interface{}
	CreationTimestamp interface{}
	Description       interface{}
	HealthyThreshold  interface{}
	Host              interface{}
	Name              interface{}
	Port              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	RequestPath interface{}
	// The URI of the created resource.
	SelfLink           interface{}
	TimeoutSec         interface{}
	UnhealthyThreshold interface{}
}

Input properties used for looking up and filtering HttpHealthCheck resources.

type HttpsHealthCheck

type HttpsHealthCheck struct {
	// contains filtered or unexported fields
}

An HttpsHealthCheck resource. This resource defines a template for how individual VMs should be checked for health, via HTTPS.

> **Note:** google_compute_https_health_check is a legacy health check. The newer [google_compute_health_check](https://www.terraform.io/docs/providers/google/r/compute_health_check.html) should be preferred for all uses except [Network Load Balancers](https://cloud.google.com/compute/docs/load-balancing/network/) which still require the legacy version.

To get more information about HttpsHealthCheck, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/httpsHealthChecks) * How-to Guides

func GetHttpsHealthCheck

func GetHttpsHealthCheck(ctx *pulumi.Context,
	name string, id pulumi.ID, state *HttpsHealthCheckState, opts ...pulumi.ResourceOpt) (*HttpsHealthCheck, error)

GetHttpsHealthCheck gets an existing HttpsHealthCheck 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 NewHttpsHealthCheck

func NewHttpsHealthCheck(ctx *pulumi.Context,
	name string, args *HttpsHealthCheckArgs, opts ...pulumi.ResourceOpt) (*HttpsHealthCheck, error)

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

func (*HttpsHealthCheck) CheckIntervalSec

func (r *HttpsHealthCheck) CheckIntervalSec() *pulumi.IntOutput

func (*HttpsHealthCheck) CreationTimestamp

func (r *HttpsHealthCheck) CreationTimestamp() *pulumi.StringOutput

func (*HttpsHealthCheck) Description

func (r *HttpsHealthCheck) Description() *pulumi.StringOutput

func (*HttpsHealthCheck) HealthyThreshold

func (r *HttpsHealthCheck) HealthyThreshold() *pulumi.IntOutput

func (*HttpsHealthCheck) Host

func (*HttpsHealthCheck) ID

func (r *HttpsHealthCheck) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*HttpsHealthCheck) Name

func (*HttpsHealthCheck) Port

func (r *HttpsHealthCheck) Port() *pulumi.IntOutput

func (*HttpsHealthCheck) Project

func (r *HttpsHealthCheck) Project() *pulumi.StringOutput

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

func (*HttpsHealthCheck) RequestPath

func (r *HttpsHealthCheck) RequestPath() *pulumi.StringOutput
func (r *HttpsHealthCheck) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*HttpsHealthCheck) TimeoutSec

func (r *HttpsHealthCheck) TimeoutSec() *pulumi.IntOutput

func (*HttpsHealthCheck) URN

func (r *HttpsHealthCheck) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*HttpsHealthCheck) UnhealthyThreshold

func (r *HttpsHealthCheck) UnhealthyThreshold() *pulumi.IntOutput

type HttpsHealthCheckArgs

type HttpsHealthCheckArgs struct {
	CheckIntervalSec interface{}
	Description      interface{}
	HealthyThreshold interface{}
	Host             interface{}
	Name             interface{}
	Port             interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project            interface{}
	RequestPath        interface{}
	TimeoutSec         interface{}
	UnhealthyThreshold interface{}
}

The set of arguments for constructing a HttpsHealthCheck resource.

type HttpsHealthCheckState

type HttpsHealthCheckState struct {
	CheckIntervalSec  interface{}
	CreationTimestamp interface{}
	Description       interface{}
	HealthyThreshold  interface{}
	Host              interface{}
	Name              interface{}
	Port              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	RequestPath interface{}
	// The URI of the created resource.
	SelfLink           interface{}
	TimeoutSec         interface{}
	UnhealthyThreshold interface{}
}

Input properties used for looking up and filtering HttpsHealthCheck resources.

type Image

type Image struct {
	// contains filtered or unexported fields
}

Represents an Image resource.

Google Compute Engine uses operating system images to create the root persistent disks for your instances. You specify an image when you create an instance. Images contain a boot loader, an operating system, and a root file system. Linux operating system images are also capable of running containers on Compute Engine.

Images can be either public or custom.

Public images are provided and maintained by Google, open-source communities, and third-party vendors. By default, all projects have access to these images and can use them to create instances. Custom images are available only to your project. You can create a custom image from root persistent disks and other images. Then, use the custom image to create an instance.

To get more information about Image, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/images) * How-to Guides

func GetImage

func GetImage(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ImageState, opts ...pulumi.ResourceOpt) (*Image, error)

GetImage gets an existing Image 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 NewImage

func NewImage(ctx *pulumi.Context,
	name string, args *ImageArgs, opts ...pulumi.ResourceOpt) (*Image, error)

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

func (*Image) ArchiveSizeBytes added in v0.18.0

func (r *Image) ArchiveSizeBytes() *pulumi.IntOutput

func (*Image) CreationTimestamp added in v0.18.0

func (r *Image) CreationTimestamp() *pulumi.StringOutput

func (*Image) Description

func (r *Image) Description() *pulumi.StringOutput

func (*Image) DiskSizeGb added in v0.18.0

func (r *Image) DiskSizeGb() *pulumi.IntOutput

func (*Image) Family

func (r *Image) Family() *pulumi.StringOutput

func (*Image) ID

func (r *Image) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Image) LabelFingerprint

func (r *Image) LabelFingerprint() *pulumi.StringOutput

func (*Image) Labels

func (r *Image) Labels() *pulumi.MapOutput

func (*Image) Licenses added in v0.15.0

func (r *Image) Licenses() *pulumi.ArrayOutput

func (*Image) Name

func (r *Image) Name() *pulumi.StringOutput

func (*Image) Project

func (r *Image) Project() *pulumi.StringOutput

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

func (*Image) RawDisk

func (r *Image) RawDisk() *pulumi.Output
func (r *Image) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Image) SourceDisk

func (r *Image) SourceDisk() *pulumi.StringOutput

func (*Image) URN

func (r *Image) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ImageArgs

type ImageArgs struct {
	Description interface{}
	DiskSizeGb  interface{}
	Family      interface{}
	Labels      interface{}
	Licenses    interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project    interface{}
	RawDisk    interface{}
	SourceDisk interface{}
}

The set of arguments for constructing a Image resource.

type ImageState

type ImageState struct {
	ArchiveSizeBytes  interface{}
	CreationTimestamp interface{}
	Description       interface{}
	DiskSizeGb        interface{}
	Family            interface{}
	LabelFingerprint  interface{}
	Labels            interface{}
	Licenses          interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	RawDisk interface{}
	// The URI of the created resource.
	SelfLink   interface{}
	SourceDisk interface{}
}

Input properties used for looking up and filtering Image resources.

type Instance

type Instance struct {
	// contains filtered or unexported fields
}

Manages a VM instance resource within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/instances) and [API](https://cloud.google.com/compute/docs/reference/latest/instances).

func GetInstance

func GetInstance(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceState, opts ...pulumi.ResourceOpt) (*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.ResourceOpt) (*Instance, error)

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

func (*Instance) AllowStoppingForUpdate

func (r *Instance) AllowStoppingForUpdate() *pulumi.BoolOutput

If true, allows Terraform to stop the instance to update its properties. If you try to update a property that requires stopping the instance without setting this field, the update will fail.

func (*Instance) AttachedDisks

func (r *Instance) AttachedDisks() *pulumi.ArrayOutput

Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.

func (*Instance) BootDisk

func (r *Instance) BootDisk() *pulumi.Output

The boot disk for the instance. Structure is documented below.

func (*Instance) CanIpForward

func (r *Instance) CanIpForward() *pulumi.BoolOutput

Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.

func (*Instance) CpuPlatform

func (r *Instance) CpuPlatform() *pulumi.StringOutput

The CPU platform used by this instance.

func (*Instance) DeletionProtection

func (r *Instance) DeletionProtection() *pulumi.BoolOutput

Enable deletion protection on this instance. Defaults to false. **Note:** you must disable deletion protection before removing the resource (e.g., via `terraform destroy`), or the instance cannot be deleted and the Terraform run will not complete successfully.

func (*Instance) Description

func (r *Instance) Description() *pulumi.StringOutput

A brief description of this resource.

func (*Instance) GuestAccelerators

func (r *Instance) GuestAccelerators() *pulumi.ArrayOutput

List of the type and count of accelerator cards attached to the instance. Structure documented below. **Note:** GPU accelerators can only be used with `on_host_maintenance` option set to TERMINATE.

func (*Instance) Hostname added in v0.18.0

func (r *Instance) Hostname() *pulumi.StringOutput

A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid. Valid format is a series of labels 1-63 characters long matching the regular expression `a-z`, concatenated with periods. The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.

func (*Instance) ID

func (r *Instance) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Instance) InstanceId

func (r *Instance) InstanceId() *pulumi.StringOutput

The server-assigned unique identifier of this instance.

func (*Instance) LabelFingerprint

func (r *Instance) LabelFingerprint() *pulumi.StringOutput

The unique fingerprint of the labels.

func (*Instance) Labels

func (r *Instance) Labels() *pulumi.MapOutput

A set of key/value label pairs to assign to the instance.

func (*Instance) MachineType

func (r *Instance) MachineType() *pulumi.StringOutput

The machine type to create.

func (*Instance) Metadata

func (r *Instance) Metadata() *pulumi.MapOutput

Metadata key/value pairs to make available from within the instance. Ssh keys attached in the Cloud Console will be removed. Add them to your config in order to keep them attached to your instance.

func (*Instance) MetadataFingerprint

func (r *Instance) MetadataFingerprint() *pulumi.StringOutput

The unique fingerprint of the metadata.

func (*Instance) MetadataStartupScript

func (r *Instance) MetadataStartupScript() *pulumi.StringOutput

An alternative to using the startup-script metadata key, except this one forces the instance to be recreated (thus re-running the script) if it is changed. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously.

func (*Instance) MinCpuPlatform

func (r *Instance) MinCpuPlatform() *pulumi.StringOutput

Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as `Intel Haswell` or `Intel Skylake`. See the complete list [here](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform). **Note**: `allow_stopping_for_update` must be set to true in order to update this field.

func (*Instance) Name

func (r *Instance) Name() *pulumi.StringOutput

A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

func (*Instance) NetworkInterfaces

func (r *Instance) NetworkInterfaces() *pulumi.ArrayOutput

Networks to attach to the instance. This can be specified multiple times. Structure is documented below.

func (*Instance) Project

func (r *Instance) Project() *pulumi.StringOutput

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

func (*Instance) Scheduling

func (r *Instance) Scheduling() *pulumi.Output

The scheduling strategy to use. More details about this configuration option are detailed below.

func (*Instance) ScratchDisks

func (r *Instance) ScratchDisks() *pulumi.ArrayOutput

Scratch disks to attach to the instance. This can be specified multiple times for multiple scratch disks. Structure is documented below.

func (r *Instance) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Instance) ServiceAccount

func (r *Instance) ServiceAccount() *pulumi.Output

Service account to attach to the instance. Structure is documented below. **Note**: `allow_stopping_for_update` must be set to true in order to update this field.

func (*Instance) ShieldedInstanceConfig added in v0.18.6

func (r *Instance) ShieldedInstanceConfig() *pulumi.Output

Enable [Shielded VM](https://cloud.google.com/security/shielded-cloud/shielded-vm) on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. **Note**: `shielded_instance_config` can only be used with boot images with shielded vm support. See the complete list [here](https://cloud.google.com/compute/docs/images#shielded-images).

func (*Instance) Tags

func (r *Instance) Tags() *pulumi.ArrayOutput

A list of tags to attach to the instance.

func (*Instance) TagsFingerprint

func (r *Instance) TagsFingerprint() *pulumi.StringOutput

The unique fingerprint of the tags.

func (*Instance) URN

func (r *Instance) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*Instance) Zone

func (r *Instance) Zone() *pulumi.StringOutput

The zone that the machine should be created in.

type InstanceArgs

type InstanceArgs struct {
	// If true, allows Terraform to stop the instance to update its properties.
	// If you try to update a property that requires stopping the instance without setting this field, the update will fail.
	AllowStoppingForUpdate interface{}
	// Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
	AttachedDisks interface{}
	// The boot disk for the instance.
	// Structure is documented below.
	BootDisk interface{}
	// Whether to allow sending and receiving of
	// packets with non-matching source or destination IPs.
	// This defaults to false.
	CanIpForward interface{}
	// Enable deletion protection on this instance. Defaults to false.
	// **Note:** you must disable deletion protection before removing the resource (e.g., via `terraform destroy`), or the instance cannot be deleted and the Terraform run will not complete successfully.
	DeletionProtection interface{}
	// A brief description of this resource.
	Description interface{}
	// List of the type and count of accelerator cards attached to the instance. Structure documented below.
	// **Note:** GPU accelerators can only be used with `on_host_maintenance` option set to TERMINATE.
	GuestAccelerators interface{}
	// A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid.
	// Valid format is a series of labels 1-63 characters long matching the regular expression `a-z`, concatenated with periods.
	// The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.
	Hostname interface{}
	// A set of key/value label pairs to assign to the instance.
	Labels interface{}
	// The machine type to create.
	MachineType interface{}
	// Metadata key/value pairs to make available from
	// within the instance. Ssh keys attached in the Cloud Console will be removed.
	// Add them to your config in order to keep them attached to your instance.
	Metadata interface{}
	// An alternative to using the
	// startup-script metadata key, except this one forces the instance to be
	// recreated (thus re-running the script) if it is changed. This replaces the
	// startup-script metadata key on the created instance and thus the two
	// mechanisms are not allowed to be used simultaneously.
	MetadataStartupScript interface{}
	// Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
	// `Intel Haswell` or `Intel Skylake`. See the complete list [here](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform).
	// **Note**: `allow_stopping_for_update` must be set to true in order to update this field.
	MinCpuPlatform interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// Networks to attach to the instance. This can
	// be specified multiple times. Structure is documented below.
	NetworkInterfaces interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The scheduling strategy to use. More details about
	// this configuration option are detailed below.
	Scheduling interface{}
	// Scratch disks to attach to the instance. This can be
	// specified multiple times for multiple scratch disks. Structure is documented below.
	ScratchDisks interface{}
	// Service account to attach to the instance.
	// Structure is documented below.
	// **Note**: `allow_stopping_for_update` must be set to true in order to update this field.
	ServiceAccount interface{}
	// Enable [Shielded VM](https://cloud.google.com/security/shielded-cloud/shielded-vm) on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below.
	// **Note**: `shielded_instance_config` can only be used with boot images with shielded vm support. See the complete list [here](https://cloud.google.com/compute/docs/images#shielded-images).
	ShieldedInstanceConfig interface{}
	// A list of tags to attach to the instance.
	Tags interface{}
	// The zone that the machine should be created in.
	Zone interface{}
}

The set of arguments for constructing a Instance resource.

type InstanceFromTemplate added in v0.15.0

type InstanceFromTemplate struct {
	// contains filtered or unexported fields
}

Manages a VM instance resource within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/instances) and [API](https://cloud.google.com/compute/docs/reference/latest/instances).

This resource is specifically to create a compute instance from a given `source_instance_template`. To create an instance without a template, use the `google_compute_instance` resource.

func GetInstanceFromTemplate added in v0.15.0

func GetInstanceFromTemplate(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceFromTemplateState, opts ...pulumi.ResourceOpt) (*InstanceFromTemplate, error)

GetInstanceFromTemplate gets an existing InstanceFromTemplate 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 NewInstanceFromTemplate added in v0.15.0

func NewInstanceFromTemplate(ctx *pulumi.Context,
	name string, args *InstanceFromTemplateArgs, opts ...pulumi.ResourceOpt) (*InstanceFromTemplate, error)

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

func (*InstanceFromTemplate) AllowStoppingForUpdate added in v0.15.0

func (r *InstanceFromTemplate) AllowStoppingForUpdate() *pulumi.BoolOutput

func (*InstanceFromTemplate) AttachedDisks added in v0.15.0

func (r *InstanceFromTemplate) AttachedDisks() *pulumi.ArrayOutput

func (*InstanceFromTemplate) BootDisk added in v0.15.0

func (r *InstanceFromTemplate) BootDisk() *pulumi.Output

func (*InstanceFromTemplate) CanIpForward added in v0.15.0

func (r *InstanceFromTemplate) CanIpForward() *pulumi.BoolOutput

func (*InstanceFromTemplate) CpuPlatform added in v0.15.0

func (r *InstanceFromTemplate) CpuPlatform() *pulumi.StringOutput

func (*InstanceFromTemplate) DeletionProtection added in v0.15.0

func (r *InstanceFromTemplate) DeletionProtection() *pulumi.BoolOutput

func (*InstanceFromTemplate) Description added in v0.15.0

func (r *InstanceFromTemplate) Description() *pulumi.StringOutput

func (*InstanceFromTemplate) GuestAccelerators added in v0.15.0

func (r *InstanceFromTemplate) GuestAccelerators() *pulumi.ArrayOutput

func (*InstanceFromTemplate) Hostname added in v0.18.0

func (r *InstanceFromTemplate) Hostname() *pulumi.StringOutput

func (*InstanceFromTemplate) ID added in v0.15.0

ID is this resource's unique identifier assigned by its provider.

func (*InstanceFromTemplate) InstanceId added in v0.15.0

func (r *InstanceFromTemplate) InstanceId() *pulumi.StringOutput

func (*InstanceFromTemplate) LabelFingerprint added in v0.15.0

func (r *InstanceFromTemplate) LabelFingerprint() *pulumi.StringOutput

func (*InstanceFromTemplate) Labels added in v0.15.0

func (r *InstanceFromTemplate) Labels() *pulumi.MapOutput

func (*InstanceFromTemplate) MachineType added in v0.15.0

func (r *InstanceFromTemplate) MachineType() *pulumi.StringOutput

func (*InstanceFromTemplate) Metadata added in v0.15.0

func (r *InstanceFromTemplate) Metadata() *pulumi.MapOutput

func (*InstanceFromTemplate) MetadataFingerprint added in v0.15.0

func (r *InstanceFromTemplate) MetadataFingerprint() *pulumi.StringOutput

func (*InstanceFromTemplate) MetadataStartupScript added in v0.15.0

func (r *InstanceFromTemplate) MetadataStartupScript() *pulumi.StringOutput

func (*InstanceFromTemplate) MinCpuPlatform added in v0.15.0

func (r *InstanceFromTemplate) MinCpuPlatform() *pulumi.StringOutput

func (*InstanceFromTemplate) Name added in v0.15.0

A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

func (*InstanceFromTemplate) NetworkInterfaces added in v0.15.0

func (r *InstanceFromTemplate) NetworkInterfaces() *pulumi.ArrayOutput

func (*InstanceFromTemplate) Project added in v0.15.0

func (*InstanceFromTemplate) Scheduling added in v0.15.0

func (r *InstanceFromTemplate) Scheduling() *pulumi.Output

func (*InstanceFromTemplate) ScratchDisks added in v0.15.0

func (r *InstanceFromTemplate) ScratchDisks() *pulumi.ArrayOutput
func (r *InstanceFromTemplate) SelfLink() *pulumi.StringOutput

func (*InstanceFromTemplate) ServiceAccount added in v0.15.0

func (r *InstanceFromTemplate) ServiceAccount() *pulumi.Output

func (*InstanceFromTemplate) ShieldedInstanceConfig added in v0.18.6

func (r *InstanceFromTemplate) ShieldedInstanceConfig() *pulumi.Output

func (*InstanceFromTemplate) SourceInstanceTemplate added in v0.15.0

func (r *InstanceFromTemplate) SourceInstanceTemplate() *pulumi.StringOutput

Name or self link of an instance template to create the instance based on.

func (*InstanceFromTemplate) Tags added in v0.15.0

func (*InstanceFromTemplate) TagsFingerprint added in v0.15.0

func (r *InstanceFromTemplate) TagsFingerprint() *pulumi.StringOutput

func (*InstanceFromTemplate) URN added in v0.15.0

URN is this resource's unique name assigned by Pulumi.

func (*InstanceFromTemplate) Zone added in v0.15.0

The zone that the machine should be created in. If not set, the provider zone is used.

type InstanceFromTemplateArgs added in v0.15.0

type InstanceFromTemplateArgs struct {
	AllowStoppingForUpdate interface{}
	AttachedDisks          interface{}
	BootDisk               interface{}
	CanIpForward           interface{}
	DeletionProtection     interface{}
	Description            interface{}
	GuestAccelerators      interface{}
	Hostname               interface{}
	Labels                 interface{}
	MachineType            interface{}
	Metadata               interface{}
	MetadataStartupScript  interface{}
	MinCpuPlatform         interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name                   interface{}
	NetworkInterfaces      interface{}
	Project                interface{}
	Scheduling             interface{}
	ScratchDisks           interface{}
	ServiceAccount         interface{}
	ShieldedInstanceConfig interface{}
	// Name or self link of an instance
	// template to create the instance based on.
	SourceInstanceTemplate interface{}
	Tags                   interface{}
	// The zone that the machine should be created in. If not
	// set, the provider zone is used.
	Zone interface{}
}

The set of arguments for constructing a InstanceFromTemplate resource.

type InstanceFromTemplateState added in v0.15.0

type InstanceFromTemplateState struct {
	AllowStoppingForUpdate interface{}
	AttachedDisks          interface{}
	BootDisk               interface{}
	CanIpForward           interface{}
	CpuPlatform            interface{}
	DeletionProtection     interface{}
	Description            interface{}
	GuestAccelerators      interface{}
	Hostname               interface{}
	InstanceId             interface{}
	LabelFingerprint       interface{}
	Labels                 interface{}
	MachineType            interface{}
	Metadata               interface{}
	MetadataFingerprint    interface{}
	MetadataStartupScript  interface{}
	MinCpuPlatform         interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name                   interface{}
	NetworkInterfaces      interface{}
	Project                interface{}
	Scheduling             interface{}
	ScratchDisks           interface{}
	SelfLink               interface{}
	ServiceAccount         interface{}
	ShieldedInstanceConfig interface{}
	// Name or self link of an instance
	// template to create the instance based on.
	SourceInstanceTemplate interface{}
	Tags                   interface{}
	TagsFingerprint        interface{}
	// The zone that the machine should be created in. If not
	// set, the provider zone is used.
	Zone interface{}
}

Input properties used for looking up and filtering InstanceFromTemplate resources.

type InstanceGroup

type InstanceGroup struct {
	// contains filtered or unexported fields
}

Creates a group of dissimilar Compute Engine virtual machine instances. For more information, see [the official documentation](https://cloud.google.com/compute/docs/instance-groups/#unmanaged_instance_groups) and [API](https://cloud.google.com/compute/docs/reference/latest/instanceGroups)

> Recreating an instance group that's in use by another resource will give a `resourceInUseByAnotherResource` error. You can avoid this error with a Terraform `lifecycle` block as outlined in the example below.

func GetInstanceGroup

func GetInstanceGroup(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceGroupState, opts ...pulumi.ResourceOpt) (*InstanceGroup, error)

GetInstanceGroup gets an existing InstanceGroup 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 NewInstanceGroup

func NewInstanceGroup(ctx *pulumi.Context,
	name string, args *InstanceGroupArgs, opts ...pulumi.ResourceOpt) (*InstanceGroup, error)

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

func (*InstanceGroup) Description

func (r *InstanceGroup) Description() *pulumi.StringOutput

An optional textual description of the instance group.

func (*InstanceGroup) ID

func (r *InstanceGroup) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*InstanceGroup) Instances

func (r *InstanceGroup) Instances() *pulumi.ArrayOutput

List of instances in the group. They should be given as self_link URLs. When adding instances they must all be in the same network and zone as the instance group.

func (*InstanceGroup) Name

func (r *InstanceGroup) Name() *pulumi.StringOutput

The name of the instance group. Must be 1-63 characters long and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters include lowercase letters, numbers, and hyphens.

func (*InstanceGroup) NamedPorts

func (r *InstanceGroup) NamedPorts() *pulumi.ArrayOutput

The named port configuration. See the section below for details on configuration.

func (*InstanceGroup) Network

func (r *InstanceGroup) Network() *pulumi.StringOutput

The URL of the network the instance group is in. If this is different from the network where the instances are in, the creation fails. Defaults to the network where the instances are in (if neither `network` nor `instances` is specified, this field will be blank).

func (*InstanceGroup) Project

func (r *InstanceGroup) Project() *pulumi.StringOutput

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

func (r *InstanceGroup) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*InstanceGroup) Size

func (r *InstanceGroup) Size() *pulumi.IntOutput

The number of instances in the group.

func (*InstanceGroup) URN

func (r *InstanceGroup) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*InstanceGroup) Zone

func (r *InstanceGroup) Zone() *pulumi.StringOutput

The zone that this instance group should be created in.

type InstanceGroupArgs

type InstanceGroupArgs struct {
	// An optional textual description of the instance
	// group.
	Description interface{}
	// List of instances in the group. They should be given
	// as self_link URLs. When adding instances they must all be in the same
	// network and zone as the instance group.
	Instances interface{}
	// The name of the instance group. Must be 1-63
	// characters long and comply with
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
	// include lowercase letters, numbers, and hyphens.
	Name interface{}
	// The named port configuration. See the section below
	// for details on configuration.
	NamedPorts interface{}
	// The URL of the network the instance group is in. If
	// this is different from the network where the instances are in, the creation
	// fails. Defaults to the network where the instances are in (if neither
	// `network` nor `instances` is specified, this field will be blank).
	Network interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The zone that this instance group should be created in.
	Zone interface{}
}

The set of arguments for constructing a InstanceGroup resource.

type InstanceGroupManager

type InstanceGroupManager struct {
	// contains filtered or unexported fields
}

The Google Compute Engine Instance Group Manager API creates and manages pools of homogeneous Compute Engine virtual machine instances from a common instance template. For more information, see [the official documentation](https://cloud.google.com/compute/docs/instance-groups/manager) and [API](https://cloud.google.com/compute/docs/reference/latest/instanceGroupManagers)

> **Note:** Use [google_compute_region_instance_group_manager](https://www.terraform.io/docs/providers/google/r/compute_region_instance_group_manager.html) to create a regional (multi-zone) instance group manager.

func GetInstanceGroupManager

func GetInstanceGroupManager(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceGroupManagerState, opts ...pulumi.ResourceOpt) (*InstanceGroupManager, error)

GetInstanceGroupManager gets an existing InstanceGroupManager 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 NewInstanceGroupManager

func NewInstanceGroupManager(ctx *pulumi.Context,
	name string, args *InstanceGroupManagerArgs, opts ...pulumi.ResourceOpt) (*InstanceGroupManager, error)

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

func (*InstanceGroupManager) AutoHealingPolicies

func (r *InstanceGroupManager) AutoHealingPolicies() *pulumi.Output

) The autohealing policies for this managed instance group. You can specify only one value. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances#monitoring_groups).

func (*InstanceGroupManager) BaseInstanceName

func (r *InstanceGroupManager) BaseInstanceName() *pulumi.StringOutput

The base instance name to use for instances in this group. The value must be a valid [RFC1035](https://www.ietf.org/rfc/rfc1035.txt) name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name.

func (*InstanceGroupManager) Description

func (r *InstanceGroupManager) Description() *pulumi.StringOutput

An optional textual description of the instance group manager.

func (*InstanceGroupManager) Fingerprint

func (r *InstanceGroupManager) Fingerprint() *pulumi.StringOutput

The fingerprint of the instance group manager.

func (*InstanceGroupManager) ID

ID is this resource's unique identifier assigned by its provider.

func (*InstanceGroupManager) InstanceGroup

func (r *InstanceGroupManager) InstanceGroup() *pulumi.StringOutput

The full URL of the instance group created by the manager.

func (*InstanceGroupManager) Name

The name of the instance group manager. Must be 1-63 characters long and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters include lowercase letters, numbers, and hyphens.

func (*InstanceGroupManager) NamedPorts

func (r *InstanceGroupManager) NamedPorts() *pulumi.ArrayOutput

The named port configuration. See the section below for details on configuration.

func (*InstanceGroupManager) Project

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

func (r *InstanceGroupManager) SelfLink() *pulumi.StringOutput

The URL of the created resource.

func (*InstanceGroupManager) TargetPools

func (r *InstanceGroupManager) TargetPools() *pulumi.ArrayOutput

The full URL of all target pools to which new instances in the group are added. Updating the target pools attribute does not affect existing instances.

func (*InstanceGroupManager) TargetSize

func (r *InstanceGroupManager) TargetSize() *pulumi.IntOutput

The target number of running instances for this managed instance group. This value should always be explicitly set unless this resource is attached to an autoscaler, in which case it should never be set. Defaults to `0`.

func (*InstanceGroupManager) URN

URN is this resource's unique name assigned by Pulumi.

func (*InstanceGroupManager) UpdatePolicy added in v0.18.0

func (r *InstanceGroupManager) UpdatePolicy() *pulumi.Output

) The update policy for this managed instance group. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/updating-managed-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/instanceGroupManagers/patch) - - -

func (*InstanceGroupManager) Versions added in v0.15.0

func (r *InstanceGroupManager) Versions() *pulumi.ArrayOutput

) Application versions managed by this instance group. Each version deals with a specific instance template, allowing canary release scenarios. Structure is documented below.

func (*InstanceGroupManager) WaitForInstances

func (r *InstanceGroupManager) WaitForInstances() *pulumi.BoolOutput

Whether to wait for all instances to be created/updated before returning. Note that if this is set to true and the operation does not succeed, Terraform will continue trying until it times out.

func (*InstanceGroupManager) Zone

The zone that instances in this group should be created in.

type InstanceGroupManagerArgs

type InstanceGroupManagerArgs struct {
	// ) The autohealing policies for this managed instance
	// group. You can specify only one value. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances#monitoring_groups).
	AutoHealingPolicies interface{}
	// The base instance name to use for
	// instances in this group. The value must be a valid
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt) name. Supported characters
	// are lowercase letters, numbers, and hyphens (-). Instances are named by
	// appending a hyphen and a random four-character string to the base instance
	// name.
	BaseInstanceName interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The name of the instance group manager. Must be 1-63
	// characters long and comply with
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
	// include lowercase letters, numbers, and hyphens.
	Name interface{}
	// The named port configuration. See the section below
	// for details on configuration.
	NamedPorts interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The full URL of all target pools to which new
	// instances in the group are added. Updating the target pools attribute does
	// not affect existing instances.
	TargetPools interface{}
	// The target number of running instances for this managed
	// instance group. This value should always be explicitly set unless this resource is attached to
	// an autoscaler, in which case it should never be set. Defaults to `0`.
	TargetSize interface{}
	// ) The update policy for this managed instance group. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/updating-managed-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/instanceGroupManagers/patch)
	// - - -
	UpdatePolicy interface{}
	// ) Application versions managed by this instance group. Each
	// version deals with a specific instance template, allowing canary release scenarios.
	// Structure is documented below.
	Versions interface{}
	// Whether to wait for all instances to be created/updated before
	// returning. Note that if this is set to true and the operation does not succeed, Terraform will
	// continue trying until it times out.
	WaitForInstances interface{}
	// The zone that instances in this group should be created
	// in.
	Zone interface{}
}

The set of arguments for constructing a InstanceGroupManager resource.

type InstanceGroupManagerState

type InstanceGroupManagerState struct {
	// ) The autohealing policies for this managed instance
	// group. You can specify only one value. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances#monitoring_groups).
	AutoHealingPolicies interface{}
	// The base instance name to use for
	// instances in this group. The value must be a valid
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt) name. Supported characters
	// are lowercase letters, numbers, and hyphens (-). Instances are named by
	// appending a hyphen and a random four-character string to the base instance
	// name.
	BaseInstanceName interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The fingerprint of the instance group manager.
	Fingerprint interface{}
	// The full URL of the instance group created by the manager.
	InstanceGroup interface{}
	// The name of the instance group manager. Must be 1-63
	// characters long and comply with
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
	// include lowercase letters, numbers, and hyphens.
	Name interface{}
	// The named port configuration. See the section below
	// for details on configuration.
	NamedPorts interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The URL of the created resource.
	SelfLink interface{}
	// The full URL of all target pools to which new
	// instances in the group are added. Updating the target pools attribute does
	// not affect existing instances.
	TargetPools interface{}
	// The target number of running instances for this managed
	// instance group. This value should always be explicitly set unless this resource is attached to
	// an autoscaler, in which case it should never be set. Defaults to `0`.
	TargetSize interface{}
	// ) The update policy for this managed instance group. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/updating-managed-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/instanceGroupManagers/patch)
	// - - -
	UpdatePolicy interface{}
	// ) Application versions managed by this instance group. Each
	// version deals with a specific instance template, allowing canary release scenarios.
	// Structure is documented below.
	Versions interface{}
	// Whether to wait for all instances to be created/updated before
	// returning. Note that if this is set to true and the operation does not succeed, Terraform will
	// continue trying until it times out.
	WaitForInstances interface{}
	// The zone that instances in this group should be created
	// in.
	Zone interface{}
}

Input properties used for looking up and filtering InstanceGroupManager resources.

type InstanceGroupState

type InstanceGroupState struct {
	// An optional textual description of the instance
	// group.
	Description interface{}
	// List of instances in the group. They should be given
	// as self_link URLs. When adding instances they must all be in the same
	// network and zone as the instance group.
	Instances interface{}
	// The name of the instance group. Must be 1-63
	// characters long and comply with
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
	// include lowercase letters, numbers, and hyphens.
	Name interface{}
	// The named port configuration. See the section below
	// for details on configuration.
	NamedPorts interface{}
	// The URL of the network the instance group is in. If
	// this is different from the network where the instances are in, the creation
	// fails. Defaults to the network where the instances are in (if neither
	// `network` nor `instances` is specified, this field will be blank).
	Network interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// The number of instances in the group.
	Size interface{}
	// The zone that this instance group should be created in.
	Zone interface{}
}

Input properties used for looking up and filtering InstanceGroup resources.

type InstanceIAMBinding added in v0.18.6

type InstanceIAMBinding struct {
	// contains filtered or unexported fields
}

Three different resources help you manage your IAM policy for GCE instance. Each of these resources serves a different use case:

* `google_compute_instance_iam_policy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `google_compute_instance_iam_binding`: 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. * `google_compute_instance_iam_member`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

> **Note:** `google_compute_instance_iam_policy` **cannot** be used in conjunction with `google_compute_instance_iam_binding` and `google_compute_instance_iam_member` or they will fight over what your policy should be.

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

func GetInstanceIAMBinding added in v0.18.6

func GetInstanceIAMBinding(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceIAMBindingState, opts ...pulumi.ResourceOpt) (*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 added in v0.18.6

func NewInstanceIAMBinding(ctx *pulumi.Context,
	name string, args *InstanceIAMBindingArgs, opts ...pulumi.ResourceOpt) (*InstanceIAMBinding, error)

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

func (*InstanceIAMBinding) Etag added in v0.18.6

(Computed) The etag of the instance's IAM policy.

func (*InstanceIAMBinding) ID added in v0.18.6

ID is this resource's unique identifier assigned by its provider.

func (*InstanceIAMBinding) InstanceName added in v0.18.6

func (r *InstanceIAMBinding) InstanceName() *pulumi.StringOutput

The name of the instance.

func (*InstanceIAMBinding) Members added in v0.18.6

func (r *InstanceIAMBinding) Members() *pulumi.ArrayOutput

func (*InstanceIAMBinding) Project added in v0.18.6

func (r *InstanceIAMBinding) Project() *pulumi.StringOutput

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

func (*InstanceIAMBinding) Role added in v0.18.6

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

func (*InstanceIAMBinding) URN added in v0.18.6

URN is this resource's unique name assigned by Pulumi.

func (*InstanceIAMBinding) Zone added in v0.18.6

The zone of the instance. If unspecified, this defaults to the zone configured in the provider.

type InstanceIAMBindingArgs added in v0.18.6

type InstanceIAMBindingArgs struct {
	// The name of the instance.
	InstanceName interface{}
	Members      interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The role that should be applied. Only one
	// `google_compute_instance_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The zone of the instance. If
	// unspecified, this defaults to the zone configured in the provider.
	Zone interface{}
}

The set of arguments for constructing a InstanceIAMBinding resource.

type InstanceIAMBindingState added in v0.18.6

type InstanceIAMBindingState struct {
	// (Computed) The etag of the instance's IAM policy.
	Etag interface{}
	// The name of the instance.
	InstanceName interface{}
	Members      interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The role that should be applied. Only one
	// `google_compute_instance_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The zone of the instance. If
	// unspecified, this defaults to the zone configured in the provider.
	Zone interface{}
}

Input properties used for looking up and filtering InstanceIAMBinding resources.

type InstanceIAMMember added in v0.18.6

type InstanceIAMMember struct {
	// contains filtered or unexported fields
}

Three different resources help you manage your IAM policy for GCE instance. Each of these resources serves a different use case:

* `google_compute_instance_iam_policy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `google_compute_instance_iam_binding`: 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. * `google_compute_instance_iam_member`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

> **Note:** `google_compute_instance_iam_policy` **cannot** be used in conjunction with `google_compute_instance_iam_binding` and `google_compute_instance_iam_member` or they will fight over what your policy should be.

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

func GetInstanceIAMMember added in v0.18.6

func GetInstanceIAMMember(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceIAMMemberState, opts ...pulumi.ResourceOpt) (*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 added in v0.18.6

func NewInstanceIAMMember(ctx *pulumi.Context,
	name string, args *InstanceIAMMemberArgs, opts ...pulumi.ResourceOpt) (*InstanceIAMMember, error)

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

func (*InstanceIAMMember) Etag added in v0.18.6

(Computed) The etag of the instance's IAM policy.

func (*InstanceIAMMember) ID added in v0.18.6

ID is this resource's unique identifier assigned by its provider.

func (*InstanceIAMMember) InstanceName added in v0.18.6

func (r *InstanceIAMMember) InstanceName() *pulumi.StringOutput

The name of the instance.

func (*InstanceIAMMember) Member added in v0.18.6

func (r *InstanceIAMMember) Member() *pulumi.StringOutput

func (*InstanceIAMMember) Project added in v0.18.6

func (r *InstanceIAMMember) Project() *pulumi.StringOutput

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

func (*InstanceIAMMember) Role added in v0.18.6

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

func (*InstanceIAMMember) URN added in v0.18.6

URN is this resource's unique name assigned by Pulumi.

func (*InstanceIAMMember) Zone added in v0.18.6

The zone of the instance. If unspecified, this defaults to the zone configured in the provider.

type InstanceIAMMemberArgs added in v0.18.6

type InstanceIAMMemberArgs struct {
	// The name of the instance.
	InstanceName interface{}
	Member       interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The role that should be applied. Only one
	// `google_compute_instance_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The zone of the instance. If
	// unspecified, this defaults to the zone configured in the provider.
	Zone interface{}
}

The set of arguments for constructing a InstanceIAMMember resource.

type InstanceIAMMemberState added in v0.18.6

type InstanceIAMMemberState struct {
	// (Computed) The etag of the instance's IAM policy.
	Etag interface{}
	// The name of the instance.
	InstanceName interface{}
	Member       interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The role that should be applied. Only one
	// `google_compute_instance_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The zone of the instance. If
	// unspecified, this defaults to the zone configured in the provider.
	Zone interface{}
}

Input properties used for looking up and filtering InstanceIAMMember resources.

type InstanceIAMPolicy added in v0.18.6

type InstanceIAMPolicy struct {
	// contains filtered or unexported fields
}

Three different resources help you manage your IAM policy for GCE instance. Each of these resources serves a different use case:

* `google_compute_instance_iam_policy`: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached. * `google_compute_instance_iam_binding`: 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. * `google_compute_instance_iam_member`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

> **Note:** `google_compute_instance_iam_policy` **cannot** be used in conjunction with `google_compute_instance_iam_binding` and `google_compute_instance_iam_member` or they will fight over what your policy should be.

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

func GetInstanceIAMPolicy added in v0.18.6

func GetInstanceIAMPolicy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceIAMPolicyState, opts ...pulumi.ResourceOpt) (*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 added in v0.18.6

func NewInstanceIAMPolicy(ctx *pulumi.Context,
	name string, args *InstanceIAMPolicyArgs, opts ...pulumi.ResourceOpt) (*InstanceIAMPolicy, error)

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

func (*InstanceIAMPolicy) Etag added in v0.18.6

(Computed) The etag of the instance's IAM policy.

func (*InstanceIAMPolicy) ID added in v0.18.6

ID is this resource's unique identifier assigned by its provider.

func (*InstanceIAMPolicy) InstanceName added in v0.18.6

func (r *InstanceIAMPolicy) InstanceName() *pulumi.StringOutput

The name of the instance.

func (*InstanceIAMPolicy) PolicyData added in v0.18.6

func (r *InstanceIAMPolicy) PolicyData() *pulumi.StringOutput

The policy data generated by a `google_iam_policy` data source.

func (*InstanceIAMPolicy) Project added in v0.18.6

func (r *InstanceIAMPolicy) Project() *pulumi.StringOutput

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

func (*InstanceIAMPolicy) URN added in v0.18.6

URN is this resource's unique name assigned by Pulumi.

func (*InstanceIAMPolicy) Zone added in v0.18.6

The zone of the instance. If unspecified, this defaults to the zone configured in the provider.

type InstanceIAMPolicyArgs added in v0.18.6

type InstanceIAMPolicyArgs struct {
	// The name of the instance.
	InstanceName interface{}
	// The policy data generated by
	// a `google_iam_policy` data source.
	PolicyData interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The zone of the instance. If
	// unspecified, this defaults to the zone configured in the provider.
	Zone interface{}
}

The set of arguments for constructing a InstanceIAMPolicy resource.

type InstanceIAMPolicyState added in v0.18.6

type InstanceIAMPolicyState struct {
	// (Computed) The etag of the instance's IAM policy.
	Etag interface{}
	// The name of the instance.
	InstanceName interface{}
	// The policy data generated by
	// a `google_iam_policy` data source.
	PolicyData interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The zone of the instance. If
	// unspecified, this defaults to the zone configured in the provider.
	Zone interface{}
}

Input properties used for looking up and filtering InstanceIAMPolicy resources.

type InstanceState

type InstanceState struct {
	// If true, allows Terraform to stop the instance to update its properties.
	// If you try to update a property that requires stopping the instance without setting this field, the update will fail.
	AllowStoppingForUpdate interface{}
	// Additional disks to attach to the instance. Can be repeated multiple times for multiple disks. Structure is documented below.
	AttachedDisks interface{}
	// The boot disk for the instance.
	// Structure is documented below.
	BootDisk interface{}
	// Whether to allow sending and receiving of
	// packets with non-matching source or destination IPs.
	// This defaults to false.
	CanIpForward interface{}
	// The CPU platform used by this instance.
	CpuPlatform interface{}
	// Enable deletion protection on this instance. Defaults to false.
	// **Note:** you must disable deletion protection before removing the resource (e.g., via `terraform destroy`), or the instance cannot be deleted and the Terraform run will not complete successfully.
	DeletionProtection interface{}
	// A brief description of this resource.
	Description interface{}
	// List of the type and count of accelerator cards attached to the instance. Structure documented below.
	// **Note:** GPU accelerators can only be used with `on_host_maintenance` option set to TERMINATE.
	GuestAccelerators interface{}
	// A custom hostname for the instance. Must be a fully qualified DNS name and RFC-1035-valid.
	// Valid format is a series of labels 1-63 characters long matching the regular expression `a-z`, concatenated with periods.
	// The entire hostname must not exceed 253 characters. Changing this forces a new resource to be created.
	Hostname interface{}
	// The server-assigned unique identifier of this instance.
	InstanceId interface{}
	// The unique fingerprint of the labels.
	LabelFingerprint interface{}
	// A set of key/value label pairs to assign to the instance.
	Labels interface{}
	// The machine type to create.
	MachineType interface{}
	// Metadata key/value pairs to make available from
	// within the instance. Ssh keys attached in the Cloud Console will be removed.
	// Add them to your config in order to keep them attached to your instance.
	Metadata interface{}
	// The unique fingerprint of the metadata.
	MetadataFingerprint interface{}
	// An alternative to using the
	// startup-script metadata key, except this one forces the instance to be
	// recreated (thus re-running the script) if it is changed. This replaces the
	// startup-script metadata key on the created instance and thus the two
	// mechanisms are not allowed to be used simultaneously.
	MetadataStartupScript interface{}
	// Specifies a minimum CPU platform for the VM instance. Applicable values are the friendly names of CPU platforms, such as
	// `Intel Haswell` or `Intel Skylake`. See the complete list [here](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform).
	// **Note**: `allow_stopping_for_update` must be set to true in order to update this field.
	MinCpuPlatform interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// Networks to attach to the instance. This can
	// be specified multiple times. Structure is documented below.
	NetworkInterfaces interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The scheduling strategy to use. More details about
	// this configuration option are detailed below.
	Scheduling interface{}
	// Scratch disks to attach to the instance. This can be
	// specified multiple times for multiple scratch disks. Structure is documented below.
	ScratchDisks interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// Service account to attach to the instance.
	// Structure is documented below.
	// **Note**: `allow_stopping_for_update` must be set to true in order to update this field.
	ServiceAccount interface{}
	// Enable [Shielded VM](https://cloud.google.com/security/shielded-cloud/shielded-vm) on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below.
	// **Note**: `shielded_instance_config` can only be used with boot images with shielded vm support. See the complete list [here](https://cloud.google.com/compute/docs/images#shielded-images).
	ShieldedInstanceConfig interface{}
	// A list of tags to attach to the instance.
	Tags interface{}
	// The unique fingerprint of the tags.
	TagsFingerprint interface{}
	// The zone that the machine should be created in.
	Zone interface{}
}

Input properties used for looking up and filtering Instance resources.

type InstanceTemplate

type InstanceTemplate struct {
	// contains filtered or unexported fields
}

Manages a VM instance template resource within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/instance-templates) and [API](https://cloud.google.com/compute/docs/reference/latest/instanceTemplates).

func GetInstanceTemplate

func GetInstanceTemplate(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InstanceTemplateState, opts ...pulumi.ResourceOpt) (*InstanceTemplate, error)

GetInstanceTemplate gets an existing InstanceTemplate 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 NewInstanceTemplate

func NewInstanceTemplate(ctx *pulumi.Context,
	name string, args *InstanceTemplateArgs, opts ...pulumi.ResourceOpt) (*InstanceTemplate, error)

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

func (*InstanceTemplate) CanIpForward

func (r *InstanceTemplate) CanIpForward() *pulumi.BoolOutput

Whether to allow sending and receiving of packets with non-matching source or destination IPs. This defaults to false.

func (*InstanceTemplate) Description

func (r *InstanceTemplate) Description() *pulumi.StringOutput

A brief description of this resource.

func (*InstanceTemplate) Disks

func (r *InstanceTemplate) Disks() *pulumi.ArrayOutput

Disks to attach to instances created from this template. This can be specified multiple times for multiple disks. Structure is documented below.

func (*InstanceTemplate) GuestAccelerators

func (r *InstanceTemplate) GuestAccelerators() *pulumi.ArrayOutput

List of the type and count of accelerator cards attached to the instance. Structure documented below.

func (*InstanceTemplate) ID

func (r *InstanceTemplate) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*InstanceTemplate) InstanceDescription

func (r *InstanceTemplate) InstanceDescription() *pulumi.StringOutput

A brief description to use for instances created from this template.

func (*InstanceTemplate) Labels

func (r *InstanceTemplate) Labels() *pulumi.MapOutput

A set of key/value label pairs to assign to instances created from this template,

func (*InstanceTemplate) MachineType

func (r *InstanceTemplate) MachineType() *pulumi.StringOutput

The machine type to create.

func (*InstanceTemplate) Metadata

func (r *InstanceTemplate) Metadata() *pulumi.MapOutput

Metadata key/value pairs to make available from within instances created from this template.

func (*InstanceTemplate) MetadataFingerprint

func (r *InstanceTemplate) MetadataFingerprint() *pulumi.StringOutput

The unique fingerprint of the metadata.

func (*InstanceTemplate) MetadataStartupScript

func (r *InstanceTemplate) MetadataStartupScript() *pulumi.StringOutput

An alternative to using the startup-script metadata key, mostly to match the compute_instance resource. This replaces the startup-script metadata key on the created instance and thus the two mechanisms are not allowed to be used simultaneously.

func (*InstanceTemplate) MinCpuPlatform

func (r *InstanceTemplate) MinCpuPlatform() *pulumi.StringOutput

Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as `Intel Haswell` or `Intel Skylake`. See the complete list [here](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform).

func (*InstanceTemplate) Name

The name of the instance template. If you leave this blank, Terraform will auto-generate a unique name.

func (*InstanceTemplate) NamePrefix

func (r *InstanceTemplate) NamePrefix() *pulumi.StringOutput

Creates a unique name beginning with the specified prefix. Conflicts with `name`.

func (*InstanceTemplate) NetworkInterfaces

func (r *InstanceTemplate) NetworkInterfaces() *pulumi.ArrayOutput

Networks to attach to instances created from this template. This can be specified multiple times for multiple networks. Structure is documented below.

func (*InstanceTemplate) Project

func (r *InstanceTemplate) Project() *pulumi.StringOutput

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

func (*InstanceTemplate) Region

func (r *InstanceTemplate) Region() *pulumi.StringOutput

An instance template is a global resource that is not bound to a zone or a region. However, you can still specify some regional resources in an instance template, which restricts the template to the region where that resource resides. For example, a custom `subnetwork` resource is tied to a specific region. Defaults to the region of the Provider if no value is given.

func (*InstanceTemplate) Scheduling added in v0.18.6

func (r *InstanceTemplate) Scheduling() *pulumi.Output

The scheduling strategy to use. More details about this configuration option are detailed below.

func (r *InstanceTemplate) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*InstanceTemplate) ServiceAccount

func (r *InstanceTemplate) ServiceAccount() *pulumi.Output

Service account to attach to the instance. Structure is documented below.

func (*InstanceTemplate) ShieldedInstanceConfig added in v0.18.6

func (r *InstanceTemplate) ShieldedInstanceConfig() *pulumi.Output

Enable [Shielded VM](https://cloud.google.com/security/shielded-cloud/shielded-vm) on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. **Note**: `shielded_instance_config` can only be used with boot images with shielded vm support. See the complete list [here](https://cloud.google.com/compute/docs/images#shielded-images).

func (*InstanceTemplate) Tags

func (r *InstanceTemplate) Tags() *pulumi.ArrayOutput

Tags to attach to the instance.

func (*InstanceTemplate) TagsFingerprint

func (r *InstanceTemplate) TagsFingerprint() *pulumi.StringOutput

The unique fingerprint of the tags.

func (*InstanceTemplate) URN

func (r *InstanceTemplate) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type InstanceTemplateArgs

type InstanceTemplateArgs struct {
	// Whether to allow sending and receiving of
	// packets with non-matching source or destination IPs. This defaults to false.
	CanIpForward interface{}
	// A brief description of this resource.
	Description interface{}
	// Disks to attach to instances created from this template.
	// This can be specified multiple times for multiple disks. Structure is
	// documented below.
	Disks interface{}
	// List of the type and count of accelerator cards attached to the instance. Structure documented below.
	GuestAccelerators interface{}
	// A brief description to use for instances
	// created from this template.
	InstanceDescription interface{}
	// A set of key/value label pairs to assign to instances
	// created from this template,
	Labels interface{}
	// The machine type to create.
	MachineType interface{}
	// Metadata key/value pairs to make available from
	// within instances created from this template.
	Metadata interface{}
	// An alternative to using the
	// startup-script metadata key, mostly to match the compute_instance resource.
	// This replaces the startup-script metadata key on the created instance and
	// thus the two mechanisms are not allowed to be used simultaneously.
	MetadataStartupScript interface{}
	// Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as
	// `Intel Haswell` or `Intel Skylake`. See the complete list [here](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform).
	MinCpuPlatform interface{}
	// The name of the instance template. If you leave
	// this blank, Terraform will auto-generate a unique name.
	Name interface{}
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix interface{}
	// Networks to attach to instances created from
	// this template. This can be specified multiple times for multiple networks.
	// Structure is documented below.
	NetworkInterfaces interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// An instance template is a global resource that is not
	// bound to a zone or a region. However, you can still specify some regional
	// resources in an instance template, which restricts the template to the
	// region where that resource resides. For example, a custom `subnetwork`
	// resource is tied to a specific region. Defaults to the region of the
	// Provider if no value is given.
	Region interface{}
	// The scheduling strategy to use. More details about
	// this configuration option are detailed below.
	Scheduling interface{}
	// Service account to attach to the instance. Structure is documented below.
	ServiceAccount interface{}
	// Enable [Shielded VM](https://cloud.google.com/security/shielded-cloud/shielded-vm) on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below.
	// **Note**: `shielded_instance_config` can only be used with boot images with shielded vm support. See the complete list [here](https://cloud.google.com/compute/docs/images#shielded-images).
	ShieldedInstanceConfig interface{}
	// Tags to attach to the instance.
	Tags interface{}
}

The set of arguments for constructing a InstanceTemplate resource.

type InstanceTemplateState

type InstanceTemplateState struct {
	// Whether to allow sending and receiving of
	// packets with non-matching source or destination IPs. This defaults to false.
	CanIpForward interface{}
	// A brief description of this resource.
	Description interface{}
	// Disks to attach to instances created from this template.
	// This can be specified multiple times for multiple disks. Structure is
	// documented below.
	Disks interface{}
	// List of the type and count of accelerator cards attached to the instance. Structure documented below.
	GuestAccelerators interface{}
	// A brief description to use for instances
	// created from this template.
	InstanceDescription interface{}
	// A set of key/value label pairs to assign to instances
	// created from this template,
	Labels interface{}
	// The machine type to create.
	MachineType interface{}
	// Metadata key/value pairs to make available from
	// within instances created from this template.
	Metadata interface{}
	// The unique fingerprint of the metadata.
	MetadataFingerprint interface{}
	// An alternative to using the
	// startup-script metadata key, mostly to match the compute_instance resource.
	// This replaces the startup-script metadata key on the created instance and
	// thus the two mechanisms are not allowed to be used simultaneously.
	MetadataStartupScript interface{}
	// Specifies a minimum CPU platform. Applicable values are the friendly names of CPU platforms, such as
	// `Intel Haswell` or `Intel Skylake`. See the complete list [here](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform).
	MinCpuPlatform interface{}
	// The name of the instance template. If you leave
	// this blank, Terraform will auto-generate a unique name.
	Name interface{}
	// Creates a unique name beginning with the specified
	// prefix. Conflicts with `name`.
	NamePrefix interface{}
	// Networks to attach to instances created from
	// this template. This can be specified multiple times for multiple networks.
	// Structure is documented below.
	NetworkInterfaces interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// An instance template is a global resource that is not
	// bound to a zone or a region. However, you can still specify some regional
	// resources in an instance template, which restricts the template to the
	// region where that resource resides. For example, a custom `subnetwork`
	// resource is tied to a specific region. Defaults to the region of the
	// Provider if no value is given.
	Region interface{}
	// The scheduling strategy to use. More details about
	// this configuration option are detailed below.
	Scheduling interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// Service account to attach to the instance. Structure is documented below.
	ServiceAccount interface{}
	// Enable [Shielded VM](https://cloud.google.com/security/shielded-cloud/shielded-vm) on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below.
	// **Note**: `shielded_instance_config` can only be used with boot images with shielded vm support. See the complete list [here](https://cloud.google.com/compute/docs/images#shielded-images).
	ShieldedInstanceConfig interface{}
	// Tags to attach to the instance.
	Tags interface{}
	// The unique fingerprint of the tags.
	TagsFingerprint interface{}
}

Input properties used for looking up and filtering InstanceTemplate resources.

type InterconnectAttachment added in v0.16.1

type InterconnectAttachment struct {
	// contains filtered or unexported fields
}

Represents an InterconnectAttachment (VLAN attachment) resource. For more information, see Creating VLAN Attachments.

func GetInterconnectAttachment added in v0.16.1

func GetInterconnectAttachment(ctx *pulumi.Context,
	name string, id pulumi.ID, state *InterconnectAttachmentState, opts ...pulumi.ResourceOpt) (*InterconnectAttachment, error)

GetInterconnectAttachment gets an existing InterconnectAttachment 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 NewInterconnectAttachment added in v0.16.1

func NewInterconnectAttachment(ctx *pulumi.Context,
	name string, args *InterconnectAttachmentArgs, opts ...pulumi.ResourceOpt) (*InterconnectAttachment, error)

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

func (*InterconnectAttachment) CandidateSubnets added in v0.18.0

func (r *InterconnectAttachment) CandidateSubnets() *pulumi.ArrayOutput

func (*InterconnectAttachment) CloudRouterIpAddress added in v0.16.1

func (r *InterconnectAttachment) CloudRouterIpAddress() *pulumi.StringOutput

func (*InterconnectAttachment) CreationTimestamp added in v0.16.1

func (r *InterconnectAttachment) CreationTimestamp() *pulumi.StringOutput

func (*InterconnectAttachment) CustomerRouterIpAddress added in v0.16.1

func (r *InterconnectAttachment) CustomerRouterIpAddress() *pulumi.StringOutput

func (*InterconnectAttachment) Description added in v0.16.1

func (r *InterconnectAttachment) Description() *pulumi.StringOutput

func (*InterconnectAttachment) EdgeAvailabilityDomain added in v0.18.0

func (r *InterconnectAttachment) EdgeAvailabilityDomain() *pulumi.StringOutput

func (*InterconnectAttachment) GoogleReferenceId added in v0.16.1

func (r *InterconnectAttachment) GoogleReferenceId() *pulumi.StringOutput

func (*InterconnectAttachment) ID added in v0.16.1

ID is this resource's unique identifier assigned by its provider.

func (*InterconnectAttachment) Interconnect added in v0.16.1

func (r *InterconnectAttachment) Interconnect() *pulumi.StringOutput

func (*InterconnectAttachment) Name added in v0.16.1

func (*InterconnectAttachment) PairingKey added in v0.18.0

func (r *InterconnectAttachment) PairingKey() *pulumi.StringOutput

func (*InterconnectAttachment) PartnerAsn added in v0.18.0

func (r *InterconnectAttachment) PartnerAsn() *pulumi.StringOutput

func (*InterconnectAttachment) PrivateInterconnectInfo added in v0.16.1

func (r *InterconnectAttachment) PrivateInterconnectInfo() *pulumi.Output

func (*InterconnectAttachment) Project added in v0.16.1

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

func (*InterconnectAttachment) Region added in v0.16.1

func (*InterconnectAttachment) Router added in v0.16.1

The URI of the created resource.

func (*InterconnectAttachment) State added in v0.18.0

func (*InterconnectAttachment) Type added in v0.18.0

func (*InterconnectAttachment) URN added in v0.16.1

URN is this resource's unique name assigned by Pulumi.

func (*InterconnectAttachment) VlanTag8021q added in v0.18.0

func (r *InterconnectAttachment) VlanTag8021q() *pulumi.IntOutput

type InterconnectAttachmentArgs added in v0.16.1

type InterconnectAttachmentArgs struct {
	CandidateSubnets       interface{}
	Description            interface{}
	EdgeAvailabilityDomain interface{}
	Interconnect           interface{}
	Name                   interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project      interface{}
	Region       interface{}
	Router       interface{}
	Type         interface{}
	VlanTag8021q interface{}
}

The set of arguments for constructing a InterconnectAttachment resource.

type InterconnectAttachmentState added in v0.16.1

type InterconnectAttachmentState struct {
	CandidateSubnets        interface{}
	CloudRouterIpAddress    interface{}
	CreationTimestamp       interface{}
	CustomerRouterIpAddress interface{}
	Description             interface{}
	EdgeAvailabilityDomain  interface{}
	GoogleReferenceId       interface{}
	Interconnect            interface{}
	Name                    interface{}
	PairingKey              interface{}
	PartnerAsn              interface{}
	PrivateInterconnectInfo interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	Router  interface{}
	// The URI of the created resource.
	SelfLink     interface{}
	State        interface{}
	Type         interface{}
	VlanTag8021q interface{}
}

Input properties used for looking up and filtering InterconnectAttachment resources.

type MangedSslCertificate added in v0.18.0

type MangedSslCertificate struct {
	// contains filtered or unexported fields
}

An SslCertificate resource, used for HTTPS load balancing. This resource represents a certificate for which the certificate secrets are created and managed by Google.

For a resource where you provide the key, see the SSL Certificate resource.

> **Warning:** This resource is in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

To get more information about ManagedSslCertificate, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/sslCertificates) * How-to Guides

> **Warning:** This resource should be used with extreme caution! Provisioning an SSL certificate is complex. Ensure that you understand the lifecycle of a certificate before attempting complex tasks like cert rotation automatically. This resource will "return" as soon as the certificate object is created, but post-creation the certificate object will go through a "provisioning" process. The provisioning process can complete only when the domain name for which the certificate is created points to a target pool which, itself, points at the certificate. Depending on your DNS provider, this may take some time, and migrating from self-managed certificates to Google-managed certificates may entail some downtime while the certificate provisions.

In conclusion: Be extremely cautious.

func GetMangedSslCertificate added in v0.18.0

func GetMangedSslCertificate(ctx *pulumi.Context,
	name string, id pulumi.ID, state *MangedSslCertificateState, opts ...pulumi.ResourceOpt) (*MangedSslCertificate, error)

GetMangedSslCertificate gets an existing MangedSslCertificate 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 NewMangedSslCertificate added in v0.18.0

func NewMangedSslCertificate(ctx *pulumi.Context,
	name string, args *MangedSslCertificateArgs, opts ...pulumi.ResourceOpt) (*MangedSslCertificate, error)

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

func (*MangedSslCertificate) CertificateId added in v0.18.0

func (r *MangedSslCertificate) CertificateId() *pulumi.IntOutput

func (*MangedSslCertificate) CreationTimestamp added in v0.18.0

func (r *MangedSslCertificate) CreationTimestamp() *pulumi.StringOutput

func (*MangedSslCertificate) Description added in v0.18.0

func (r *MangedSslCertificate) Description() *pulumi.StringOutput

func (*MangedSslCertificate) ExpireTime added in v0.18.0

func (r *MangedSslCertificate) ExpireTime() *pulumi.StringOutput

func (*MangedSslCertificate) ID added in v0.18.0

ID is this resource's unique identifier assigned by its provider.

func (*MangedSslCertificate) Managed added in v0.18.0

func (r *MangedSslCertificate) Managed() *pulumi.Output

func (*MangedSslCertificate) Name added in v0.18.0

func (*MangedSslCertificate) Project added in v0.18.0

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

func (r *MangedSslCertificate) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*MangedSslCertificate) SubjectAlternativeNames added in v0.18.0

func (r *MangedSslCertificate) SubjectAlternativeNames() *pulumi.ArrayOutput

func (*MangedSslCertificate) Type added in v0.18.0

func (*MangedSslCertificate) URN added in v0.18.0

URN is this resource's unique name assigned by Pulumi.

type MangedSslCertificateArgs added in v0.18.0

type MangedSslCertificateArgs struct {
	CertificateId interface{}
	Description   interface{}
	Managed       interface{}
	Name          interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Type    interface{}
}

The set of arguments for constructing a MangedSslCertificate resource.

type MangedSslCertificateState added in v0.18.0

type MangedSslCertificateState struct {
	CertificateId     interface{}
	CreationTimestamp interface{}
	Description       interface{}
	ExpireTime        interface{}
	Managed           interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink                interface{}
	SubjectAlternativeNames interface{}
	Type                    interface{}
}

Input properties used for looking up and filtering MangedSslCertificate resources.

type Network

type Network struct {
	// contains filtered or unexported fields
}

Manages a VPC network or legacy network resource on GCP.

To get more information about Network, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/networks) * How-to Guides

func GetNetwork

func GetNetwork(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NetworkState, opts ...pulumi.ResourceOpt) (*Network, error)

GetNetwork gets an existing Network 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 NewNetwork

func NewNetwork(ctx *pulumi.Context,
	name string, args *NetworkArgs, opts ...pulumi.ResourceOpt) (*Network, error)

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

func (*Network) AutoCreateSubnetworks

func (r *Network) AutoCreateSubnetworks() *pulumi.BoolOutput

func (*Network) DeleteDefaultRoutesOnCreate added in v0.18.5

func (r *Network) DeleteDefaultRoutesOnCreate() *pulumi.BoolOutput

func (*Network) Description

func (r *Network) Description() *pulumi.StringOutput

func (*Network) GatewayIpv4

func (r *Network) GatewayIpv4() *pulumi.StringOutput

func (*Network) ID

func (r *Network) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Network) Ipv4Range

func (r *Network) Ipv4Range() *pulumi.StringOutput

func (*Network) Name

func (r *Network) Name() *pulumi.StringOutput

func (*Network) Project

func (r *Network) Project() *pulumi.StringOutput

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

func (*Network) RoutingMode

func (r *Network) RoutingMode() *pulumi.StringOutput
func (r *Network) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Network) URN

func (r *Network) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type NetworkArgs

type NetworkArgs struct {
	AutoCreateSubnetworks       interface{}
	DeleteDefaultRoutesOnCreate interface{}
	Description                 interface{}
	Ipv4Range                   interface{}
	Name                        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	RoutingMode interface{}
}

The set of arguments for constructing a Network resource.

type NetworkEndpoint added in v0.18.8

type NetworkEndpoint struct {
	// contains filtered or unexported fields
}

A Network endpoint represents a IP address and port combination that is part of a specific network endpoint group (NEG). NEGs are zonals collection of these endpoints for GCP resources within a single subnet. **NOTE**: Network endpoints cannot be created outside of a network endpoint group.

To get more information about NetworkEndpoint, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/networkEndpointGroups) * How-to Guides

func GetNetworkEndpoint added in v0.18.8

func GetNetworkEndpoint(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NetworkEndpointState, opts ...pulumi.ResourceOpt) (*NetworkEndpoint, error)

GetNetworkEndpoint gets an existing NetworkEndpoint 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 NewNetworkEndpoint added in v0.18.8

func NewNetworkEndpoint(ctx *pulumi.Context,
	name string, args *NetworkEndpointArgs, opts ...pulumi.ResourceOpt) (*NetworkEndpoint, error)

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

func (*NetworkEndpoint) ID added in v0.18.8

func (r *NetworkEndpoint) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*NetworkEndpoint) Instance added in v0.18.8

func (r *NetworkEndpoint) Instance() *pulumi.StringOutput

func (*NetworkEndpoint) IpAddress added in v0.18.8

func (r *NetworkEndpoint) IpAddress() *pulumi.StringOutput

func (*NetworkEndpoint) NetworkEndpointGroup added in v0.18.8

func (r *NetworkEndpoint) NetworkEndpointGroup() *pulumi.StringOutput

func (*NetworkEndpoint) Port added in v0.18.8

func (r *NetworkEndpoint) Port() *pulumi.IntOutput

func (*NetworkEndpoint) Project added in v0.18.8

func (r *NetworkEndpoint) Project() *pulumi.StringOutput

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

func (*NetworkEndpoint) URN added in v0.18.8

func (r *NetworkEndpoint) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*NetworkEndpoint) Zone added in v0.18.8

func (r *NetworkEndpoint) Zone() *pulumi.StringOutput

type NetworkEndpointArgs added in v0.18.8

type NetworkEndpointArgs struct {
	Instance             interface{}
	IpAddress            interface{}
	NetworkEndpointGroup interface{}
	Port                 interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Zone    interface{}
}

The set of arguments for constructing a NetworkEndpoint resource.

type NetworkEndpointGroup added in v0.18.6

type NetworkEndpointGroup struct {
	// contains filtered or unexported fields
}

Network endpoint groups (NEGs) are zonal resources that represent collections of IP address and port combinations for GCP resources within a single subnet. Each IP address and port combination is called a network endpoint.

Network endpoint groups can be used as backends in backend services for HTTP(S), TCP proxy, and SSL proxy load balancers. You cannot use NEGs as a backend with internal load balancers. Because NEG backends allow you to specify IP addresses and ports, you can distribute traffic in a granular fashion among applications or containers running within VM instances.

To get more information about NetworkEndpointGroup, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/networkEndpointGroups) * How-to Guides

func GetNetworkEndpointGroup added in v0.18.6

func GetNetworkEndpointGroup(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NetworkEndpointGroupState, opts ...pulumi.ResourceOpt) (*NetworkEndpointGroup, error)

GetNetworkEndpointGroup gets an existing NetworkEndpointGroup 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 NewNetworkEndpointGroup added in v0.18.6

func NewNetworkEndpointGroup(ctx *pulumi.Context,
	name string, args *NetworkEndpointGroupArgs, opts ...pulumi.ResourceOpt) (*NetworkEndpointGroup, error)

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

func (*NetworkEndpointGroup) DefaultPort added in v0.18.6

func (r *NetworkEndpointGroup) DefaultPort() *pulumi.IntOutput

func (*NetworkEndpointGroup) Description added in v0.18.6

func (r *NetworkEndpointGroup) Description() *pulumi.StringOutput

func (*NetworkEndpointGroup) ID added in v0.18.6

ID is this resource's unique identifier assigned by its provider.

func (*NetworkEndpointGroup) Name added in v0.18.6

func (*NetworkEndpointGroup) Network added in v0.18.6

func (*NetworkEndpointGroup) NetworkEndpointType added in v0.18.6

func (r *NetworkEndpointGroup) NetworkEndpointType() *pulumi.StringOutput

func (*NetworkEndpointGroup) Project added in v0.18.6

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

func (r *NetworkEndpointGroup) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*NetworkEndpointGroup) Size added in v0.18.6

func (*NetworkEndpointGroup) Subnetwork added in v0.18.6

func (r *NetworkEndpointGroup) Subnetwork() *pulumi.StringOutput

func (*NetworkEndpointGroup) URN added in v0.18.6

URN is this resource's unique name assigned by Pulumi.

func (*NetworkEndpointGroup) Zone added in v0.18.6

type NetworkEndpointGroupArgs added in v0.18.6

type NetworkEndpointGroupArgs struct {
	DefaultPort         interface{}
	Description         interface{}
	Name                interface{}
	Network             interface{}
	NetworkEndpointType interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project    interface{}
	Subnetwork interface{}
	Zone       interface{}
}

The set of arguments for constructing a NetworkEndpointGroup resource.

type NetworkEndpointGroupState added in v0.18.6

type NetworkEndpointGroupState struct {
	DefaultPort         interface{}
	Description         interface{}
	Name                interface{}
	Network             interface{}
	NetworkEndpointType interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink   interface{}
	Size       interface{}
	Subnetwork interface{}
	Zone       interface{}
}

Input properties used for looking up and filtering NetworkEndpointGroup resources.

type NetworkEndpointState added in v0.18.8

type NetworkEndpointState struct {
	Instance             interface{}
	IpAddress            interface{}
	NetworkEndpointGroup interface{}
	Port                 interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Zone    interface{}
}

Input properties used for looking up and filtering NetworkEndpoint resources.

type NetworkPeering

type NetworkPeering struct {
	// contains filtered or unexported fields
}

Manages a network peering within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/vpc/vpc-peering) and [API](https://cloud.google.com/compute/docs/reference/latest/networks).

> **Note:** Both network must create a peering with each other for the peering to be functional.

> **Note:** Subnets IP ranges across peered VPC networks cannot overlap.

func GetNetworkPeering

func GetNetworkPeering(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NetworkPeeringState, opts ...pulumi.ResourceOpt) (*NetworkPeering, error)

GetNetworkPeering gets an existing NetworkPeering 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 NewNetworkPeering

func NewNetworkPeering(ctx *pulumi.Context,
	name string, args *NetworkPeeringArgs, opts ...pulumi.ResourceOpt) (*NetworkPeering, error)

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

func (*NetworkPeering) AutoCreateRoutes

func (r *NetworkPeering) AutoCreateRoutes() *pulumi.BoolOutput

If set to `true`, the routes between the two networks will be created and managed automatically. Defaults to `true`.

func (*NetworkPeering) ExportCustomRoutes added in v0.18.7

func (r *NetworkPeering) ExportCustomRoutes() *pulumi.BoolOutput

func (*NetworkPeering) ID

func (r *NetworkPeering) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*NetworkPeering) ImportCustomRoutes added in v0.18.7

func (r *NetworkPeering) ImportCustomRoutes() *pulumi.BoolOutput

func (*NetworkPeering) Name

func (r *NetworkPeering) Name() *pulumi.StringOutput

Name of the peering.

func (*NetworkPeering) Network

func (r *NetworkPeering) Network() *pulumi.StringOutput

Resource link of the network to add a peering to.

func (*NetworkPeering) PeerNetwork

func (r *NetworkPeering) PeerNetwork() *pulumi.StringOutput

Resource link of the peer network.

func (*NetworkPeering) State

func (r *NetworkPeering) State() *pulumi.StringOutput

State for the peering.

func (*NetworkPeering) StateDetails

func (r *NetworkPeering) StateDetails() *pulumi.StringOutput

Details about the current state of the peering.

func (*NetworkPeering) URN

func (r *NetworkPeering) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type NetworkPeeringArgs

type NetworkPeeringArgs struct {
	// If set to `true`, the routes between the two networks will
	// be created and managed automatically. Defaults to `true`.
	AutoCreateRoutes   interface{}
	ExportCustomRoutes interface{}
	ImportCustomRoutes interface{}
	// Name of the peering.
	Name interface{}
	// Resource link of the network to add a peering to.
	Network interface{}
	// Resource link of the peer network.
	PeerNetwork interface{}
}

The set of arguments for constructing a NetworkPeering resource.

type NetworkPeeringState

type NetworkPeeringState struct {
	// If set to `true`, the routes between the two networks will
	// be created and managed automatically. Defaults to `true`.
	AutoCreateRoutes   interface{}
	ExportCustomRoutes interface{}
	ImportCustomRoutes interface{}
	// Name of the peering.
	Name interface{}
	// Resource link of the network to add a peering to.
	Network interface{}
	// Resource link of the peer network.
	PeerNetwork interface{}
	// State for the peering.
	State interface{}
	// Details about the current state of the peering.
	StateDetails interface{}
}

Input properties used for looking up and filtering NetworkPeering resources.

type NetworkState

type NetworkState struct {
	AutoCreateSubnetworks       interface{}
	DeleteDefaultRoutesOnCreate interface{}
	Description                 interface{}
	GatewayIpv4                 interface{}
	Ipv4Range                   interface{}
	Name                        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	RoutingMode interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering Network resources.

type NodeGroup added in v0.18.6

type NodeGroup struct {
	// contains filtered or unexported fields
}

Represents a NodeGroup resource to manage a group of sole-tenant nodes.

To get more information about NodeGroup, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/nodeGroups) * How-to Guides

> **Warning:** Due to limitations of the API, Terraform cannot update the number of nodes in a node group and changes to node group size either through Terraform config or through external changes will cause Terraform to delete and recreate the node group.

func GetNodeGroup added in v0.18.6

func GetNodeGroup(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NodeGroupState, opts ...pulumi.ResourceOpt) (*NodeGroup, error)

GetNodeGroup gets an existing NodeGroup 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 NewNodeGroup added in v0.18.6

func NewNodeGroup(ctx *pulumi.Context,
	name string, args *NodeGroupArgs, opts ...pulumi.ResourceOpt) (*NodeGroup, error)

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

func (*NodeGroup) CreationTimestamp added in v0.18.6

func (r *NodeGroup) CreationTimestamp() *pulumi.StringOutput

func (*NodeGroup) Description added in v0.18.6

func (r *NodeGroup) Description() *pulumi.StringOutput

func (*NodeGroup) ID added in v0.18.6

func (r *NodeGroup) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*NodeGroup) Name added in v0.18.6

func (r *NodeGroup) Name() *pulumi.StringOutput

func (*NodeGroup) NodeTemplate added in v0.18.6

func (r *NodeGroup) NodeTemplate() *pulumi.StringOutput

func (*NodeGroup) Project added in v0.18.6

func (r *NodeGroup) Project() *pulumi.StringOutput

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

func (r *NodeGroup) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*NodeGroup) Size added in v0.18.6

func (r *NodeGroup) Size() *pulumi.IntOutput

func (*NodeGroup) URN added in v0.18.6

func (r *NodeGroup) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*NodeGroup) Zone added in v0.18.6

func (r *NodeGroup) Zone() *pulumi.StringOutput

type NodeGroupArgs added in v0.18.6

type NodeGroupArgs struct {
	Description  interface{}
	Name         interface{}
	NodeTemplate interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Size    interface{}
	Zone    interface{}
}

The set of arguments for constructing a NodeGroup resource.

type NodeGroupState added in v0.18.6

type NodeGroupState struct {
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	NodeTemplate      interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Size     interface{}
	Zone     interface{}
}

Input properties used for looking up and filtering NodeGroup resources.

type NodeTemplate added in v0.18.6

type NodeTemplate struct {
	// contains filtered or unexported fields
}

Represents a NodeTemplate resource. Node templates specify properties for creating sole-tenant nodes, such as node type, vCPU and memory requirments, node affinity labels, and region.

To get more information about NodeTemplate, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/nodeTemplates) * How-to Guides

func GetNodeTemplate added in v0.18.6

func GetNodeTemplate(ctx *pulumi.Context,
	name string, id pulumi.ID, state *NodeTemplateState, opts ...pulumi.ResourceOpt) (*NodeTemplate, error)

GetNodeTemplate gets an existing NodeTemplate 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 NewNodeTemplate added in v0.18.6

func NewNodeTemplate(ctx *pulumi.Context,
	name string, args *NodeTemplateArgs, opts ...pulumi.ResourceOpt) (*NodeTemplate, error)

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

func (*NodeTemplate) CreationTimestamp added in v0.18.6

func (r *NodeTemplate) CreationTimestamp() *pulumi.StringOutput

func (*NodeTemplate) Description added in v0.18.6

func (r *NodeTemplate) Description() *pulumi.StringOutput

func (*NodeTemplate) ID added in v0.18.6

func (r *NodeTemplate) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*NodeTemplate) Name added in v0.18.6

func (r *NodeTemplate) Name() *pulumi.StringOutput

func (*NodeTemplate) NodeAffinityLabels added in v0.18.6

func (r *NodeTemplate) NodeAffinityLabels() *pulumi.MapOutput

func (*NodeTemplate) NodeType added in v0.18.6

func (r *NodeTemplate) NodeType() *pulumi.StringOutput

func (*NodeTemplate) NodeTypeFlexibility added in v0.18.6

func (r *NodeTemplate) NodeTypeFlexibility() *pulumi.Output

func (*NodeTemplate) Project added in v0.18.6

func (r *NodeTemplate) Project() *pulumi.StringOutput

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

func (*NodeTemplate) Region added in v0.18.6

func (r *NodeTemplate) Region() *pulumi.StringOutput
func (r *NodeTemplate) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*NodeTemplate) ServerBinding added in v0.18.6

func (r *NodeTemplate) ServerBinding() *pulumi.Output

func (*NodeTemplate) URN added in v0.18.6

func (r *NodeTemplate) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type NodeTemplateArgs added in v0.18.6

type NodeTemplateArgs struct {
	Description         interface{}
	Name                interface{}
	NodeAffinityLabels  interface{}
	NodeType            interface{}
	NodeTypeFlexibility interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project       interface{}
	Region        interface{}
	ServerBinding interface{}
}

The set of arguments for constructing a NodeTemplate resource.

type NodeTemplateState added in v0.18.6

type NodeTemplateState struct {
	CreationTimestamp   interface{}
	Description         interface{}
	Name                interface{}
	NodeAffinityLabels  interface{}
	NodeType            interface{}
	NodeTypeFlexibility interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink      interface{}
	ServerBinding interface{}
}

Input properties used for looking up and filtering NodeTemplate resources.

type ProjectDefaultNetworkTier added in v0.18.10

type ProjectDefaultNetworkTier struct {
	// contains filtered or unexported fields
}

Configures the Google Compute Engine [Default Network Tier](https://cloud.google.com/network-tiers/docs/using-network-service-tiers#setting_the_tier_for_all_resources_in_a_project) for a project.

For more information, see, [the Project API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/projects/setDefaultNetworkTier).

func GetProjectDefaultNetworkTier added in v0.18.10

func GetProjectDefaultNetworkTier(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ProjectDefaultNetworkTierState, opts ...pulumi.ResourceOpt) (*ProjectDefaultNetworkTier, error)

GetProjectDefaultNetworkTier gets an existing ProjectDefaultNetworkTier 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 NewProjectDefaultNetworkTier added in v0.18.10

func NewProjectDefaultNetworkTier(ctx *pulumi.Context,
	name string, args *ProjectDefaultNetworkTierArgs, opts ...pulumi.ResourceOpt) (*ProjectDefaultNetworkTier, error)

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

func (*ProjectDefaultNetworkTier) ID added in v0.18.10

ID is this resource's unique identifier assigned by its provider.

func (*ProjectDefaultNetworkTier) NetworkTier added in v0.18.10

func (r *ProjectDefaultNetworkTier) NetworkTier() *pulumi.StringOutput

The default network tier to be configured for the project. This field can take the following values: `PREMIUM` or `STANDARD`.

func (*ProjectDefaultNetworkTier) Project added in v0.18.10

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

func (*ProjectDefaultNetworkTier) URN added in v0.18.10

URN is this resource's unique name assigned by Pulumi.

type ProjectDefaultNetworkTierArgs added in v0.18.10

type ProjectDefaultNetworkTierArgs struct {
	// The default network tier to be configured for the project.
	// This field can take the following values: `PREMIUM` or `STANDARD`.
	NetworkTier interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

The set of arguments for constructing a ProjectDefaultNetworkTier resource.

type ProjectDefaultNetworkTierState added in v0.18.10

type ProjectDefaultNetworkTierState struct {
	// The default network tier to be configured for the project.
	// This field can take the following values: `PREMIUM` or `STANDARD`.
	NetworkTier interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

Input properties used for looking up and filtering ProjectDefaultNetworkTier resources.

type ProjectMetadata

type ProjectMetadata struct {
	// contains filtered or unexported fields
}

Authoritatively manages metadata common to all instances for a project in GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/storing-retrieving-metadata) and [API](https://cloud.google.com/compute/docs/reference/latest/projects/setCommonInstanceMetadata).

> **Note:** This resource manages all project-level metadata including project-level ssh keys. Keys unset in config but set on the server will be removed. If you want to manage only single key/value pairs within the project metadata rather than the entire set, then use google_compute_project_metadata_item.

func GetProjectMetadata

func GetProjectMetadata(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ProjectMetadataState, opts ...pulumi.ResourceOpt) (*ProjectMetadata, error)

GetProjectMetadata gets an existing ProjectMetadata 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 NewProjectMetadata

func NewProjectMetadata(ctx *pulumi.Context,
	name string, args *ProjectMetadataArgs, opts ...pulumi.ResourceOpt) (*ProjectMetadata, error)

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

func (*ProjectMetadata) ID

func (r *ProjectMetadata) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*ProjectMetadata) Metadata

func (r *ProjectMetadata) Metadata() *pulumi.MapOutput

A series of key value pairs.

func (*ProjectMetadata) Project

func (r *ProjectMetadata) Project() *pulumi.StringOutput

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

func (*ProjectMetadata) URN

func (r *ProjectMetadata) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ProjectMetadataArgs

type ProjectMetadataArgs struct {
	// A series of key value pairs.
	Metadata interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

The set of arguments for constructing a ProjectMetadata resource.

type ProjectMetadataItem

type ProjectMetadataItem struct {
	// contains filtered or unexported fields
}

Manages a single key/value pair on metadata common to all instances for a project in GCE. Using `google_compute_project_metadata_item` lets you manage a single key/value setting in Terraform rather than the entire project metadata map.

func GetProjectMetadataItem

func GetProjectMetadataItem(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ProjectMetadataItemState, opts ...pulumi.ResourceOpt) (*ProjectMetadataItem, error)

GetProjectMetadataItem gets an existing ProjectMetadataItem 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 NewProjectMetadataItem

func NewProjectMetadataItem(ctx *pulumi.Context,
	name string, args *ProjectMetadataItemArgs, opts ...pulumi.ResourceOpt) (*ProjectMetadataItem, error)

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

func (*ProjectMetadataItem) ID

ID is this resource's unique identifier assigned by its provider.

func (*ProjectMetadataItem) Key

The metadata key to set.

func (*ProjectMetadataItem) Project

func (r *ProjectMetadataItem) Project() *pulumi.StringOutput

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

func (*ProjectMetadataItem) URN

URN is this resource's unique name assigned by Pulumi.

func (*ProjectMetadataItem) Value

The value to set for the given metadata key.

type ProjectMetadataItemArgs

type ProjectMetadataItemArgs struct {
	// The metadata key to set.
	Key interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The value to set for the given metadata key.
	Value interface{}
}

The set of arguments for constructing a ProjectMetadataItem resource.

type ProjectMetadataItemState

type ProjectMetadataItemState struct {
	// The metadata key to set.
	Key interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The value to set for the given metadata key.
	Value interface{}
}

Input properties used for looking up and filtering ProjectMetadataItem resources.

type ProjectMetadataState

type ProjectMetadataState struct {
	// A series of key value pairs.
	Metadata interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
}

Input properties used for looking up and filtering ProjectMetadata resources.

type RegionAutoscaler

type RegionAutoscaler struct {
	// contains filtered or unexported fields
}

Represents an Autoscaler resource.

Autoscalers allow you to automatically scale virtual machine instances in managed instance groups according to an autoscaling policy that you define.

To get more information about RegionAutoscaler, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/regionAutoscalers) * How-to Guides

func GetRegionAutoscaler

func GetRegionAutoscaler(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RegionAutoscalerState, opts ...pulumi.ResourceOpt) (*RegionAutoscaler, error)

GetRegionAutoscaler gets an existing RegionAutoscaler 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 NewRegionAutoscaler

func NewRegionAutoscaler(ctx *pulumi.Context,
	name string, args *RegionAutoscalerArgs, opts ...pulumi.ResourceOpt) (*RegionAutoscaler, error)

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

func (*RegionAutoscaler) AutoscalingPolicy

func (r *RegionAutoscaler) AutoscalingPolicy() *pulumi.Output

func (*RegionAutoscaler) CreationTimestamp added in v0.15.0

func (r *RegionAutoscaler) CreationTimestamp() *pulumi.StringOutput

func (*RegionAutoscaler) Description

func (r *RegionAutoscaler) Description() *pulumi.StringOutput

func (*RegionAutoscaler) ID

func (r *RegionAutoscaler) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*RegionAutoscaler) Name

func (*RegionAutoscaler) Project

func (r *RegionAutoscaler) Project() *pulumi.StringOutput

func (*RegionAutoscaler) Region

func (r *RegionAutoscaler) Region() *pulumi.StringOutput
func (r *RegionAutoscaler) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*RegionAutoscaler) Target

func (r *RegionAutoscaler) Target() *pulumi.StringOutput

func (*RegionAutoscaler) URN

func (r *RegionAutoscaler) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type RegionAutoscalerArgs

type RegionAutoscalerArgs struct {
	AutoscalingPolicy interface{}
	Description       interface{}
	Name              interface{}
	Project           interface{}
	Region            interface{}
	Target            interface{}
}

The set of arguments for constructing a RegionAutoscaler resource.

type RegionAutoscalerState

type RegionAutoscalerState struct {
	AutoscalingPolicy interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	Project           interface{}
	Region            interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Target   interface{}
}

Input properties used for looking up and filtering RegionAutoscaler resources.

type RegionBackendService

type RegionBackendService struct {
	// contains filtered or unexported fields
}

A Region Backend Service defines a regionally-scoped group of virtual machines that will serve traffic for load balancing.

Region backend services can only be used when using internal load balancing. For external load balancing, use a global backend service instead.

To get more information about RegionBackendService, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/latest/regionBackendServices) * How-to Guides

func GetRegionBackendService

func GetRegionBackendService(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RegionBackendServiceState, opts ...pulumi.ResourceOpt) (*RegionBackendService, error)

GetRegionBackendService gets an existing RegionBackendService 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 NewRegionBackendService

func NewRegionBackendService(ctx *pulumi.Context,
	name string, args *RegionBackendServiceArgs, opts ...pulumi.ResourceOpt) (*RegionBackendService, error)

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

func (*RegionBackendService) Backends

func (r *RegionBackendService) Backends() *pulumi.ArrayOutput

func (*RegionBackendService) ConnectionDrainingTimeoutSec

func (r *RegionBackendService) ConnectionDrainingTimeoutSec() *pulumi.IntOutput

func (*RegionBackendService) Description

func (r *RegionBackendService) Description() *pulumi.StringOutput

func (*RegionBackendService) FailoverPolicy added in v0.18.7

func (r *RegionBackendService) FailoverPolicy() *pulumi.Output

func (*RegionBackendService) Fingerprint

func (r *RegionBackendService) Fingerprint() *pulumi.StringOutput

func (*RegionBackendService) HealthChecks

func (r *RegionBackendService) HealthChecks() *pulumi.StringOutput

func (*RegionBackendService) ID

ID is this resource's unique identifier assigned by its provider.

func (*RegionBackendService) LoadBalancingScheme added in v0.18.6

func (r *RegionBackendService) LoadBalancingScheme() *pulumi.StringOutput

func (*RegionBackendService) Name

func (*RegionBackendService) Project

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

func (*RegionBackendService) Protocol

func (r *RegionBackendService) Protocol() *pulumi.StringOutput

func (*RegionBackendService) Region

func (r *RegionBackendService) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*RegionBackendService) SessionAffinity

func (r *RegionBackendService) SessionAffinity() *pulumi.StringOutput

func (*RegionBackendService) TimeoutSec

func (r *RegionBackendService) TimeoutSec() *pulumi.IntOutput

func (*RegionBackendService) URN

URN is this resource's unique name assigned by Pulumi.

type RegionBackendServiceArgs

type RegionBackendServiceArgs struct {
	Backends                     interface{}
	ConnectionDrainingTimeoutSec interface{}
	Description                  interface{}
	FailoverPolicy               interface{}
	HealthChecks                 interface{}
	LoadBalancingScheme          interface{}
	Name                         interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project         interface{}
	Protocol        interface{}
	Region          interface{}
	SessionAffinity interface{}
	TimeoutSec      interface{}
}

The set of arguments for constructing a RegionBackendService resource.

type RegionBackendServiceState

type RegionBackendServiceState struct {
	Backends                     interface{}
	ConnectionDrainingTimeoutSec interface{}
	Description                  interface{}
	FailoverPolicy               interface{}
	Fingerprint                  interface{}
	HealthChecks                 interface{}
	LoadBalancingScheme          interface{}
	Name                         interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project  interface{}
	Protocol interface{}
	Region   interface{}
	// The URI of the created resource.
	SelfLink        interface{}
	SessionAffinity interface{}
	TimeoutSec      interface{}
}

Input properties used for looking up and filtering RegionBackendService resources.

type RegionDisk added in v0.16.0

type RegionDisk struct {
	// contains filtered or unexported fields
}

Persistent disks are durable storage devices that function similarly to the physical disks in a desktop or a server. Compute Engine manages the hardware behind these devices to ensure data redundancy and optimize performance for you. Persistent disks are available as either standard hard disk drives (HDD) or solid-state drives (SSD).

Persistent disks are located independently from your virtual machine instances, so you can detach or move persistent disks to keep your data even after you delete your instances. Persistent disk performance scales automatically with size, so you can resize your existing persistent disks or add more persistent disks to an instance to meet your performance and storage space requirements.

Add a persistent disk to your instance when you need reliable and affordable storage with consistent performance characteristics.

To get more information about RegionDisk, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/regionDisks) * How-to Guides

> **Warning:** All arguments including the disk encryption key will be stored in the raw state as plain-text. [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).

func GetRegionDisk added in v0.16.0

func GetRegionDisk(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RegionDiskState, opts ...pulumi.ResourceOpt) (*RegionDisk, error)

GetRegionDisk gets an existing RegionDisk 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 NewRegionDisk added in v0.16.0

func NewRegionDisk(ctx *pulumi.Context,
	name string, args *RegionDiskArgs, opts ...pulumi.ResourceOpt) (*RegionDisk, error)

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

func (*RegionDisk) CreationTimestamp added in v0.16.0

func (r *RegionDisk) CreationTimestamp() *pulumi.StringOutput

func (*RegionDisk) Description added in v0.16.0

func (r *RegionDisk) Description() *pulumi.StringOutput

func (*RegionDisk) DiskEncryptionKey added in v0.16.0

func (r *RegionDisk) DiskEncryptionKey() *pulumi.Output

func (*RegionDisk) ID added in v0.16.0

func (r *RegionDisk) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*RegionDisk) LabelFingerprint added in v0.16.0

func (r *RegionDisk) LabelFingerprint() *pulumi.StringOutput

func (*RegionDisk) Labels added in v0.16.0

func (r *RegionDisk) Labels() *pulumi.MapOutput

func (*RegionDisk) LastAttachTimestamp added in v0.16.0

func (r *RegionDisk) LastAttachTimestamp() *pulumi.StringOutput

func (*RegionDisk) LastDetachTimestamp added in v0.16.0

func (r *RegionDisk) LastDetachTimestamp() *pulumi.StringOutput

func (*RegionDisk) Name added in v0.16.0

func (r *RegionDisk) Name() *pulumi.StringOutput

func (*RegionDisk) PhysicalBlockSizeBytes added in v0.18.1

func (r *RegionDisk) PhysicalBlockSizeBytes() *pulumi.IntOutput

func (*RegionDisk) Project added in v0.16.0

func (r *RegionDisk) Project() *pulumi.StringOutput

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

func (*RegionDisk) Region added in v0.16.0

func (r *RegionDisk) Region() *pulumi.StringOutput

func (*RegionDisk) ReplicaZones added in v0.16.0

func (r *RegionDisk) ReplicaZones() *pulumi.ArrayOutput
func (r *RegionDisk) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*RegionDisk) Size added in v0.16.0

func (r *RegionDisk) Size() *pulumi.IntOutput

func (*RegionDisk) Snapshot added in v0.16.0

func (r *RegionDisk) Snapshot() *pulumi.StringOutput

func (*RegionDisk) SourceSnapshotEncryptionKey added in v0.16.0

func (r *RegionDisk) SourceSnapshotEncryptionKey() *pulumi.Output

func (*RegionDisk) SourceSnapshotId added in v0.16.0

func (r *RegionDisk) SourceSnapshotId() *pulumi.StringOutput

func (*RegionDisk) Type added in v0.16.0

func (r *RegionDisk) Type() *pulumi.StringOutput

func (*RegionDisk) URN added in v0.16.0

func (r *RegionDisk) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*RegionDisk) Users added in v0.16.0

func (r *RegionDisk) Users() *pulumi.ArrayOutput

type RegionDiskArgs added in v0.16.0

type RegionDiskArgs struct {
	Description            interface{}
	DiskEncryptionKey      interface{}
	Labels                 interface{}
	Name                   interface{}
	PhysicalBlockSizeBytes interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                     interface{}
	Region                      interface{}
	ReplicaZones                interface{}
	Size                        interface{}
	Snapshot                    interface{}
	SourceSnapshotEncryptionKey interface{}
	Type                        interface{}
}

The set of arguments for constructing a RegionDisk resource.

type RegionDiskState added in v0.16.0

type RegionDiskState struct {
	CreationTimestamp      interface{}
	Description            interface{}
	DiskEncryptionKey      interface{}
	LabelFingerprint       interface{}
	Labels                 interface{}
	LastAttachTimestamp    interface{}
	LastDetachTimestamp    interface{}
	Name                   interface{}
	PhysicalBlockSizeBytes interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project      interface{}
	Region       interface{}
	ReplicaZones interface{}
	// The URI of the created resource.
	SelfLink                    interface{}
	Size                        interface{}
	Snapshot                    interface{}
	SourceSnapshotEncryptionKey interface{}
	SourceSnapshotId            interface{}
	Type                        interface{}
	Users                       interface{}
}

Input properties used for looking up and filtering RegionDisk resources.

type RegionInstanceGroupManager

type RegionInstanceGroupManager struct {
	// contains filtered or unexported fields
}

The Google Compute Engine Regional Instance Group Manager API creates and manages pools of homogeneous Compute Engine virtual machine instances from a common instance template. For more information, see [the official documentation](https://cloud.google.com/compute/docs/instance-groups/distributing-instances-with-regional-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/latest/regionInstanceGroupManagers)

> **Note:** Use [google_compute_instance_group_manager](https://www.terraform.io/docs/providers/google/r/compute_instance_group_manager.html) to create a single-zone instance group manager.

func GetRegionInstanceGroupManager

func GetRegionInstanceGroupManager(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RegionInstanceGroupManagerState, opts ...pulumi.ResourceOpt) (*RegionInstanceGroupManager, error)

GetRegionInstanceGroupManager gets an existing RegionInstanceGroupManager 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 NewRegionInstanceGroupManager

func NewRegionInstanceGroupManager(ctx *pulumi.Context,
	name string, args *RegionInstanceGroupManagerArgs, opts ...pulumi.ResourceOpt) (*RegionInstanceGroupManager, error)

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

func (*RegionInstanceGroupManager) AutoHealingPolicies

func (r *RegionInstanceGroupManager) AutoHealingPolicies() *pulumi.Output

) The autohealing policies for this managed instance group. You can specify only one value. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances#monitoring_groups).

func (*RegionInstanceGroupManager) BaseInstanceName

func (r *RegionInstanceGroupManager) BaseInstanceName() *pulumi.StringOutput

The base instance name to use for instances in this group. The value must be a valid [RFC1035](https://www.ietf.org/rfc/rfc1035.txt) name. Supported characters are lowercase letters, numbers, and hyphens (-). Instances are named by appending a hyphen and a random four-character string to the base instance name.

func (*RegionInstanceGroupManager) Description

An optional textual description of the instance group manager.

func (*RegionInstanceGroupManager) DistributionPolicyZones

func (r *RegionInstanceGroupManager) DistributionPolicyZones() *pulumi.ArrayOutput

The distribution policy for this managed instance group. You can specify one or more values. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/distributing-instances-with-regional-instance-groups#selectingzones). - - -

func (*RegionInstanceGroupManager) Fingerprint

The fingerprint of the instance group manager.

func (*RegionInstanceGroupManager) ID

ID is this resource's unique identifier assigned by its provider.

func (*RegionInstanceGroupManager) InstanceGroup

func (r *RegionInstanceGroupManager) InstanceGroup() *pulumi.StringOutput

The full URL of the instance group created by the manager.

func (*RegionInstanceGroupManager) Name

The name of the instance group manager. Must be 1-63 characters long and comply with [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters include lowercase letters, numbers, and hyphens.

func (*RegionInstanceGroupManager) NamedPorts

The named port configuration. See the section below for details on configuration.

func (*RegionInstanceGroupManager) Project

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

func (*RegionInstanceGroupManager) Region

The region where the managed instance group resides.

The URL of the created resource.

func (*RegionInstanceGroupManager) TargetPools

func (r *RegionInstanceGroupManager) TargetPools() *pulumi.ArrayOutput

The full URL of all target pools to which new instances in the group are added. Updating the target pools attribute does not affect existing instances.

func (*RegionInstanceGroupManager) TargetSize

func (r *RegionInstanceGroupManager) TargetSize() *pulumi.IntOutput

The target number of running instances for this managed instance group. This value should always be explicitly set unless this resource is attached to an autoscaler, in which case it should never be set. Defaults to `0`.

func (*RegionInstanceGroupManager) URN

URN is this resource's unique name assigned by Pulumi.

func (*RegionInstanceGroupManager) UpdatePolicy added in v0.18.0

func (r *RegionInstanceGroupManager) UpdatePolicy() *pulumi.Output

) The update policy for this managed instance group. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/updating-managed-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/regionInstanceGroupManagers/patch)

func (*RegionInstanceGroupManager) Versions added in v0.16.0

) Application versions managed by this instance group. Each version deals with a specific instance template, allowing canary release scenarios. Structure is documented below.

func (*RegionInstanceGroupManager) WaitForInstances

func (r *RegionInstanceGroupManager) WaitForInstances() *pulumi.BoolOutput

Whether to wait for all instances to be created/updated before returning. Note that if this is set to true and the operation does not succeed, Terraform will continue trying until it times out.

type RegionInstanceGroupManagerArgs

type RegionInstanceGroupManagerArgs struct {
	// ) The autohealing policies for this managed instance
	// group. You can specify only one value. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances#monitoring_groups).
	AutoHealingPolicies interface{}
	// The base instance name to use for
	// instances in this group. The value must be a valid
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt) name. Supported characters
	// are lowercase letters, numbers, and hyphens (-). Instances are named by
	// appending a hyphen and a random four-character string to the base instance
	// name.
	BaseInstanceName interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The distribution policy for this managed instance
	// group. You can specify one or more values. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/distributing-instances-with-regional-instance-groups#selectingzones).
	// - - -
	DistributionPolicyZones interface{}
	// The name of the instance group manager. Must be 1-63
	// characters long and comply with
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
	// include lowercase letters, numbers, and hyphens.
	Name interface{}
	// The named port configuration. See the section below
	// for details on configuration.
	NamedPorts interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region where the managed instance group resides.
	Region interface{}
	// The full URL of all target pools to which new
	// instances in the group are added. Updating the target pools attribute does
	// not affect existing instances.
	TargetPools interface{}
	// The target number of running instances for this managed
	// instance group. This value should always be explicitly set unless this resource is attached to
	// an autoscaler, in which case it should never be set. Defaults to `0`.
	TargetSize interface{}
	// ) The update policy for this managed instance group. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/updating-managed-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/regionInstanceGroupManagers/patch)
	UpdatePolicy interface{}
	// ) Application versions managed by this instance group. Each
	// version deals with a specific instance template, allowing canary release scenarios.
	// Structure is documented below.
	Versions interface{}
	// Whether to wait for all instances to be created/updated before
	// returning. Note that if this is set to true and the operation does not succeed, Terraform will
	// continue trying until it times out.
	WaitForInstances interface{}
}

The set of arguments for constructing a RegionInstanceGroupManager resource.

type RegionInstanceGroupManagerState

type RegionInstanceGroupManagerState struct {
	// ) The autohealing policies for this managed instance
	// group. You can specify only one value. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/creating-groups-of-managed-instances#monitoring_groups).
	AutoHealingPolicies interface{}
	// The base instance name to use for
	// instances in this group. The value must be a valid
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt) name. Supported characters
	// are lowercase letters, numbers, and hyphens (-). Instances are named by
	// appending a hyphen and a random four-character string to the base instance
	// name.
	BaseInstanceName interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The distribution policy for this managed instance
	// group. You can specify one or more values. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/distributing-instances-with-regional-instance-groups#selectingzones).
	// - - -
	DistributionPolicyZones interface{}
	// The fingerprint of the instance group manager.
	Fingerprint interface{}
	// The full URL of the instance group created by the manager.
	InstanceGroup interface{}
	// The name of the instance group manager. Must be 1-63
	// characters long and comply with
	// [RFC1035](https://www.ietf.org/rfc/rfc1035.txt). Supported characters
	// include lowercase letters, numbers, and hyphens.
	Name interface{}
	// The named port configuration. See the section below
	// for details on configuration.
	NamedPorts interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region where the managed instance group resides.
	Region interface{}
	// The URL of the created resource.
	SelfLink interface{}
	// The full URL of all target pools to which new
	// instances in the group are added. Updating the target pools attribute does
	// not affect existing instances.
	TargetPools interface{}
	// The target number of running instances for this managed
	// instance group. This value should always be explicitly set unless this resource is attached to
	// an autoscaler, in which case it should never be set. Defaults to `0`.
	TargetSize interface{}
	// ) The update policy for this managed instance group. Structure is documented below. For more information, see the [official documentation](https://cloud.google.com/compute/docs/instance-groups/updating-managed-instance-groups) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/regionInstanceGroupManagers/patch)
	UpdatePolicy interface{}
	// ) Application versions managed by this instance group. Each
	// version deals with a specific instance template, allowing canary release scenarios.
	// Structure is documented below.
	Versions interface{}
	// Whether to wait for all instances to be created/updated before
	// returning. Note that if this is set to true and the operation does not succeed, Terraform will
	// continue trying until it times out.
	WaitForInstances interface{}
}

Input properties used for looking up and filtering RegionInstanceGroupManager resources.

type ResourcePolicy added in v0.18.8

type ResourcePolicy struct {
	// contains filtered or unexported fields
}

A policy that can be attached to a resource to specify or schedule actions on that resource.

> **Warning:** This resource is in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

func GetResourcePolicy added in v0.18.8

func GetResourcePolicy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *ResourcePolicyState, opts ...pulumi.ResourceOpt) (*ResourcePolicy, error)

GetResourcePolicy gets an existing ResourcePolicy 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 NewResourcePolicy added in v0.18.8

func NewResourcePolicy(ctx *pulumi.Context,
	name string, args *ResourcePolicyArgs, opts ...pulumi.ResourceOpt) (*ResourcePolicy, error)

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

func (*ResourcePolicy) ID added in v0.18.8

func (r *ResourcePolicy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*ResourcePolicy) Name added in v0.18.8

func (r *ResourcePolicy) Name() *pulumi.StringOutput

func (*ResourcePolicy) Project added in v0.18.8

func (r *ResourcePolicy) Project() *pulumi.StringOutput

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

func (*ResourcePolicy) Region added in v0.18.8

func (r *ResourcePolicy) Region() *pulumi.StringOutput
func (r *ResourcePolicy) SelfLink() *pulumi.StringOutput

func (*ResourcePolicy) SnapshotSchedulePolicy added in v0.18.8

func (r *ResourcePolicy) SnapshotSchedulePolicy() *pulumi.Output

func (*ResourcePolicy) URN added in v0.18.8

func (r *ResourcePolicy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type ResourcePolicyArgs added in v0.18.8

type ResourcePolicyArgs struct {
	Name interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                interface{}
	Region                 interface{}
	SnapshotSchedulePolicy interface{}
}

The set of arguments for constructing a ResourcePolicy resource.

type ResourcePolicyState added in v0.18.8

type ResourcePolicyState struct {
	Name interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                interface{}
	Region                 interface{}
	SelfLink               interface{}
	SnapshotSchedulePolicy interface{}
}

Input properties used for looking up and filtering ResourcePolicy resources.

type Route

type Route struct {
	// contains filtered or unexported fields
}

Represents a Route resource.

A route is a rule that specifies how certain packets should be handled by the virtual network. Routes are associated with virtual machines by tag, and the set of routes for a particular virtual machine is called its routing table. For each packet leaving a virtual machine, the system searches that virtual machine's routing table for a single best matching route.

Routes match packets by destination IP address, preferring smaller or more specific ranges over larger ones. If there is a tie, the system selects the route with the smallest priority value. If there is still a tie, it uses the layer three and four packet headers to select just one of the remaining matching routes. The packet is then forwarded as specified by the next_hop field of the winning route -- either to another virtual machine destination, a virtual machine gateway or a Compute Engine-operated gateway. Packets that do not match any route in the sending virtual machine's routing table will be dropped.

A Route resource must have exactly one specification of either nextHopGateway, nextHopInstance, nextHopIp, or nextHopVpnTunnel.

To get more information about Route, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routes) * How-to Guides

func GetRoute

func GetRoute(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RouteState, opts ...pulumi.ResourceOpt) (*Route, error)

GetRoute gets an existing Route 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 NewRoute

func NewRoute(ctx *pulumi.Context,
	name string, args *RouteArgs, opts ...pulumi.ResourceOpt) (*Route, error)

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

func (*Route) Description

func (r *Route) Description() *pulumi.StringOutput

func (*Route) DestRange

func (r *Route) DestRange() *pulumi.StringOutput

func (*Route) ID

func (r *Route) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Route) Name

func (r *Route) Name() *pulumi.StringOutput

func (*Route) Network

func (r *Route) Network() *pulumi.StringOutput

func (*Route) NextHopGateway

func (r *Route) NextHopGateway() *pulumi.StringOutput

func (*Route) NextHopInstance

func (r *Route) NextHopInstance() *pulumi.StringOutput

func (*Route) NextHopInstanceZone

func (r *Route) NextHopInstanceZone() *pulumi.StringOutput

(Optional when `next_hop_instance` is specified) The zone of the instance specified in `next_hop_instance`. Omit if `next_hop_instance` is specified as a URL.

func (*Route) NextHopIp

func (r *Route) NextHopIp() *pulumi.StringOutput

func (*Route) NextHopNetwork

func (r *Route) NextHopNetwork() *pulumi.StringOutput

func (*Route) NextHopVpnTunnel

func (r *Route) NextHopVpnTunnel() *pulumi.StringOutput

func (*Route) Priority

func (r *Route) Priority() *pulumi.IntOutput

func (*Route) Project

func (r *Route) Project() *pulumi.StringOutput

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

func (r *Route) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Route) Tags

func (r *Route) Tags() *pulumi.ArrayOutput

func (*Route) URN

func (r *Route) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type RouteArgs

type RouteArgs struct {
	Description     interface{}
	DestRange       interface{}
	Name            interface{}
	Network         interface{}
	NextHopGateway  interface{}
	NextHopInstance interface{}
	// (Optional when `next_hop_instance` is
	// specified)  The zone of the instance specified in
	// `next_hop_instance`.  Omit if `next_hop_instance` is specified as
	// a URL.
	NextHopInstanceZone interface{}
	NextHopIp           interface{}
	NextHopVpnTunnel    interface{}
	Priority            interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Tags    interface{}
}

The set of arguments for constructing a Route resource.

type RouteState

type RouteState struct {
	Description     interface{}
	DestRange       interface{}
	Name            interface{}
	Network         interface{}
	NextHopGateway  interface{}
	NextHopInstance interface{}
	// (Optional when `next_hop_instance` is
	// specified)  The zone of the instance specified in
	// `next_hop_instance`.  Omit if `next_hop_instance` is specified as
	// a URL.
	NextHopInstanceZone interface{}
	NextHopIp           interface{}
	NextHopNetwork      interface{}
	NextHopVpnTunnel    interface{}
	Priority            interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Tags     interface{}
}

Input properties used for looking up and filtering Route resources.

type Router

type Router struct {
	// contains filtered or unexported fields
}

Represents a Router resource.

To get more information about Router, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/routers) * How-to Guides

func GetRouter

func GetRouter(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RouterState, opts ...pulumi.ResourceOpt) (*Router, error)

GetRouter gets an existing Router 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 NewRouter

func NewRouter(ctx *pulumi.Context,
	name string, args *RouterArgs, opts ...pulumi.ResourceOpt) (*Router, error)

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

func (*Router) Bgp

func (r *Router) Bgp() *pulumi.Output

func (*Router) CreationTimestamp added in v0.15.0

func (r *Router) CreationTimestamp() *pulumi.StringOutput

func (*Router) Description

func (r *Router) Description() *pulumi.StringOutput

func (*Router) ID

func (r *Router) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Router) Name

func (r *Router) Name() *pulumi.StringOutput

func (*Router) Network

func (r *Router) Network() *pulumi.StringOutput

func (*Router) Project

func (r *Router) Project() *pulumi.StringOutput

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

func (*Router) Region

func (r *Router) Region() *pulumi.StringOutput
func (r *Router) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Router) URN

func (r *Router) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type RouterArgs

type RouterArgs struct {
	Bgp         interface{}
	Description interface{}
	Name        interface{}
	Network     interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
}

The set of arguments for constructing a Router resource.

type RouterInterface

type RouterInterface struct {
	// contains filtered or unexported fields
}

Manages a Cloud Router interface. For more information see [the official documentation](https://cloud.google.com/compute/docs/cloudrouter) and [API](https://cloud.google.com/compute/docs/reference/latest/routers).

func GetRouterInterface

func GetRouterInterface(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RouterInterfaceState, opts ...pulumi.ResourceOpt) (*RouterInterface, error)

GetRouterInterface gets an existing RouterInterface 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 NewRouterInterface

func NewRouterInterface(ctx *pulumi.Context,
	name string, args *RouterInterfaceArgs, opts ...pulumi.ResourceOpt) (*RouterInterface, error)

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

func (*RouterInterface) ID

func (r *RouterInterface) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*RouterInterface) InterconnectAttachment added in v0.18.7

func (r *RouterInterface) InterconnectAttachment() *pulumi.StringOutput

The name or resource link to the VLAN interconnect for this interface. Changing this forces a new interface to be created. Only one of `vpn_tunnel` and `interconnect_attachment` can be specified.

func (*RouterInterface) IpRange

func (r *RouterInterface) IpRange() *pulumi.StringOutput

IP address and range of the interface. The IP range must be in the RFC3927 link-local IP space. Changing this forces a new interface to be created.

func (*RouterInterface) Name

func (r *RouterInterface) Name() *pulumi.StringOutput

A unique name for the interface, required by GCE. Changing this forces a new interface to be created.

func (*RouterInterface) Project

func (r *RouterInterface) Project() *pulumi.StringOutput

The ID of the project in which this interface's router belongs. If it is not provided, the provider project is used. Changing this forces a new interface to be created.

func (*RouterInterface) Region

func (r *RouterInterface) Region() *pulumi.StringOutput

The region this interface's router sits in. If not specified, the project region will be used. Changing this forces a new interface to be created.

func (*RouterInterface) Router

func (r *RouterInterface) Router() *pulumi.StringOutput

The name of the router this interface will be attached to. Changing this forces a new interface to be created.

func (*RouterInterface) URN

func (r *RouterInterface) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*RouterInterface) VpnTunnel

func (r *RouterInterface) VpnTunnel() *pulumi.StringOutput

The name or resource link to the VPN tunnel this interface will be linked to. Changing this forces a new interface to be created. Only one of `vpn_tunnel` and `interconnect_attachment` can be specified.

type RouterInterfaceArgs

type RouterInterfaceArgs struct {
	// The name or resource link to the
	// VLAN interconnect for this interface. Changing this forces a new interface to
	// be created. Only one of `vpn_tunnel` and `interconnect_attachment` can be
	// specified.
	InterconnectAttachment interface{}
	// IP address and range of the interface. The IP range must be
	// in the RFC3927 link-local IP space. Changing this forces a new interface to be created.
	IpRange interface{}
	// A unique name for the interface, required by GCE. Changing
	// this forces a new interface to be created.
	Name interface{}
	// The ID of the project in which this interface's router belongs. If it
	// is not provided, the provider project is used. Changing this forces a new interface to be created.
	Project interface{}
	// The region this interface's router sits in. If not specified,
	// the project region will be used. Changing this forces a new interface to be
	// created.
	Region interface{}
	// The name of the router this interface will be attached to.
	// Changing this forces a new interface to be created.
	Router interface{}
	// The name or resource link to the VPN tunnel this
	// interface will be linked to. Changing this forces a new interface to be created. Only
	// one of `vpn_tunnel` and `interconnect_attachment` can be specified.
	VpnTunnel interface{}
}

The set of arguments for constructing a RouterInterface resource.

type RouterInterfaceState

type RouterInterfaceState struct {
	// The name or resource link to the
	// VLAN interconnect for this interface. Changing this forces a new interface to
	// be created. Only one of `vpn_tunnel` and `interconnect_attachment` can be
	// specified.
	InterconnectAttachment interface{}
	// IP address and range of the interface. The IP range must be
	// in the RFC3927 link-local IP space. Changing this forces a new interface to be created.
	IpRange interface{}
	// A unique name for the interface, required by GCE. Changing
	// this forces a new interface to be created.
	Name interface{}
	// The ID of the project in which this interface's router belongs. If it
	// is not provided, the provider project is used. Changing this forces a new interface to be created.
	Project interface{}
	// The region this interface's router sits in. If not specified,
	// the project region will be used. Changing this forces a new interface to be
	// created.
	Region interface{}
	// The name of the router this interface will be attached to.
	// Changing this forces a new interface to be created.
	Router interface{}
	// The name or resource link to the VPN tunnel this
	// interface will be linked to. Changing this forces a new interface to be created. Only
	// one of `vpn_tunnel` and `interconnect_attachment` can be specified.
	VpnTunnel interface{}
}

Input properties used for looking up and filtering RouterInterface resources.

type RouterNat added in v0.16.4

type RouterNat struct {
	// contains filtered or unexported fields
}

Manages a Cloud NAT. For more information see [the official documentation](https://cloud.google.com/nat/docs/overview) and [API](https://cloud.google.com/compute/docs/reference/rest/beta/routers).

func GetRouterNat added in v0.16.4

func GetRouterNat(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RouterNatState, opts ...pulumi.ResourceOpt) (*RouterNat, error)

GetRouterNat gets an existing RouterNat 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 NewRouterNat added in v0.16.4

func NewRouterNat(ctx *pulumi.Context,
	name string, args *RouterNatArgs, opts ...pulumi.ResourceOpt) (*RouterNat, error)

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

func (*RouterNat) ID added in v0.16.4

func (r *RouterNat) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*RouterNat) IcmpIdleTimeoutSec added in v0.16.4

func (r *RouterNat) IcmpIdleTimeoutSec() *pulumi.IntOutput

Timeout (in seconds) for ICMP connections. Defaults to 30s if not set. Changing this forces a new NAT to be created.

func (*RouterNat) LogConfig added in v0.18.7

func (r *RouterNat) LogConfig() *pulumi.Output

func (*RouterNat) MinPortsPerVm added in v0.16.4

func (r *RouterNat) MinPortsPerVm() *pulumi.IntOutput

Minimum number of ports allocated to a VM from this NAT config. If not set, a default number of ports is allocated to a VM. Changing this forces a new NAT to be created.

func (*RouterNat) Name added in v0.16.4

func (r *RouterNat) Name() *pulumi.StringOutput

A unique name for Cloud NAT, required by GCE. Changing this forces a new NAT to be created.

func (*RouterNat) NatIpAllocateOption added in v0.16.4

func (r *RouterNat) NatIpAllocateOption() *pulumi.StringOutput

How external IPs should be allocated for this NAT. Valid values are `AUTO_ONLY` or `MANUAL_ONLY`. Changing this forces a new NAT to be created.

func (*RouterNat) NatIps added in v0.16.4

func (r *RouterNat) NatIps() *pulumi.ArrayOutput

List of `self_link`s of external IPs. Only valid if `nat_ip_allocate_option` is set to `MANUAL_ONLY`. Changing this forces a new NAT to be created.

func (*RouterNat) Project added in v0.16.4

func (r *RouterNat) Project() *pulumi.StringOutput

The ID of the project in which this NAT's router belongs. If it is not provided, the provider project is used. Changing this forces a new NAT to be created.

func (*RouterNat) Region added in v0.16.4

func (r *RouterNat) Region() *pulumi.StringOutput

The region this NAT's router sits in. If not specified, the project region will be used. Changing this forces a new NAT to be created.

func (*RouterNat) Router added in v0.16.4

func (r *RouterNat) Router() *pulumi.StringOutput

The name of the router in which this NAT will be configured. Changing this forces a new NAT to be created.

func (*RouterNat) SourceSubnetworkIpRangesToNat added in v0.16.4

func (r *RouterNat) SourceSubnetworkIpRangesToNat() *pulumi.StringOutput

How NAT should be configured per Subnetwork. Valid values include: `ALL_SUBNETWORKS_ALL_IP_RANGES`, `ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES`, `LIST_OF_SUBNETWORKS`. Changing this forces a new NAT to be created.

func (*RouterNat) Subnetworks added in v0.16.4

func (r *RouterNat) Subnetworks() *pulumi.ArrayOutput

One or more subnetwork NAT configurations. Only used if `source_subnetwork_ip_ranges_to_nat` is set to `LIST_OF_SUBNETWORKS`. See the section below for details on configuration.

func (*RouterNat) TcpEstablishedIdleTimeoutSec added in v0.16.4

func (r *RouterNat) TcpEstablishedIdleTimeoutSec() *pulumi.IntOutput

Timeout (in seconds) for TCP established connections. Defaults to 1200s if not set. Changing this forces a new NAT to be created.

func (*RouterNat) TcpTransitoryIdleTimeoutSec added in v0.16.4

func (r *RouterNat) TcpTransitoryIdleTimeoutSec() *pulumi.IntOutput

Timeout (in seconds) for TCP transitory connections. Defaults to 30s if not set. Changing this forces a new NAT to be created.

func (*RouterNat) URN added in v0.16.4

func (r *RouterNat) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*RouterNat) UdpIdleTimeoutSec added in v0.16.4

func (r *RouterNat) UdpIdleTimeoutSec() *pulumi.IntOutput

Timeout (in seconds) for UDP connections. Defaults to 30s if not set. Changing this forces a new NAT to be created.

type RouterNatArgs added in v0.16.4

type RouterNatArgs struct {
	// Timeout (in seconds) for ICMP connections.
	// Defaults to 30s if not set. Changing this forces a new NAT to be created.
	IcmpIdleTimeoutSec interface{}
	LogConfig          interface{}
	// Minimum number of ports allocated to a VM
	// from this NAT config. If not set, a default number of ports is allocated to a VM.
	// Changing this forces a new NAT to be created.
	MinPortsPerVm interface{}
	// A unique name for Cloud NAT, required by GCE. Changing
	// this forces a new NAT to be created.
	Name interface{}
	// How external IPs should be allocated for
	// this NAT. Valid values are `AUTO_ONLY` or `MANUAL_ONLY`. Changing this forces
	// a new NAT to be created.
	NatIpAllocateOption interface{}
	// List of `self_link`s of external IPs. Only valid if
	// `nat_ip_allocate_option` is set to `MANUAL_ONLY`. Changing this forces a
	// new NAT to be created.
	NatIps interface{}
	// The ID of the project in which this NAT's router belongs. If it
	// is not provided, the provider project is used. Changing this forces a new NAT to be created.
	Project interface{}
	// The region this NAT's router sits in. If not specified,
	// the project region will be used. Changing this forces a new NAT to be
	// created.
	Region interface{}
	// The name of the router in which this NAT will be configured.
	// Changing this forces a new NAT to be created.
	Router interface{}
	// How NAT should be configured
	// per Subnetwork. Valid values include: `ALL_SUBNETWORKS_ALL_IP_RANGES`,
	// `ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES`, `LIST_OF_SUBNETWORKS`. Changing
	// this forces a new NAT to be created.
	SourceSubnetworkIpRangesToNat interface{}
	// One or more subnetwork NAT configurations. Only used
	// if `source_subnetwork_ip_ranges_to_nat` is set to `LIST_OF_SUBNETWORKS`. See
	// the section below for details on configuration.
	Subnetworks interface{}
	// Timeout (in seconds) for TCP
	// established connections. Defaults to 1200s if not set. Changing this forces
	// a new NAT to be created.
	TcpEstablishedIdleTimeoutSec interface{}
	// Timeout (in seconds) for TCP
	// transitory connections. Defaults to 30s if not set. Changing this forces a
	// new NAT to be created.
	TcpTransitoryIdleTimeoutSec interface{}
	// Timeout (in seconds) for UDP connections.
	// Defaults to 30s if not set. Changing this forces a new NAT to be created.
	UdpIdleTimeoutSec interface{}
}

The set of arguments for constructing a RouterNat resource.

type RouterNatState added in v0.16.4

type RouterNatState struct {
	// Timeout (in seconds) for ICMP connections.
	// Defaults to 30s if not set. Changing this forces a new NAT to be created.
	IcmpIdleTimeoutSec interface{}
	LogConfig          interface{}
	// Minimum number of ports allocated to a VM
	// from this NAT config. If not set, a default number of ports is allocated to a VM.
	// Changing this forces a new NAT to be created.
	MinPortsPerVm interface{}
	// A unique name for Cloud NAT, required by GCE. Changing
	// this forces a new NAT to be created.
	Name interface{}
	// How external IPs should be allocated for
	// this NAT. Valid values are `AUTO_ONLY` or `MANUAL_ONLY`. Changing this forces
	// a new NAT to be created.
	NatIpAllocateOption interface{}
	// List of `self_link`s of external IPs. Only valid if
	// `nat_ip_allocate_option` is set to `MANUAL_ONLY`. Changing this forces a
	// new NAT to be created.
	NatIps interface{}
	// The ID of the project in which this NAT's router belongs. If it
	// is not provided, the provider project is used. Changing this forces a new NAT to be created.
	Project interface{}
	// The region this NAT's router sits in. If not specified,
	// the project region will be used. Changing this forces a new NAT to be
	// created.
	Region interface{}
	// The name of the router in which this NAT will be configured.
	// Changing this forces a new NAT to be created.
	Router interface{}
	// How NAT should be configured
	// per Subnetwork. Valid values include: `ALL_SUBNETWORKS_ALL_IP_RANGES`,
	// `ALL_SUBNETWORKS_ALL_PRIMARY_IP_RANGES`, `LIST_OF_SUBNETWORKS`. Changing
	// this forces a new NAT to be created.
	SourceSubnetworkIpRangesToNat interface{}
	// One or more subnetwork NAT configurations. Only used
	// if `source_subnetwork_ip_ranges_to_nat` is set to `LIST_OF_SUBNETWORKS`. See
	// the section below for details on configuration.
	Subnetworks interface{}
	// Timeout (in seconds) for TCP
	// established connections. Defaults to 1200s if not set. Changing this forces
	// a new NAT to be created.
	TcpEstablishedIdleTimeoutSec interface{}
	// Timeout (in seconds) for TCP
	// transitory connections. Defaults to 30s if not set. Changing this forces a
	// new NAT to be created.
	TcpTransitoryIdleTimeoutSec interface{}
	// Timeout (in seconds) for UDP connections.
	// Defaults to 30s if not set. Changing this forces a new NAT to be created.
	UdpIdleTimeoutSec interface{}
}

Input properties used for looking up and filtering RouterNat resources.

type RouterPeer

type RouterPeer struct {
	// contains filtered or unexported fields
}

Manages a Cloud Router BGP peer. For more information see [the official documentation](https://cloud.google.com/compute/docs/cloudrouter) and [API](https://cloud.google.com/compute/docs/reference/latest/routers).

func GetRouterPeer

func GetRouterPeer(ctx *pulumi.Context,
	name string, id pulumi.ID, state *RouterPeerState, opts ...pulumi.ResourceOpt) (*RouterPeer, error)

GetRouterPeer gets an existing RouterPeer 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 NewRouterPeer

func NewRouterPeer(ctx *pulumi.Context,
	name string, args *RouterPeerArgs, opts ...pulumi.ResourceOpt) (*RouterPeer, error)

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

func (*RouterPeer) AdvertisedRoutePriority

func (r *RouterPeer) AdvertisedRoutePriority() *pulumi.IntOutput

The priority of routes advertised to this BGP peer. Changing this forces a new peer to be created.

func (*RouterPeer) ID

func (r *RouterPeer) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*RouterPeer) Interface

func (r *RouterPeer) Interface() *pulumi.StringOutput

The name of the interface the BGP peer is associated with. Changing this forces a new peer to be created.

func (*RouterPeer) IpAddress

func (r *RouterPeer) IpAddress() *pulumi.StringOutput

IP address of the interface inside Google Cloud Platform.

func (*RouterPeer) Name

func (r *RouterPeer) Name() *pulumi.StringOutput

A unique name for BGP peer, required by GCE. Changing this forces a new peer to be created.

func (*RouterPeer) PeerAsn

func (r *RouterPeer) PeerAsn() *pulumi.IntOutput

Peer BGP Autonomous System Number (ASN). Changing this forces a new peer to be created.

func (*RouterPeer) PeerIpAddress

func (r *RouterPeer) PeerIpAddress() *pulumi.StringOutput

IP address of the BGP interface outside Google Cloud. Changing this forces a new peer to be created.

func (*RouterPeer) Project

func (r *RouterPeer) Project() *pulumi.StringOutput

The ID of the project in which this peer's router belongs. If it is not provided, the provider project is used. Changing this forces a new peer to be created.

func (*RouterPeer) Region

func (r *RouterPeer) Region() *pulumi.StringOutput

The region this peer's router sits in. If not specified, the project region will be used. Changing this forces a new peer to be created.

func (*RouterPeer) Router

func (r *RouterPeer) Router() *pulumi.StringOutput

The name of the router in which this BGP peer will be configured. Changing this forces a new peer to be created.

func (*RouterPeer) URN

func (r *RouterPeer) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type RouterPeerArgs

type RouterPeerArgs struct {
	// The priority of routes advertised to this BGP peer.
	// Changing this forces a new peer to be created.
	AdvertisedRoutePriority interface{}
	// The name of the interface the BGP peer is associated with.
	// Changing this forces a new peer to be created.
	Interface interface{}
	// A unique name for BGP peer, required by GCE. Changing
	// this forces a new peer to be created.
	Name interface{}
	// Peer BGP Autonomous System Number (ASN).
	// Changing this forces a new peer to be created.
	PeerAsn interface{}
	// IP address of the BGP interface outside Google Cloud.
	// Changing this forces a new peer to be created.
	PeerIpAddress interface{}
	// The ID of the project in which this peer's router belongs. If it
	// is not provided, the provider project is used. Changing this forces a new peer to be created.
	Project interface{}
	// The region this peer's router sits in. If not specified,
	// the project region will be used. Changing this forces a new peer to be
	// created.
	Region interface{}
	// The name of the router in which this BGP peer will be configured.
	// Changing this forces a new peer to be created.
	Router interface{}
}

The set of arguments for constructing a RouterPeer resource.

type RouterPeerState

type RouterPeerState struct {
	// The priority of routes advertised to this BGP peer.
	// Changing this forces a new peer to be created.
	AdvertisedRoutePriority interface{}
	// The name of the interface the BGP peer is associated with.
	// Changing this forces a new peer to be created.
	Interface interface{}
	// IP address of the interface inside Google Cloud Platform.
	IpAddress interface{}
	// A unique name for BGP peer, required by GCE. Changing
	// this forces a new peer to be created.
	Name interface{}
	// Peer BGP Autonomous System Number (ASN).
	// Changing this forces a new peer to be created.
	PeerAsn interface{}
	// IP address of the BGP interface outside Google Cloud.
	// Changing this forces a new peer to be created.
	PeerIpAddress interface{}
	// The ID of the project in which this peer's router belongs. If it
	// is not provided, the provider project is used. Changing this forces a new peer to be created.
	Project interface{}
	// The region this peer's router sits in. If not specified,
	// the project region will be used. Changing this forces a new peer to be
	// created.
	Region interface{}
	// The name of the router in which this BGP peer will be configured.
	// Changing this forces a new peer to be created.
	Router interface{}
}

Input properties used for looking up and filtering RouterPeer resources.

type RouterState

type RouterState struct {
	Bgp               interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	Network           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering Router resources.

type SSLCertificate

type SSLCertificate struct {
	// contains filtered or unexported fields
}

An SslCertificate resource, used for HTTPS load balancing. This resource provides a mechanism to upload an SSL key and certificate to the load balancer to serve secure connections from the user.

To get more information about SslCertificate, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/sslCertificates) * How-to Guides

func GetSSLCertificate

func GetSSLCertificate(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SSLCertificateState, opts ...pulumi.ResourceOpt) (*SSLCertificate, error)

GetSSLCertificate gets an existing SSLCertificate 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 NewSSLCertificate

func NewSSLCertificate(ctx *pulumi.Context,
	name string, args *SSLCertificateArgs, opts ...pulumi.ResourceOpt) (*SSLCertificate, error)

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

func (*SSLCertificate) Certificate

func (r *SSLCertificate) Certificate() *pulumi.StringOutput

func (*SSLCertificate) CertificateId

func (r *SSLCertificate) CertificateId() *pulumi.IntOutput

func (*SSLCertificate) CreationTimestamp added in v0.16.0

func (r *SSLCertificate) CreationTimestamp() *pulumi.StringOutput

func (*SSLCertificate) Description

func (r *SSLCertificate) Description() *pulumi.StringOutput

func (*SSLCertificate) ID

func (r *SSLCertificate) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*SSLCertificate) Name

func (r *SSLCertificate) Name() *pulumi.StringOutput

func (*SSLCertificate) NamePrefix

func (r *SSLCertificate) NamePrefix() *pulumi.StringOutput

Creates a unique name beginning with the specified prefix. Conflicts with `name`.

func (*SSLCertificate) PrivateKey

func (r *SSLCertificate) PrivateKey() *pulumi.StringOutput

func (*SSLCertificate) Project

func (r *SSLCertificate) Project() *pulumi.StringOutput

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

func (r *SSLCertificate) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*SSLCertificate) URN

func (r *SSLCertificate) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type SSLCertificateArgs

type SSLCertificateArgs struct {
	Certificate interface{}
	Description interface{}
	Name        interface{}
	// Creates a unique name beginning with the
	// specified prefix. Conflicts with `name`.
	NamePrefix interface{}
	PrivateKey interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
}

The set of arguments for constructing a SSLCertificate resource.

type SSLCertificateState

type SSLCertificateState struct {
	Certificate       interface{}
	CertificateId     interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	// Creates a unique name beginning with the
	// specified prefix. Conflicts with `name`.
	NamePrefix interface{}
	PrivateKey interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering SSLCertificate resources.

type SSLPolicy added in v0.15.0

type SSLPolicy struct {
	// contains filtered or unexported fields
}

Represents a SSL policy. SSL policies give you the ability to control the features of SSL that your SSL proxy or HTTPS load balancer negotiates.

To get more information about SslPolicy, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/sslPolicies) * How-to Guides

func GetSSLPolicy added in v0.15.0

func GetSSLPolicy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SSLPolicyState, opts ...pulumi.ResourceOpt) (*SSLPolicy, error)

GetSSLPolicy gets an existing SSLPolicy 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 NewSSLPolicy added in v0.15.0

func NewSSLPolicy(ctx *pulumi.Context,
	name string, args *SSLPolicyArgs, opts ...pulumi.ResourceOpt) (*SSLPolicy, error)

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

func (*SSLPolicy) CreationTimestamp added in v0.15.0

func (r *SSLPolicy) CreationTimestamp() *pulumi.StringOutput

func (*SSLPolicy) CustomFeatures added in v0.15.0

func (r *SSLPolicy) CustomFeatures() *pulumi.ArrayOutput

func (*SSLPolicy) Description added in v0.15.0

func (r *SSLPolicy) Description() *pulumi.StringOutput

func (*SSLPolicy) EnabledFeatures added in v0.15.0

func (r *SSLPolicy) EnabledFeatures() *pulumi.ArrayOutput

func (*SSLPolicy) Fingerprint added in v0.15.0

func (r *SSLPolicy) Fingerprint() *pulumi.StringOutput

func (*SSLPolicy) ID added in v0.15.0

func (r *SSLPolicy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*SSLPolicy) MinTlsVersion added in v0.15.0

func (r *SSLPolicy) MinTlsVersion() *pulumi.StringOutput

func (*SSLPolicy) Name added in v0.15.0

func (r *SSLPolicy) Name() *pulumi.StringOutput

func (*SSLPolicy) Profile added in v0.15.0

func (r *SSLPolicy) Profile() *pulumi.StringOutput

func (*SSLPolicy) Project added in v0.15.0

func (r *SSLPolicy) Project() *pulumi.StringOutput

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

func (r *SSLPolicy) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*SSLPolicy) URN added in v0.15.0

func (r *SSLPolicy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type SSLPolicyArgs added in v0.15.0

type SSLPolicyArgs struct {
	CustomFeatures interface{}
	Description    interface{}
	MinTlsVersion  interface{}
	Name           interface{}
	Profile        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
}

The set of arguments for constructing a SSLPolicy resource.

type SSLPolicyState added in v0.15.0

type SSLPolicyState struct {
	CreationTimestamp interface{}
	CustomFeatures    interface{}
	Description       interface{}
	EnabledFeatures   interface{}
	Fingerprint       interface{}
	MinTlsVersion     interface{}
	Name              interface{}
	Profile           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering SSLPolicy resources.

type SecurityPolicy added in v0.15.0

type SecurityPolicy struct {
	// contains filtered or unexported fields
}

A Security Policy defines an IP blacklist or whitelist that protects load balanced Google Cloud services by denying or permitting traffic from specified IP ranges. For more information see the [official documentation](https://cloud.google.com/armor/docs/configure-security-policies) and the [API](https://cloud.google.com/compute/docs/reference/rest/beta/securityPolicies).

Security Policy is used by [`google_compute_backend_service`](https://www.terraform.io/docs/providers/google/r/compute_backend_service.html#security_policy).

func GetSecurityPolicy added in v0.15.0

func GetSecurityPolicy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SecurityPolicyState, opts ...pulumi.ResourceOpt) (*SecurityPolicy, error)

GetSecurityPolicy gets an existing SecurityPolicy 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 NewSecurityPolicy added in v0.15.0

func NewSecurityPolicy(ctx *pulumi.Context,
	name string, args *SecurityPolicyArgs, opts ...pulumi.ResourceOpt) (*SecurityPolicy, error)

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

func (*SecurityPolicy) Description added in v0.15.0

func (r *SecurityPolicy) Description() *pulumi.StringOutput

An optional description of this security policy. Max size is 2048.

func (*SecurityPolicy) Fingerprint added in v0.15.0

func (r *SecurityPolicy) Fingerprint() *pulumi.StringOutput

Fingerprint of this resource.

func (*SecurityPolicy) ID added in v0.15.0

func (r *SecurityPolicy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*SecurityPolicy) Name added in v0.15.0

func (r *SecurityPolicy) Name() *pulumi.StringOutput

The name of the security policy.

func (*SecurityPolicy) Project added in v0.15.0

func (r *SecurityPolicy) Project() *pulumi.StringOutput

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

func (*SecurityPolicy) Rules added in v0.15.0

func (r *SecurityPolicy) Rules() *pulumi.ArrayOutput

The set of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match "\*"). If no rules are provided when creating a security policy, a default rule with action "allow" will be added. Structure is documented below.

func (r *SecurityPolicy) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*SecurityPolicy) URN added in v0.15.0

func (r *SecurityPolicy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type SecurityPolicyArgs added in v0.15.0

type SecurityPolicyArgs struct {
	// An optional description of this security policy. Max size is 2048.
	Description interface{}
	// The name of the security policy.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The set of rules that belong to this policy. There must always be a default
	// rule (rule with priority 2147483647 and match "\*"). If no rules are provided when creating a
	// security policy, a default rule with action "allow" will be added. Structure is documented below.
	Rules interface{}
}

The set of arguments for constructing a SecurityPolicy resource.

type SecurityPolicyState added in v0.15.0

type SecurityPolicyState struct {
	// An optional description of this security policy. Max size is 2048.
	Description interface{}
	// Fingerprint of this resource.
	Fingerprint interface{}
	// The name of the security policy.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The set of rules that belong to this policy. There must always be a default
	// rule (rule with priority 2147483647 and match "\*"). If no rules are provided when creating a
	// security policy, a default rule with action "allow" will be added. Structure is documented below.
	Rules interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering SecurityPolicy resources.

type SecurityScanConfig added in v0.18.6

type SecurityScanConfig struct {
	// contains filtered or unexported fields
}

A ScanConfig resource contains the configurations to launch a scan.

> **Warning:** This resource is in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

To get more information about ScanConfig, see:

* [API documentation](https://cloud.google.com/security-scanner/docs/reference/rest/v1beta/projects.scanConfigs) * How-to Guides

func GetSecurityScanConfig added in v0.18.6

func GetSecurityScanConfig(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SecurityScanConfigState, opts ...pulumi.ResourceOpt) (*SecurityScanConfig, error)

GetSecurityScanConfig gets an existing SecurityScanConfig 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 NewSecurityScanConfig added in v0.18.6

func NewSecurityScanConfig(ctx *pulumi.Context,
	name string, args *SecurityScanConfigArgs, opts ...pulumi.ResourceOpt) (*SecurityScanConfig, error)

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

func (*SecurityScanConfig) Authentication added in v0.18.6

func (r *SecurityScanConfig) Authentication() *pulumi.Output

func (*SecurityScanConfig) BlacklistPatterns added in v0.18.6

func (r *SecurityScanConfig) BlacklistPatterns() *pulumi.ArrayOutput

func (*SecurityScanConfig) DisplayName added in v0.18.6

func (r *SecurityScanConfig) DisplayName() *pulumi.StringOutput

func (*SecurityScanConfig) ExportToSecurityCommandCenter added in v0.18.6

func (r *SecurityScanConfig) ExportToSecurityCommandCenter() *pulumi.StringOutput

func (*SecurityScanConfig) ID added in v0.18.6

ID is this resource's unique identifier assigned by its provider.

func (*SecurityScanConfig) MaxQps added in v0.18.6

func (r *SecurityScanConfig) MaxQps() *pulumi.IntOutput

func (*SecurityScanConfig) Name added in v0.18.6

func (*SecurityScanConfig) Project added in v0.18.6

func (r *SecurityScanConfig) Project() *pulumi.StringOutput

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

func (*SecurityScanConfig) Schedule added in v0.18.6

func (r *SecurityScanConfig) Schedule() *pulumi.Output

func (*SecurityScanConfig) StartingUrls added in v0.18.6

func (r *SecurityScanConfig) StartingUrls() *pulumi.ArrayOutput

func (*SecurityScanConfig) TargetPlatforms added in v0.18.6

func (r *SecurityScanConfig) TargetPlatforms() *pulumi.ArrayOutput

func (*SecurityScanConfig) URN added in v0.18.6

URN is this resource's unique name assigned by Pulumi.

func (*SecurityScanConfig) UserAgent added in v0.18.6

func (r *SecurityScanConfig) UserAgent() *pulumi.StringOutput

type SecurityScanConfigArgs added in v0.18.6

type SecurityScanConfigArgs struct {
	Authentication                interface{}
	BlacklistPatterns             interface{}
	DisplayName                   interface{}
	ExportToSecurityCommandCenter interface{}
	MaxQps                        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project         interface{}
	Schedule        interface{}
	StartingUrls    interface{}
	TargetPlatforms interface{}
	UserAgent       interface{}
}

The set of arguments for constructing a SecurityScanConfig resource.

type SecurityScanConfigState added in v0.18.6

type SecurityScanConfigState struct {
	Authentication                interface{}
	BlacklistPatterns             interface{}
	DisplayName                   interface{}
	ExportToSecurityCommandCenter interface{}
	MaxQps                        interface{}
	Name                          interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project         interface{}
	Schedule        interface{}
	StartingUrls    interface{}
	TargetPlatforms interface{}
	UserAgent       interface{}
}

Input properties used for looking up and filtering SecurityScanConfig resources.

type SharedVPCHostProject

type SharedVPCHostProject struct {
	// contains filtered or unexported fields
}

Enables the Google Compute Engine [Shared VPC](https://cloud.google.com/compute/docs/shared-vpc) feature for a project, assigning it as a Shared VPC host project.

For more information, see, [the Project API documentation](https://cloud.google.com/compute/docs/reference/latest/projects), where the Shared VPC feature is referred to by its former name "XPN".

func GetSharedVPCHostProject

func GetSharedVPCHostProject(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SharedVPCHostProjectState, opts ...pulumi.ResourceOpt) (*SharedVPCHostProject, error)

GetSharedVPCHostProject gets an existing SharedVPCHostProject 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 NewSharedVPCHostProject

func NewSharedVPCHostProject(ctx *pulumi.Context,
	name string, args *SharedVPCHostProjectArgs, opts ...pulumi.ResourceOpt) (*SharedVPCHostProject, error)

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

func (*SharedVPCHostProject) ID

ID is this resource's unique identifier assigned by its provider.

func (*SharedVPCHostProject) Project

The ID of the project that will serve as a Shared VPC host project

func (*SharedVPCHostProject) URN

URN is this resource's unique name assigned by Pulumi.

type SharedVPCHostProjectArgs

type SharedVPCHostProjectArgs struct {
	// The ID of the project that will serve as a Shared VPC host project
	Project interface{}
}

The set of arguments for constructing a SharedVPCHostProject resource.

type SharedVPCHostProjectState

type SharedVPCHostProjectState struct {
	// The ID of the project that will serve as a Shared VPC host project
	Project interface{}
}

Input properties used for looking up and filtering SharedVPCHostProject resources.

type SharedVPCServiceProject

type SharedVPCServiceProject struct {
	// contains filtered or unexported fields
}

Enables the Google Compute Engine [Shared VPC](https://cloud.google.com/compute/docs/shared-vpc) feature for a project, assigning it as a Shared VPC service project associated with a given host project.

For more information, see, [the Project API documentation](https://cloud.google.com/compute/docs/reference/latest/projects), where the Shared VPC feature is referred to by its former name "XPN".

func GetSharedVPCServiceProject

func GetSharedVPCServiceProject(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SharedVPCServiceProjectState, opts ...pulumi.ResourceOpt) (*SharedVPCServiceProject, error)

GetSharedVPCServiceProject gets an existing SharedVPCServiceProject 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 NewSharedVPCServiceProject

func NewSharedVPCServiceProject(ctx *pulumi.Context,
	name string, args *SharedVPCServiceProjectArgs, opts ...pulumi.ResourceOpt) (*SharedVPCServiceProject, error)

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

func (*SharedVPCServiceProject) HostProject

func (r *SharedVPCServiceProject) HostProject() *pulumi.StringOutput

The ID of a host project to associate.

func (*SharedVPCServiceProject) ID

ID is this resource's unique identifier assigned by its provider.

func (*SharedVPCServiceProject) ServiceProject

func (r *SharedVPCServiceProject) ServiceProject() *pulumi.StringOutput

The ID of the project that will serve as a Shared VPC service project.

func (*SharedVPCServiceProject) URN

URN is this resource's unique name assigned by Pulumi.

type SharedVPCServiceProjectArgs

type SharedVPCServiceProjectArgs struct {
	// The ID of a host project to associate.
	HostProject interface{}
	// The ID of the project that will serve as a Shared VPC service project.
	ServiceProject interface{}
}

The set of arguments for constructing a SharedVPCServiceProject resource.

type SharedVPCServiceProjectState

type SharedVPCServiceProjectState struct {
	// The ID of a host project to associate.
	HostProject interface{}
	// The ID of the project that will serve as a Shared VPC service project.
	ServiceProject interface{}
}

Input properties used for looking up and filtering SharedVPCServiceProject resources.

type Snapshot

type Snapshot struct {
	// contains filtered or unexported fields
}

Represents a Persistent Disk Snapshot resource.

Use snapshots to back up data from your persistent disks. Snapshots are different from public images and custom images, which are used primarily to create instances or configure instance templates. Snapshots are useful for periodic backup of the data on your persistent disks. You can create snapshots from persistent disks even while they are attached to running instances.

Snapshots are incremental, so you can create regular snapshots on a persistent disk faster and at a much lower cost than if you regularly created a full image of the disk.

To get more information about Snapshot, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/snapshots) * How-to Guides

func GetSnapshot

func GetSnapshot(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SnapshotState, opts ...pulumi.ResourceOpt) (*Snapshot, error)

GetSnapshot gets an existing Snapshot 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 NewSnapshot

func NewSnapshot(ctx *pulumi.Context,
	name string, args *SnapshotArgs, opts ...pulumi.ResourceOpt) (*Snapshot, error)

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

func (*Snapshot) CreationTimestamp added in v0.16.4

func (r *Snapshot) CreationTimestamp() *pulumi.StringOutput

func (*Snapshot) Description added in v0.16.4

func (r *Snapshot) Description() *pulumi.StringOutput

func (*Snapshot) DiskSizeGb added in v0.16.4

func (r *Snapshot) DiskSizeGb() *pulumi.IntOutput

func (*Snapshot) ID

func (r *Snapshot) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Snapshot) LabelFingerprint

func (r *Snapshot) LabelFingerprint() *pulumi.StringOutput

func (*Snapshot) Labels

func (r *Snapshot) Labels() *pulumi.MapOutput

func (*Snapshot) Licenses added in v0.16.4

func (r *Snapshot) Licenses() *pulumi.ArrayOutput

func (*Snapshot) Name

func (r *Snapshot) Name() *pulumi.StringOutput

func (*Snapshot) Project

func (r *Snapshot) Project() *pulumi.StringOutput

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

func (r *Snapshot) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Snapshot) SnapshotEncryptionKey added in v0.16.4

func (r *Snapshot) SnapshotEncryptionKey() *pulumi.Output

func (*Snapshot) SnapshotId added in v0.16.4

func (r *Snapshot) SnapshotId() *pulumi.IntOutput

func (*Snapshot) SourceDisk

func (r *Snapshot) SourceDisk() *pulumi.StringOutput

func (*Snapshot) SourceDiskEncryptionKey added in v0.16.4

func (r *Snapshot) SourceDiskEncryptionKey() *pulumi.Output
func (r *Snapshot) SourceDiskLink() *pulumi.StringOutput

func (*Snapshot) StorageBytes added in v0.16.4

func (r *Snapshot) StorageBytes() *pulumi.IntOutput

func (*Snapshot) URN

func (r *Snapshot) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*Snapshot) Zone

func (r *Snapshot) Zone() *pulumi.StringOutput

type SnapshotArgs

type SnapshotArgs struct {
	Description interface{}
	Labels      interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                 interface{}
	SnapshotEncryptionKey   interface{}
	SourceDisk              interface{}
	SourceDiskEncryptionKey interface{}
	Zone                    interface{}
}

The set of arguments for constructing a Snapshot resource.

type SnapshotState

type SnapshotState struct {
	CreationTimestamp interface{}
	Description       interface{}
	DiskSizeGb        interface{}
	LabelFingerprint  interface{}
	Labels            interface{}
	Licenses          interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink                interface{}
	SnapshotEncryptionKey   interface{}
	SnapshotId              interface{}
	SourceDisk              interface{}
	SourceDiskEncryptionKey interface{}
	SourceDiskLink          interface{}
	StorageBytes            interface{}
	Zone                    interface{}
}

Input properties used for looking up and filtering Snapshot resources.

type Subnetwork

type Subnetwork struct {
	// contains filtered or unexported fields
}

A VPC network is a virtual version of the traditional physical networks that exist within and between physical data centers. A VPC network provides connectivity for your Compute Engine virtual machine (VM) instances, Container Engine containers, App Engine Flex services, and other network-related resources.

Each GCP project contains one or more VPC networks. Each VPC network is a global entity spanning all GCP regions. This global VPC network allows VM instances and other resources to communicate with each other via internal, private IP addresses.

Each VPC network is subdivided into subnets, and each subnet is contained within a single region. You can have more than one subnet in a region for a given VPC network. Each subnet has a contiguous private RFC1918 IP space. You create instances, containers, and the like in these subnets. When you create an instance, you must create it in a subnet, and the instance draws its internal IP address from that subnet.

Virtual machine (VM) instances in a VPC network can communicate with instances in all other subnets of the same VPC network, regardless of region, using their RFC1918 private IP addresses. You can isolate portions of the network, even entire subnets, using firewall rules.

To get more information about Subnetwork, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/beta/subnetworks) * How-to Guides

func GetSubnetwork

func GetSubnetwork(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SubnetworkState, opts ...pulumi.ResourceOpt) (*Subnetwork, error)

GetSubnetwork gets an existing Subnetwork 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 NewSubnetwork

func NewSubnetwork(ctx *pulumi.Context,
	name string, args *SubnetworkArgs, opts ...pulumi.ResourceOpt) (*Subnetwork, error)

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

func (*Subnetwork) CreationTimestamp added in v0.15.0

func (r *Subnetwork) CreationTimestamp() *pulumi.StringOutput

func (*Subnetwork) Description

func (r *Subnetwork) Description() *pulumi.StringOutput

func (*Subnetwork) EnableFlowLogs

func (r *Subnetwork) EnableFlowLogs() *pulumi.BoolOutput

func (*Subnetwork) Fingerprint

func (r *Subnetwork) Fingerprint() *pulumi.StringOutput

func (*Subnetwork) GatewayAddress

func (r *Subnetwork) GatewayAddress() *pulumi.StringOutput

func (*Subnetwork) ID

func (r *Subnetwork) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*Subnetwork) IpCidrRange

func (r *Subnetwork) IpCidrRange() *pulumi.StringOutput

func (*Subnetwork) LogConfig added in v0.18.6

func (r *Subnetwork) LogConfig() *pulumi.Output

func (*Subnetwork) Name

func (r *Subnetwork) Name() *pulumi.StringOutput

func (*Subnetwork) Network

func (r *Subnetwork) Network() *pulumi.StringOutput

func (*Subnetwork) PrivateIpGoogleAccess

func (r *Subnetwork) PrivateIpGoogleAccess() *pulumi.BoolOutput

func (*Subnetwork) Project

func (r *Subnetwork) Project() *pulumi.StringOutput

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

func (*Subnetwork) Region

func (r *Subnetwork) Region() *pulumi.StringOutput

func (*Subnetwork) SecondaryIpRanges

func (r *Subnetwork) SecondaryIpRanges() *pulumi.ArrayOutput
func (r *Subnetwork) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*Subnetwork) URN

func (r *Subnetwork) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type SubnetworkArgs

type SubnetworkArgs struct {
	Description           interface{}
	EnableFlowLogs        interface{}
	IpCidrRange           interface{}
	LogConfig             interface{}
	Name                  interface{}
	Network               interface{}
	PrivateIpGoogleAccess interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project           interface{}
	Region            interface{}
	SecondaryIpRanges interface{}
}

The set of arguments for constructing a Subnetwork resource.

type SubnetworkIAMBinding added in v0.15.0

type SubnetworkIAMBinding struct {
	// contains filtered or unexported fields
}

> **Warning:** These resources are in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

Three different resources help you manage your IAM policy for GCE subnetwork. Each of these resources serves a different use case:

* `google_compute_subnetwork_iam_policy`: Authoritative. Sets the IAM policy for the subnetwork and replaces any existing policy already attached. * `google_compute_subnetwork_iam_binding`: 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 subnetwork are preserved. * `google_compute_subnetwork_iam_member`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the subnetwork are preserved.

> **Note:** `google_compute_subnetwork_iam_policy` **cannot** be used in conjunction with `google_compute_subnetwork_iam_binding` and `google_compute_subnetwork_iam_member` or they will fight over what your policy should be.

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

func GetSubnetworkIAMBinding added in v0.15.0

func GetSubnetworkIAMBinding(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SubnetworkIAMBindingState, opts ...pulumi.ResourceOpt) (*SubnetworkIAMBinding, error)

GetSubnetworkIAMBinding gets an existing SubnetworkIAMBinding 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 NewSubnetworkIAMBinding added in v0.15.0

func NewSubnetworkIAMBinding(ctx *pulumi.Context,
	name string, args *SubnetworkIAMBindingArgs, opts ...pulumi.ResourceOpt) (*SubnetworkIAMBinding, error)

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

func (*SubnetworkIAMBinding) Etag added in v0.15.0

(Computed) The etag of the subnetwork's IAM policy.

func (*SubnetworkIAMBinding) ID added in v0.15.0

ID is this resource's unique identifier assigned by its provider.

func (*SubnetworkIAMBinding) Members added in v0.15.0

func (r *SubnetworkIAMBinding) Members() *pulumi.ArrayOutput

func (*SubnetworkIAMBinding) Project added in v0.15.0

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

func (*SubnetworkIAMBinding) Region added in v0.15.0

The region of the subnetwork. If unspecified, this defaults to the region configured in the provider.

func (*SubnetworkIAMBinding) Role added in v0.15.0

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

func (*SubnetworkIAMBinding) Subnetwork added in v0.15.0

func (r *SubnetworkIAMBinding) Subnetwork() *pulumi.StringOutput

The name of the subnetwork.

func (*SubnetworkIAMBinding) URN added in v0.15.0

URN is this resource's unique name assigned by Pulumi.

type SubnetworkIAMBindingArgs added in v0.15.0

type SubnetworkIAMBindingArgs struct {
	Members interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region of the subnetwork. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The role that should be applied. Only one
	// `google_compute_subnetwork_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The name of the subnetwork.
	Subnetwork interface{}
}

The set of arguments for constructing a SubnetworkIAMBinding resource.

type SubnetworkIAMBindingState added in v0.15.0

type SubnetworkIAMBindingState struct {
	// (Computed) The etag of the subnetwork's IAM policy.
	Etag    interface{}
	Members interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region of the subnetwork. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The role that should be applied. Only one
	// `google_compute_subnetwork_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The name of the subnetwork.
	Subnetwork interface{}
}

Input properties used for looking up and filtering SubnetworkIAMBinding resources.

type SubnetworkIAMMember added in v0.15.0

type SubnetworkIAMMember struct {
	// contains filtered or unexported fields
}

> **Warning:** These resources are in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

Three different resources help you manage your IAM policy for GCE subnetwork. Each of these resources serves a different use case:

* `google_compute_subnetwork_iam_policy`: Authoritative. Sets the IAM policy for the subnetwork and replaces any existing policy already attached. * `google_compute_subnetwork_iam_binding`: 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 subnetwork are preserved. * `google_compute_subnetwork_iam_member`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the subnetwork are preserved.

> **Note:** `google_compute_subnetwork_iam_policy` **cannot** be used in conjunction with `google_compute_subnetwork_iam_binding` and `google_compute_subnetwork_iam_member` or they will fight over what your policy should be.

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

func GetSubnetworkIAMMember added in v0.15.0

func GetSubnetworkIAMMember(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SubnetworkIAMMemberState, opts ...pulumi.ResourceOpt) (*SubnetworkIAMMember, error)

GetSubnetworkIAMMember gets an existing SubnetworkIAMMember 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 NewSubnetworkIAMMember added in v0.15.0

func NewSubnetworkIAMMember(ctx *pulumi.Context,
	name string, args *SubnetworkIAMMemberArgs, opts ...pulumi.ResourceOpt) (*SubnetworkIAMMember, error)

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

func (*SubnetworkIAMMember) Etag added in v0.15.0

(Computed) The etag of the subnetwork's IAM policy.

func (*SubnetworkIAMMember) ID added in v0.15.0

ID is this resource's unique identifier assigned by its provider.

func (*SubnetworkIAMMember) Member added in v0.15.0

func (*SubnetworkIAMMember) Project added in v0.15.0

func (r *SubnetworkIAMMember) Project() *pulumi.StringOutput

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

func (*SubnetworkIAMMember) Region added in v0.15.0

The region of the subnetwork. If unspecified, this defaults to the region configured in the provider.

func (*SubnetworkIAMMember) Role added in v0.15.0

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

func (*SubnetworkIAMMember) Subnetwork added in v0.15.0

func (r *SubnetworkIAMMember) Subnetwork() *pulumi.StringOutput

The name of the subnetwork.

func (*SubnetworkIAMMember) URN added in v0.15.0

URN is this resource's unique name assigned by Pulumi.

type SubnetworkIAMMemberArgs added in v0.15.0

type SubnetworkIAMMemberArgs struct {
	Member interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region of the subnetwork. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The role that should be applied. Only one
	// `google_compute_subnetwork_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The name of the subnetwork.
	Subnetwork interface{}
}

The set of arguments for constructing a SubnetworkIAMMember resource.

type SubnetworkIAMMemberState added in v0.15.0

type SubnetworkIAMMemberState struct {
	// (Computed) The etag of the subnetwork's IAM policy.
	Etag   interface{}
	Member interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region of the subnetwork. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The role that should be applied. Only one
	// `google_compute_subnetwork_iam_binding` can be used per role. Note that custom roles must be of the format
	// `[projects|organizations]/{parent-name}/roles/{role-name}`.
	Role interface{}
	// The name of the subnetwork.
	Subnetwork interface{}
}

Input properties used for looking up and filtering SubnetworkIAMMember resources.

type SubnetworkIAMPolicy added in v0.15.0

type SubnetworkIAMPolicy struct {
	// contains filtered or unexported fields
}

> **Warning:** These resources are in beta, and should be used with the terraform-provider-google-beta provider. See [Provider Versions](https://terraform.io/docs/providers/google/provider_versions.html) for more details on beta resources.

Three different resources help you manage your IAM policy for GCE subnetwork. Each of these resources serves a different use case:

* `google_compute_subnetwork_iam_policy`: Authoritative. Sets the IAM policy for the subnetwork and replaces any existing policy already attached. * `google_compute_subnetwork_iam_binding`: 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 subnetwork are preserved. * `google_compute_subnetwork_iam_member`: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the subnetwork are preserved.

> **Note:** `google_compute_subnetwork_iam_policy` **cannot** be used in conjunction with `google_compute_subnetwork_iam_binding` and `google_compute_subnetwork_iam_member` or they will fight over what your policy should be.

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

func GetSubnetworkIAMPolicy added in v0.15.0

func GetSubnetworkIAMPolicy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *SubnetworkIAMPolicyState, opts ...pulumi.ResourceOpt) (*SubnetworkIAMPolicy, error)

GetSubnetworkIAMPolicy gets an existing SubnetworkIAMPolicy 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 NewSubnetworkIAMPolicy added in v0.15.0

func NewSubnetworkIAMPolicy(ctx *pulumi.Context,
	name string, args *SubnetworkIAMPolicyArgs, opts ...pulumi.ResourceOpt) (*SubnetworkIAMPolicy, error)

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

func (*SubnetworkIAMPolicy) Etag added in v0.15.0

(Computed) The etag of the subnetwork's IAM policy.

func (*SubnetworkIAMPolicy) ID added in v0.15.0

ID is this resource's unique identifier assigned by its provider.

func (*SubnetworkIAMPolicy) PolicyData added in v0.15.0

func (r *SubnetworkIAMPolicy) PolicyData() *pulumi.StringOutput

The policy data generated by a `google_iam_policy` data source.

func (*SubnetworkIAMPolicy) Project added in v0.15.0

func (r *SubnetworkIAMPolicy) Project() *pulumi.StringOutput

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

func (*SubnetworkIAMPolicy) Region added in v0.15.0

The region of the subnetwork. If unspecified, this defaults to the region configured in the provider.

func (*SubnetworkIAMPolicy) Subnetwork added in v0.15.0

func (r *SubnetworkIAMPolicy) Subnetwork() *pulumi.StringOutput

The name of the subnetwork.

func (*SubnetworkIAMPolicy) URN added in v0.15.0

URN is this resource's unique name assigned by Pulumi.

type SubnetworkIAMPolicyArgs added in v0.15.0

type SubnetworkIAMPolicyArgs struct {
	// The policy data generated by
	// a `google_iam_policy` data source.
	PolicyData interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region of the subnetwork. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The name of the subnetwork.
	Subnetwork interface{}
}

The set of arguments for constructing a SubnetworkIAMPolicy resource.

type SubnetworkIAMPolicyState added in v0.15.0

type SubnetworkIAMPolicyState struct {
	// (Computed) The etag of the subnetwork's IAM policy.
	Etag interface{}
	// The policy data generated by
	// a `google_iam_policy` data source.
	PolicyData interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The region of the subnetwork. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// The name of the subnetwork.
	Subnetwork interface{}
}

Input properties used for looking up and filtering SubnetworkIAMPolicy resources.

type SubnetworkState

type SubnetworkState struct {
	CreationTimestamp     interface{}
	Description           interface{}
	EnableFlowLogs        interface{}
	Fingerprint           interface{}
	GatewayAddress        interface{}
	IpCidrRange           interface{}
	LogConfig             interface{}
	Name                  interface{}
	Network               interface{}
	PrivateIpGoogleAccess interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project           interface{}
	Region            interface{}
	SecondaryIpRanges interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering Subnetwork resources.

type TargetHttpProxy

type TargetHttpProxy struct {
	// contains filtered or unexported fields
}

Represents a TargetHttpProxy resource, which is used by one or more global forwarding rule to route incoming HTTP requests to a URL map.

To get more information about TargetHttpProxy, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/targetHttpProxies) * How-to Guides

func GetTargetHttpProxy

func GetTargetHttpProxy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TargetHttpProxyState, opts ...pulumi.ResourceOpt) (*TargetHttpProxy, error)

GetTargetHttpProxy gets an existing TargetHttpProxy 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 NewTargetHttpProxy

func NewTargetHttpProxy(ctx *pulumi.Context,
	name string, args *TargetHttpProxyArgs, opts ...pulumi.ResourceOpt) (*TargetHttpProxy, error)

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

func (*TargetHttpProxy) CreationTimestamp

func (r *TargetHttpProxy) CreationTimestamp() *pulumi.StringOutput

func (*TargetHttpProxy) Description

func (r *TargetHttpProxy) Description() *pulumi.StringOutput

func (*TargetHttpProxy) ID

func (r *TargetHttpProxy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TargetHttpProxy) Name

func (r *TargetHttpProxy) Name() *pulumi.StringOutput

func (*TargetHttpProxy) Project

func (r *TargetHttpProxy) Project() *pulumi.StringOutput

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

func (*TargetHttpProxy) ProxyId

func (r *TargetHttpProxy) ProxyId() *pulumi.IntOutput
func (r *TargetHttpProxy) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*TargetHttpProxy) URN

func (r *TargetHttpProxy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*TargetHttpProxy) UrlMap

func (r *TargetHttpProxy) UrlMap() *pulumi.StringOutput

type TargetHttpProxyArgs

type TargetHttpProxyArgs struct {
	Description interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	UrlMap  interface{}
}

The set of arguments for constructing a TargetHttpProxy resource.

type TargetHttpProxyState

type TargetHttpProxyState struct {
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	ProxyId interface{}
	// The URI of the created resource.
	SelfLink interface{}
	UrlMap   interface{}
}

Input properties used for looking up and filtering TargetHttpProxy resources.

type TargetHttpsProxy

type TargetHttpsProxy struct {
	// contains filtered or unexported fields
}

Represents a TargetHttpsProxy resource, which is used by one or more global forwarding rule to route incoming HTTPS requests to a URL map.

To get more information about TargetHttpsProxy, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/targetHttpsProxies) * How-to Guides

func GetTargetHttpsProxy

func GetTargetHttpsProxy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TargetHttpsProxyState, opts ...pulumi.ResourceOpt) (*TargetHttpsProxy, error)

GetTargetHttpsProxy gets an existing TargetHttpsProxy 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 NewTargetHttpsProxy

func NewTargetHttpsProxy(ctx *pulumi.Context,
	name string, args *TargetHttpsProxyArgs, opts ...pulumi.ResourceOpt) (*TargetHttpsProxy, error)

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

func (*TargetHttpsProxy) CreationTimestamp

func (r *TargetHttpsProxy) CreationTimestamp() *pulumi.StringOutput

func (*TargetHttpsProxy) Description

func (r *TargetHttpsProxy) Description() *pulumi.StringOutput

func (*TargetHttpsProxy) ID

func (r *TargetHttpsProxy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TargetHttpsProxy) Name

func (*TargetHttpsProxy) Project

func (r *TargetHttpsProxy) Project() *pulumi.StringOutput

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

func (*TargetHttpsProxy) ProxyId

func (r *TargetHttpsProxy) ProxyId() *pulumi.IntOutput

func (*TargetHttpsProxy) QuicOverride added in v0.15.0

func (r *TargetHttpsProxy) QuicOverride() *pulumi.StringOutput
func (r *TargetHttpsProxy) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*TargetHttpsProxy) SslCertificates

func (r *TargetHttpsProxy) SslCertificates() *pulumi.ArrayOutput

func (*TargetHttpsProxy) SslPolicy

func (r *TargetHttpsProxy) SslPolicy() *pulumi.StringOutput

func (*TargetHttpsProxy) URN

func (r *TargetHttpsProxy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*TargetHttpsProxy) UrlMap

func (r *TargetHttpsProxy) UrlMap() *pulumi.StringOutput

type TargetHttpsProxyArgs

type TargetHttpsProxyArgs struct {
	Description interface{}
	Name        interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project         interface{}
	QuicOverride    interface{}
	SslCertificates interface{}
	SslPolicy       interface{}
	UrlMap          interface{}
}

The set of arguments for constructing a TargetHttpsProxy resource.

type TargetHttpsProxyState

type TargetHttpsProxyState struct {
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project      interface{}
	ProxyId      interface{}
	QuicOverride interface{}
	// The URI of the created resource.
	SelfLink        interface{}
	SslCertificates interface{}
	SslPolicy       interface{}
	UrlMap          interface{}
}

Input properties used for looking up and filtering TargetHttpsProxy resources.

type TargetInstance added in v0.18.6

type TargetInstance struct {
	// contains filtered or unexported fields
}

Represents a TargetInstance resource which defines an endpoint instance that terminates traffic of certain protocols. In particular, they are used in Protocol Forwarding, where forwarding rules can send packets to a non-NAT’ed target instance. Each target instance contains a single virtual machine instance that receives and handles traffic from the corresponding forwarding rules.

To get more information about TargetInstance, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/targetInstances) * How-to Guides

func GetTargetInstance added in v0.18.6

func GetTargetInstance(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TargetInstanceState, opts ...pulumi.ResourceOpt) (*TargetInstance, error)

GetTargetInstance gets an existing TargetInstance 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 NewTargetInstance added in v0.18.6

func NewTargetInstance(ctx *pulumi.Context,
	name string, args *TargetInstanceArgs, opts ...pulumi.ResourceOpt) (*TargetInstance, error)

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

func (*TargetInstance) CreationTimestamp added in v0.18.6

func (r *TargetInstance) CreationTimestamp() *pulumi.StringOutput

func (*TargetInstance) Description added in v0.18.6

func (r *TargetInstance) Description() *pulumi.StringOutput

func (*TargetInstance) ID added in v0.18.6

func (r *TargetInstance) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TargetInstance) Instance added in v0.18.6

func (r *TargetInstance) Instance() *pulumi.StringOutput

func (*TargetInstance) Name added in v0.18.6

func (r *TargetInstance) Name() *pulumi.StringOutput

func (*TargetInstance) NatPolicy added in v0.18.6

func (r *TargetInstance) NatPolicy() *pulumi.StringOutput

func (*TargetInstance) Project added in v0.18.6

func (r *TargetInstance) Project() *pulumi.StringOutput

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

func (r *TargetInstance) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*TargetInstance) URN added in v0.18.6

func (r *TargetInstance) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*TargetInstance) Zone added in v0.18.6

func (r *TargetInstance) Zone() *pulumi.StringOutput

type TargetInstanceArgs added in v0.18.6

type TargetInstanceArgs struct {
	Description interface{}
	Instance    interface{}
	Name        interface{}
	NatPolicy   interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Zone    interface{}
}

The set of arguments for constructing a TargetInstance resource.

type TargetInstanceState added in v0.18.6

type TargetInstanceState struct {
	CreationTimestamp interface{}
	Description       interface{}
	Instance          interface{}
	Name              interface{}
	NatPolicy         interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Zone     interface{}
}

Input properties used for looking up and filtering TargetInstance resources.

type TargetPool

type TargetPool struct {
	// contains filtered or unexported fields
}

Manages a Target Pool within GCE. This is a collection of instances used as target of a network load balancer (Forwarding Rule). For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/network/target-pools) and [API](https://cloud.google.com/compute/docs/reference/latest/targetPools).

func GetTargetPool

func GetTargetPool(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TargetPoolState, opts ...pulumi.ResourceOpt) (*TargetPool, error)

GetTargetPool gets an existing TargetPool 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 NewTargetPool

func NewTargetPool(ctx *pulumi.Context,
	name string, args *TargetPoolArgs, opts ...pulumi.ResourceOpt) (*TargetPool, error)

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

func (*TargetPool) BackupPool

func (r *TargetPool) BackupPool() *pulumi.StringOutput

URL to the backup target pool. Must also set failover\_ratio.

func (*TargetPool) Description

func (r *TargetPool) Description() *pulumi.StringOutput

Textual description field.

func (*TargetPool) FailoverRatio

func (r *TargetPool) FailoverRatio() *pulumi.Float64Output

Ratio (0 to 1) of failed nodes before using the backup pool (which must also be set).

func (*TargetPool) HealthChecks

func (r *TargetPool) HealthChecks() *pulumi.StringOutput

List of zero or one health check name or self_link. Only legacy `google_compute_http_health_check` is supported.

func (*TargetPool) ID

func (r *TargetPool) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TargetPool) Instances

func (r *TargetPool) Instances() *pulumi.ArrayOutput

List of instances in the pool. They can be given as URLs, or in the form of "zone/name". Note that the instances need not exist at the time of target pool creation, so there is no need to use the Terraform interpolators to create a dependency on the instances from the target pool.

func (*TargetPool) Name

func (r *TargetPool) Name() *pulumi.StringOutput

A unique name for the resource, required by GCE. Changing this forces a new resource to be created.

func (*TargetPool) Project

func (r *TargetPool) Project() *pulumi.StringOutput

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

func (*TargetPool) Region

func (r *TargetPool) Region() *pulumi.StringOutput

Where the target pool resides. Defaults to project region.

func (r *TargetPool) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*TargetPool) SessionAffinity

func (r *TargetPool) SessionAffinity() *pulumi.StringOutput

How to distribute load. Options are "NONE" (no affinity). "CLIENT\_IP" (hash of the source/dest addresses / ports), and "CLIENT\_IP\_PROTO" also includes the protocol (default "NONE").

func (*TargetPool) URN

func (r *TargetPool) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type TargetPoolArgs

type TargetPoolArgs struct {
	// URL to the backup target pool. Must also set
	// failover\_ratio.
	BackupPool interface{}
	// Textual description field.
	Description interface{}
	// Ratio (0 to 1) of failed nodes before using the
	// backup pool (which must also be set).
	FailoverRatio interface{}
	// List of zero or one health check name or self_link. Only
	// legacy `google_compute_http_health_check` is supported.
	HealthChecks interface{}
	// List of instances in the pool. They can be given as
	// URLs, or in the form of "zone/name". Note that the instances need not exist
	// at the time of target pool creation, so there is no need to use the
	// Terraform interpolators to create a dependency on the instances from the
	// target pool.
	Instances interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// Where the target pool resides. Defaults to project
	// region.
	Region interface{}
	// How to distribute load. Options are "NONE" (no
	// affinity). "CLIENT\_IP" (hash of the source/dest addresses / ports), and
	// "CLIENT\_IP\_PROTO" also includes the protocol (default "NONE").
	SessionAffinity interface{}
}

The set of arguments for constructing a TargetPool resource.

type TargetPoolState

type TargetPoolState struct {
	// URL to the backup target pool. Must also set
	// failover\_ratio.
	BackupPool interface{}
	// Textual description field.
	Description interface{}
	// Ratio (0 to 1) of failed nodes before using the
	// backup pool (which must also be set).
	FailoverRatio interface{}
	// List of zero or one health check name or self_link. Only
	// legacy `google_compute_http_health_check` is supported.
	HealthChecks interface{}
	// List of instances in the pool. They can be given as
	// URLs, or in the form of "zone/name". Note that the instances need not exist
	// at the time of target pool creation, so there is no need to use the
	// Terraform interpolators to create a dependency on the instances from the
	// target pool.
	Instances interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// Where the target pool resides. Defaults to project
	// region.
	Region interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// How to distribute load. Options are "NONE" (no
	// affinity). "CLIENT\_IP" (hash of the source/dest addresses / ports), and
	// "CLIENT\_IP\_PROTO" also includes the protocol (default "NONE").
	SessionAffinity interface{}
}

Input properties used for looking up and filtering TargetPool resources.

type TargetSSLProxy

type TargetSSLProxy struct {
	// contains filtered or unexported fields
}

Represents a TargetSslProxy resource, which is used by one or more global forwarding rule to route incoming SSL requests to a backend service.

To get more information about TargetSslProxy, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/targetSslProxies) * How-to Guides

func GetTargetSSLProxy

func GetTargetSSLProxy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TargetSSLProxyState, opts ...pulumi.ResourceOpt) (*TargetSSLProxy, error)

GetTargetSSLProxy gets an existing TargetSSLProxy 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 NewTargetSSLProxy

func NewTargetSSLProxy(ctx *pulumi.Context,
	name string, args *TargetSSLProxyArgs, opts ...pulumi.ResourceOpt) (*TargetSSLProxy, error)

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

func (*TargetSSLProxy) BackendService

func (r *TargetSSLProxy) BackendService() *pulumi.StringOutput

func (*TargetSSLProxy) CreationTimestamp

func (r *TargetSSLProxy) CreationTimestamp() *pulumi.StringOutput

func (*TargetSSLProxy) Description

func (r *TargetSSLProxy) Description() *pulumi.StringOutput

func (*TargetSSLProxy) ID

func (r *TargetSSLProxy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TargetSSLProxy) Name

func (r *TargetSSLProxy) Name() *pulumi.StringOutput

func (*TargetSSLProxy) Project

func (r *TargetSSLProxy) Project() *pulumi.StringOutput

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

func (*TargetSSLProxy) ProxyHeader

func (r *TargetSSLProxy) ProxyHeader() *pulumi.StringOutput

func (*TargetSSLProxy) ProxyId

func (r *TargetSSLProxy) ProxyId() *pulumi.IntOutput
func (r *TargetSSLProxy) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*TargetSSLProxy) SslCertificates

func (r *TargetSSLProxy) SslCertificates() *pulumi.StringOutput

func (*TargetSSLProxy) SslPolicy added in v0.15.0

func (r *TargetSSLProxy) SslPolicy() *pulumi.StringOutput

func (*TargetSSLProxy) URN

func (r *TargetSSLProxy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type TargetSSLProxyArgs

type TargetSSLProxyArgs struct {
	BackendService interface{}
	Description    interface{}
	Name           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project         interface{}
	ProxyHeader     interface{}
	SslCertificates interface{}
	SslPolicy       interface{}
}

The set of arguments for constructing a TargetSSLProxy resource.

type TargetSSLProxyState

type TargetSSLProxyState struct {
	BackendService    interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	ProxyHeader interface{}
	ProxyId     interface{}
	// The URI of the created resource.
	SelfLink        interface{}
	SslCertificates interface{}
	SslPolicy       interface{}
}

Input properties used for looking up and filtering TargetSSLProxy resources.

type TargetTCPProxy

type TargetTCPProxy struct {
	// contains filtered or unexported fields
}

Represents a TargetTcpProxy resource, which is used by one or more global forwarding rule to route incoming TCP requests to a Backend service.

To get more information about TargetTcpProxy, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/v1/targetTcpProxies) * How-to Guides

func GetTargetTCPProxy

func GetTargetTCPProxy(ctx *pulumi.Context,
	name string, id pulumi.ID, state *TargetTCPProxyState, opts ...pulumi.ResourceOpt) (*TargetTCPProxy, error)

GetTargetTCPProxy gets an existing TargetTCPProxy 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 NewTargetTCPProxy

func NewTargetTCPProxy(ctx *pulumi.Context,
	name string, args *TargetTCPProxyArgs, opts ...pulumi.ResourceOpt) (*TargetTCPProxy, error)

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

func (*TargetTCPProxy) BackendService

func (r *TargetTCPProxy) BackendService() *pulumi.StringOutput

func (*TargetTCPProxy) CreationTimestamp

func (r *TargetTCPProxy) CreationTimestamp() *pulumi.StringOutput

func (*TargetTCPProxy) Description

func (r *TargetTCPProxy) Description() *pulumi.StringOutput

func (*TargetTCPProxy) ID

func (r *TargetTCPProxy) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*TargetTCPProxy) Name

func (r *TargetTCPProxy) Name() *pulumi.StringOutput

func (*TargetTCPProxy) Project

func (r *TargetTCPProxy) Project() *pulumi.StringOutput

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

func (*TargetTCPProxy) ProxyHeader

func (r *TargetTCPProxy) ProxyHeader() *pulumi.StringOutput

func (*TargetTCPProxy) ProxyId

func (r *TargetTCPProxy) ProxyId() *pulumi.IntOutput
func (r *TargetTCPProxy) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*TargetTCPProxy) URN

func (r *TargetTCPProxy) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type TargetTCPProxyArgs

type TargetTCPProxyArgs struct {
	BackendService interface{}
	Description    interface{}
	Name           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	ProxyHeader interface{}
}

The set of arguments for constructing a TargetTCPProxy resource.

type TargetTCPProxyState

type TargetTCPProxyState struct {
	BackendService    interface{}
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project     interface{}
	ProxyHeader interface{}
	ProxyId     interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering TargetTCPProxy resources.

type URLMap

type URLMap struct {
	// contains filtered or unexported fields
}

UrlMaps are used to route requests to a backend service based on rules that you define for the host and path of an incoming URL.

func GetURLMap

func GetURLMap(ctx *pulumi.Context,
	name string, id pulumi.ID, state *URLMapState, opts ...pulumi.ResourceOpt) (*URLMap, error)

GetURLMap gets an existing URLMap 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 NewURLMap

func NewURLMap(ctx *pulumi.Context,
	name string, args *URLMapArgs, opts ...pulumi.ResourceOpt) (*URLMap, error)

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

func (*URLMap) CreationTimestamp added in v0.18.0

func (r *URLMap) CreationTimestamp() *pulumi.StringOutput

func (*URLMap) DefaultService

func (r *URLMap) DefaultService() *pulumi.StringOutput

func (*URLMap) Description

func (r *URLMap) Description() *pulumi.StringOutput

func (*URLMap) Fingerprint

func (r *URLMap) Fingerprint() *pulumi.StringOutput

func (*URLMap) HostRules

func (r *URLMap) HostRules() *pulumi.ArrayOutput

func (*URLMap) ID

func (r *URLMap) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*URLMap) MapId

func (r *URLMap) MapId() *pulumi.IntOutput

func (*URLMap) Name

func (r *URLMap) Name() *pulumi.StringOutput

func (*URLMap) PathMatchers

func (r *URLMap) PathMatchers() *pulumi.ArrayOutput

func (*URLMap) Project

func (r *URLMap) Project() *pulumi.StringOutput

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

func (r *URLMap) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*URLMap) Tests

func (r *URLMap) Tests() *pulumi.ArrayOutput

func (*URLMap) URN

func (r *URLMap) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type URLMapArgs

type URLMapArgs struct {
	DefaultService interface{}
	Description    interface{}
	HostRules      interface{}
	Name           interface{}
	PathMatchers   interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Tests   interface{}
}

The set of arguments for constructing a URLMap resource.

type URLMapState

type URLMapState struct {
	CreationTimestamp interface{}
	DefaultService    interface{}
	Description       interface{}
	Fingerprint       interface{}
	HostRules         interface{}
	MapId             interface{}
	Name              interface{}
	PathMatchers      interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	// The URI of the created resource.
	SelfLink interface{}
	Tests    interface{}
}

Input properties used for looking up and filtering URLMap resources.

type VPNGateway

type VPNGateway struct {
	// contains filtered or unexported fields
}

Represents a VPN gateway running in GCP. This virtual device is managed by Google, but used only by you.

To get more information about VpnGateway, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/targetVpnGateways)

func GetVPNGateway

func GetVPNGateway(ctx *pulumi.Context,
	name string, id pulumi.ID, state *VPNGatewayState, opts ...pulumi.ResourceOpt) (*VPNGateway, error)

GetVPNGateway gets an existing VPNGateway 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 NewVPNGateway

func NewVPNGateway(ctx *pulumi.Context,
	name string, args *VPNGatewayArgs, opts ...pulumi.ResourceOpt) (*VPNGateway, error)

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

func (*VPNGateway) CreationTimestamp

func (r *VPNGateway) CreationTimestamp() *pulumi.StringOutput

func (*VPNGateway) Description

func (r *VPNGateway) Description() *pulumi.StringOutput

func (*VPNGateway) ID

func (r *VPNGateway) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*VPNGateway) Name

func (r *VPNGateway) Name() *pulumi.StringOutput

func (*VPNGateway) Network

func (r *VPNGateway) Network() *pulumi.StringOutput

func (*VPNGateway) Project

func (r *VPNGateway) Project() *pulumi.StringOutput

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

func (*VPNGateway) Region

func (r *VPNGateway) Region() *pulumi.StringOutput
func (r *VPNGateway) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*VPNGateway) URN

func (r *VPNGateway) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

type VPNGatewayArgs

type VPNGatewayArgs struct {
	Description interface{}
	Name        interface{}
	Network     interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
}

The set of arguments for constructing a VPNGateway resource.

type VPNGatewayState

type VPNGatewayState struct {
	CreationTimestamp interface{}
	Description       interface{}
	Name              interface{}
	Network           interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project interface{}
	Region  interface{}
	// The URI of the created resource.
	SelfLink interface{}
}

Input properties used for looking up and filtering VPNGateway resources.

type VPNTunnel

type VPNTunnel struct {
	// contains filtered or unexported fields
}

VPN tunnel resource.

To get more information about VpnTunnel, see:

* [API documentation](https://cloud.google.com/compute/docs/reference/rest/v1/vpnTunnels) * How-to Guides

> **Warning:** All arguments including the shared secret will be stored in the raw state as plain-text. [Read more about sensitive data in state](https://www.terraform.io/docs/state/sensitive-data.html).

func GetVPNTunnel

func GetVPNTunnel(ctx *pulumi.Context,
	name string, id pulumi.ID, state *VPNTunnelState, opts ...pulumi.ResourceOpt) (*VPNTunnel, error)

GetVPNTunnel gets an existing VPNTunnel 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 NewVPNTunnel

func NewVPNTunnel(ctx *pulumi.Context,
	name string, args *VPNTunnelArgs, opts ...pulumi.ResourceOpt) (*VPNTunnel, error)

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

func (*VPNTunnel) CreationTimestamp added in v0.15.0

func (r *VPNTunnel) CreationTimestamp() *pulumi.StringOutput

func (*VPNTunnel) Description

func (r *VPNTunnel) Description() *pulumi.StringOutput

func (*VPNTunnel) DetailedStatus

func (r *VPNTunnel) DetailedStatus() *pulumi.StringOutput

func (*VPNTunnel) ID

func (r *VPNTunnel) ID() *pulumi.IDOutput

ID is this resource's unique identifier assigned by its provider.

func (*VPNTunnel) IkeVersion

func (r *VPNTunnel) IkeVersion() *pulumi.IntOutput

func (*VPNTunnel) LabelFingerprint added in v0.15.0

func (r *VPNTunnel) LabelFingerprint() *pulumi.StringOutput

func (*VPNTunnel) Labels added in v0.15.0

func (r *VPNTunnel) Labels() *pulumi.MapOutput

func (*VPNTunnel) LocalTrafficSelectors

func (r *VPNTunnel) LocalTrafficSelectors() *pulumi.ArrayOutput

func (*VPNTunnel) Name

func (r *VPNTunnel) Name() *pulumi.StringOutput

func (*VPNTunnel) PeerExternalGateway added in v0.18.7

func (r *VPNTunnel) PeerExternalGateway() *pulumi.StringOutput

func (*VPNTunnel) PeerExternalGatewayInterface added in v0.18.7

func (r *VPNTunnel) PeerExternalGatewayInterface() *pulumi.IntOutput

func (*VPNTunnel) PeerGcpGateway added in v0.18.7

func (r *VPNTunnel) PeerGcpGateway() *pulumi.StringOutput

func (*VPNTunnel) PeerIp

func (r *VPNTunnel) PeerIp() *pulumi.StringOutput

func (*VPNTunnel) Project

func (r *VPNTunnel) Project() *pulumi.StringOutput

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

func (*VPNTunnel) Region

func (r *VPNTunnel) Region() *pulumi.StringOutput

func (*VPNTunnel) RemoteTrafficSelectors

func (r *VPNTunnel) RemoteTrafficSelectors() *pulumi.ArrayOutput

func (*VPNTunnel) Router

func (r *VPNTunnel) Router() *pulumi.StringOutput
func (r *VPNTunnel) SelfLink() *pulumi.StringOutput

The URI of the created resource.

func (*VPNTunnel) SharedSecret

func (r *VPNTunnel) SharedSecret() *pulumi.StringOutput

func (*VPNTunnel) SharedSecretHash added in v0.15.0

func (r *VPNTunnel) SharedSecretHash() *pulumi.StringOutput

func (*VPNTunnel) TargetVpnGateway

func (r *VPNTunnel) TargetVpnGateway() *pulumi.StringOutput

func (*VPNTunnel) URN

func (r *VPNTunnel) URN() *pulumi.URNOutput

URN is this resource's unique name assigned by Pulumi.

func (*VPNTunnel) VpnGateway added in v0.18.7

func (r *VPNTunnel) VpnGateway() *pulumi.StringOutput

func (*VPNTunnel) VpnGatewayInterface added in v0.18.7

func (r *VPNTunnel) VpnGatewayInterface() *pulumi.IntOutput

type VPNTunnelArgs

type VPNTunnelArgs struct {
	Description                  interface{}
	IkeVersion                   interface{}
	Labels                       interface{}
	LocalTrafficSelectors        interface{}
	Name                         interface{}
	PeerExternalGateway          interface{}
	PeerExternalGatewayInterface interface{}
	PeerGcpGateway               interface{}
	PeerIp                       interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                interface{}
	Region                 interface{}
	RemoteTrafficSelectors interface{}
	Router                 interface{}
	SharedSecret           interface{}
	TargetVpnGateway       interface{}
	VpnGateway             interface{}
	VpnGatewayInterface    interface{}
}

The set of arguments for constructing a VPNTunnel resource.

type VPNTunnelState

type VPNTunnelState struct {
	CreationTimestamp            interface{}
	Description                  interface{}
	DetailedStatus               interface{}
	IkeVersion                   interface{}
	LabelFingerprint             interface{}
	Labels                       interface{}
	LocalTrafficSelectors        interface{}
	Name                         interface{}
	PeerExternalGateway          interface{}
	PeerExternalGatewayInterface interface{}
	PeerGcpGateway               interface{}
	PeerIp                       interface{}
	// The ID of the project in which the resource belongs.
	// If it is not provided, the provider project is used.
	Project                interface{}
	Region                 interface{}
	RemoteTrafficSelectors interface{}
	Router                 interface{}
	// The URI of the created resource.
	SelfLink            interface{}
	SharedSecret        interface{}
	SharedSecretHash    interface{}
	TargetVpnGateway    interface{}
	VpnGateway          interface{}
	VpnGatewayInterface interface{}
}

Input properties used for looking up and filtering VPNTunnel resources.

Source Files

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL