compute

package
v0.18.3 Latest Latest
Warning

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

Go to latest
Published: Apr 5, 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=address_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=autoscaler_beta&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=backend_bucket_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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) 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{}
	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{}
	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. 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).

For internal load balancing, use a [google_compute_region_backend_service](https://www.terraform.io/docs/providers/google/r/compute_region_backend_service.html).

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

Lifetime of cookies in seconds if session_affinity is `GENERATED_COOKIE`. If set to 0, the cookie is non-persistent and lasts only until the end of the browser session (or equivalent). The maximum allowed value for TTL is one day.

func (*BackendService) Backends

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

The list of backends that serve this BackendService. Structure is documented below.

func (*BackendService) CdnPolicy

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

Cloud CDN configuration for this BackendService. Structure is documented below.

func (*BackendService) ConnectionDrainingTimeoutSec

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

Time for which instance will be drained (not accept new connections, but still work to finish started ones). Defaults to `300`.

func (*BackendService) CustomRequestHeaders added in v0.15.0

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

) Headers that the HTTP/S load balancer should add to proxied requests. See [guide](https://cloud.google.com/compute/docs/load-balancing/http/backend-service#user-defined-request-headers) for details.

func (*BackendService) Description

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

The textual description for the backend service.

func (*BackendService) EnableCdn

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

Whether or not to enable the Cloud CDN on the backend service.

func (*BackendService) Fingerprint

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

The fingerprint of the backend service.

func (*BackendService) HealthChecks

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

Specifies a list of HTTP/HTTPS health checks for checking the health of the backend service. Currently at most one health check can be specified, and a health check is required.

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

Specification for the Identity-Aware proxy. Disabled if not specified. Structure is documented below.

func (*BackendService) Name

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

The name of the backend service.

func (*BackendService) PortName

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

The name of a service that has been added to an instance group in this backend. See [related docs](https://cloud.google.com/compute/docs/instance-groups/#specifying_service_endpoints) for details. Defaults to http.

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

The protocol for incoming requests. Defaults to `HTTP`.

func (*BackendService) SecurityPolicy

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

Name or URI of a [security policy](https://cloud.google.com/armor/docs/security-policy-concepts) to add to the backend service.

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

The URI of the created resource.

func (*BackendService) SessionAffinity

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

How to distribute load. Options are `NONE` (no affinity), `CLIENT_IP` (hash of the source/dest addresses / ports), and `GENERATED_COOKIE` (distribute load using a generated session cookie).

func (*BackendService) TimeoutSec

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

The number of secs to wait for a backend to respond to a request before considering the request failed. Defaults to `30`.

func (*BackendService) URN

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

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

type BackendServiceArgs

type BackendServiceArgs struct {
	// Lifetime of cookies in seconds if session_affinity is
	// `GENERATED_COOKIE`. If set to 0, the cookie is non-persistent and lasts only until the end of
	// the browser session (or equivalent). The maximum allowed value for TTL is one day.
	AffinityCookieTtlSec interface{}
	// The list of backends that serve this BackendService. Structure is documented below.
	Backends interface{}
	// Cloud CDN configuration for this BackendService. Structure is documented below.
	CdnPolicy interface{}
	// Time for which instance will be drained (not accept new connections,
	// but still work to finish started ones). Defaults to `300`.
	ConnectionDrainingTimeoutSec interface{}
	// ) Headers that the
	// HTTP/S load balancer should add to proxied requests. See [guide](https://cloud.google.com/compute/docs/load-balancing/http/backend-service#user-defined-request-headers) for details.
	CustomRequestHeaders interface{}
	// The textual description for the backend service.
	Description interface{}
	// Whether or not to enable the Cloud CDN on the backend service.
	EnableCdn interface{}
	// Specifies a list of HTTP/HTTPS health checks
	// for checking the health of the backend service. Currently at most one health
	// check can be specified, and a health check is required.
	HealthChecks interface{}
	// Specification for the Identity-Aware proxy. Disabled if not specified. Structure is documented below.
	Iap interface{}
	// The name of the backend service.
	Name interface{}
	// The name of a service that has been added to an
	// instance group in this backend. See [related docs](https://cloud.google.com/compute/docs/instance-groups/#specifying_service_endpoints) for details. Defaults to http.
	PortName interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The protocol for incoming requests. Defaults to
	// `HTTP`.
	Protocol interface{}
	// Name or URI of a
	// [security policy](https://cloud.google.com/armor/docs/security-policy-concepts) to add to the backend service.
	SecurityPolicy interface{}
	// How to distribute load. Options are `NONE` (no
	// affinity), `CLIENT_IP` (hash of the source/dest addresses / ports), and
	// `GENERATED_COOKIE` (distribute load using a generated session cookie).
	SessionAffinity interface{}
	// The number of secs to wait for a backend to respond
	// to a request before considering the request failed. Defaults to `30`.
	TimeoutSec interface{}
}

The set of arguments for constructing a BackendService resource.

type BackendServiceState

type BackendServiceState struct {
	// Lifetime of cookies in seconds if session_affinity is
	// `GENERATED_COOKIE`. If set to 0, the cookie is non-persistent and lasts only until the end of
	// the browser session (or equivalent). The maximum allowed value for TTL is one day.
	AffinityCookieTtlSec interface{}
	// The list of backends that serve this BackendService. Structure is documented below.
	Backends interface{}
	// Cloud CDN configuration for this BackendService. Structure is documented below.
	CdnPolicy interface{}
	// Time for which instance will be drained (not accept new connections,
	// but still work to finish started ones). Defaults to `300`.
	ConnectionDrainingTimeoutSec interface{}
	// ) Headers that the
	// HTTP/S load balancer should add to proxied requests. See [guide](https://cloud.google.com/compute/docs/load-balancing/http/backend-service#user-defined-request-headers) for details.
	CustomRequestHeaders interface{}
	// The textual description for the backend service.
	Description interface{}
	// Whether or not to enable the Cloud CDN on the backend service.
	EnableCdn interface{}
	// The fingerprint of the backend service.
	Fingerprint interface{}
	// Specifies a list of HTTP/HTTPS health checks
	// for checking the health of the backend service. Currently at most one health
	// check can be specified, and a health check is required.
	HealthChecks interface{}
	// Specification for the Identity-Aware proxy. Disabled if not specified. Structure is documented below.
	Iap interface{}
	// The name of the backend service.
	Name interface{}
	// The name of a service that has been added to an
	// instance group in this backend. See [related docs](https://cloud.google.com/compute/docs/instance-groups/#specifying_service_endpoints) for details. Defaults to http.
	PortName interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// The protocol for incoming requests. Defaults to
	// `HTTP`.
	Protocol interface{}
	// Name or URI of a
	// [security policy](https://cloud.google.com/armor/docs/security-policy-concepts) to add to the backend service.
	SecurityPolicy 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
	// `GENERATED_COOKIE` (distribute load using a generated session cookie).
	SessionAffinity interface{}
	// The number of secs to wait for a backend to respond
	// to a request before considering the request failed. Defaults to `30`.
	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).

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=disk_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=firewall_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=forwarding_rule_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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{}
	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 list 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{}
	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 list of HTTP/HTTPS health checks used by the Backend Service.
	HealthChecks interface{}
	Iaps         interface{}
	// The name of a service that has been added to an instance group in this backend.
	PortName interface{}
	// The protocol for incoming requests.
	Protocol       interface{}
	Region         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 acces 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 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{}
	// 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{}
	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{}
	// 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. Sructure 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{}
	CreateTimeout 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{}
	// The networks attached to the instance. Structure is documented below.
	NetworkInterfaces 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 service account to attach to the instance. Structure is documented below.
	ServiceAccounts interface{}
	// The list of tags attached to the instance.
	Tags interface{}
	// The unique fingerprint of the tags.
	TagsFingerprint 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{}
	// 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 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{}
	// 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{}
	// The Google-curated or custom profile used by this policy.
	Profile 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{}
	// 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{}
	// 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{}
	// 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=global_address_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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
}

Manages a Global Forwarding Rule within GCE. This binds an ip and port to a target HTTP(s) proxy. For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/http/global-forwarding-rules) and [API](https://cloud.google.com/compute/docs/reference/latest/globalForwardingRules).

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

Textual description field.

func (*GlobalForwardingRule) ID

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

func (*GlobalForwardingRule) IpAddress

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

The static IP. (if not set, an ephemeral IP is used). This should be the literal IP address to be used, not the `self_link` to a `google_compute_global_address` resource. (If using a `google_compute_global_address` resource, use the `address` property instead of the `self_link` property.)

func (*GlobalForwardingRule) IpProtocol

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

The IP protocol to route, one of "TCP" "UDP" "AH" "ESP" or "SCTP". (default "TCP").

func (*GlobalForwardingRule) IpVersion

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

The IP Version that will be used by this resource's address. One of `"IPV4"` or `"IPV6"`. You cannot provide this and `ip_address`.

func (*GlobalForwardingRule) LabelFingerprint

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

func (*GlobalForwardingRule) Labels

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

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

func (*GlobalForwardingRule) Name

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

func (*GlobalForwardingRule) PortRange

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

A range e.g. "1024-2048" or a single port "1024" (defaults to all ports!). Some types of forwarding targets have constraints on the acceptable ports: * Target HTTP proxy: 80, 8080 * Target HTTPS proxy: 443 * Target TCP proxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * Target SSL proxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222 * Target VPN gateway: 500, 4500

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

URL of target HTTP or HTTPS proxy.

func (*GlobalForwardingRule) URN

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

type GlobalForwardingRuleArgs

type GlobalForwardingRuleArgs struct {
	// Textual description field.
	Description interface{}
	// The static IP. (if not set, an ephemeral IP is
	// used). This should be the literal IP address to be used, not the `self_link`
	// to a `google_compute_global_address` resource. (If using a `google_compute_global_address`
	// resource, use the `address` property instead of the `self_link` property.)
	IpAddress interface{}
	// The IP protocol to route, one of "TCP" "UDP" "AH"
	// "ESP" or "SCTP". (default "TCP").
	IpProtocol interface{}
	//
	// The IP Version that will be used by this resource's address. One of `"IPV4"` or `"IPV6"`.
	// You cannot provide this and `ip_address`.
	IpVersion interface{}
	// )
	// A set of key/value label pairs to assign to the resource.
	Labels interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// A range e.g. "1024-2048" or a single port "1024"
	// (defaults to all ports!).
	// Some types of forwarding targets have constraints on the acceptable ports:
	// * Target HTTP proxy: 80, 8080
	// * Target HTTPS proxy: 443
	// * Target TCP proxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222
	// * Target SSL proxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222
	// * Target VPN gateway: 500, 4500
	PortRange interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// URL of target HTTP or HTTPS proxy.
	Target interface{}
}

The set of arguments for constructing a GlobalForwardingRule resource.

type GlobalForwardingRuleState

type GlobalForwardingRuleState struct {
	// Textual description field.
	Description interface{}
	// The static IP. (if not set, an ephemeral IP is
	// used). This should be the literal IP address to be used, not the `self_link`
	// to a `google_compute_global_address` resource. (If using a `google_compute_global_address`
	// resource, use the `address` property instead of the `self_link` property.)
	IpAddress interface{}
	// The IP protocol to route, one of "TCP" "UDP" "AH"
	// "ESP" or "SCTP". (default "TCP").
	IpProtocol interface{}
	//
	// The IP Version that will be used by this resource's address. One of `"IPV4"` or `"IPV6"`.
	// You cannot provide this and `ip_address`.
	IpVersion        interface{}
	LabelFingerprint interface{}
	// )
	// A set of key/value label pairs to assign to the resource.
	Labels interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// A range e.g. "1024-2048" or a single port "1024"
	// (defaults to all ports!).
	// Some types of forwarding targets have constraints on the acceptable ports:
	// * Target HTTP proxy: 80, 8080
	// * Target HTTPS proxy: 443
	// * Target TCP proxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222
	// * Target SSL proxy: 25, 43, 110, 143, 195, 443, 465, 587, 700, 993, 995, 1883, 5222
	// * Target VPN gateway: 500, 4500
	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{}
	// URL of target HTTP or HTTPS proxy.
	Target interface{}
}

Input properties used for looking up and filtering GlobalForwardingRule 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=health_check_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=http_health_check_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=https_health_check_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=image_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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) 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{}
	// 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) 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{}
	// 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{}
	// 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 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{}
	// 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) Schedulings

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

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) 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.
	Schedulings interface{}
	// Service account to attach to the instance. Structure is documented below.
	ServiceAccount 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.
	Schedulings interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// Service account to attach to the instance. Structure is documented below.
	ServiceAccount 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.

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=managed_ssl_certificate_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=network_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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) 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{}
	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 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) ID

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

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

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{}
	// 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{}
	// 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{}
	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 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=region_autoscaler_beta&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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. For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/internal/) and [API](https://cloud.google.com/compute/docs/reference/latest/regionBackendServices).

> **Note**: Region backend services can only be used when using internal load balancing. For external load balancing, use

`google_compute_backend_service` instead.

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

The list of backends that serve this BackendService. Structure is documented below.

func (*RegionBackendService) ConnectionDrainingTimeoutSec

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

Time for which instance will be drained (not accept new connections, but still work to finish started ones). Defaults to `0`.

func (*RegionBackendService) Description

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

The textual description for the backend service.

func (*RegionBackendService) Fingerprint

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

The fingerprint of the backend service.

func (*RegionBackendService) HealthChecks

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

Specifies a list of health checks for checking the health of the backend service. Currently at most one health check can be specified, and a health check is required.

func (*RegionBackendService) ID

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

func (*RegionBackendService) Name

The name of the backend service.

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

The protocol for incoming requests. Defaults to `TCP`.

func (*RegionBackendService) Region

The Region in which the created address should reside. If it is not provided, the provider region is used.

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

The URI of the created resource.

func (*RegionBackendService) SessionAffinity

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

How to distribute load. Options are `NONE` (no affinity), `CLIENT_IP`, `CLIENT_IP_PROTO`, or `CLIENT_IP_PORT_PROTO`. Defaults to `NONE`.

func (*RegionBackendService) TimeoutSec

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

The number of secs to wait for a backend to respond to a request before considering the request failed. Defaults to `30`.

func (*RegionBackendService) URN

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

type RegionBackendServiceArgs

type RegionBackendServiceArgs struct {
	// The list of backends that serve this BackendService.
	// Structure is documented below.
	Backends interface{}
	// Time for which instance will be drained
	// (not accept new connections, but still work to finish started ones). Defaults to `0`.
	ConnectionDrainingTimeoutSec interface{}
	// The textual description for the backend service.
	Description interface{}
	// Specifies a list of health checks
	// for checking the health of the backend service. Currently at most
	// one health check can be specified, and a health check is required.
	HealthChecks interface{}
	// The name of the backend service.
	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 protocol for incoming requests. Defaults to
	// `TCP`.
	Protocol interface{}
	// The Region in which the created address should reside.
	// If it is not provided, the provider region is used.
	Region interface{}
	// How to distribute load. Options are `NONE` (no
	// affinity), `CLIENT_IP`, `CLIENT_IP_PROTO`, or `CLIENT_IP_PORT_PROTO`.
	// Defaults to `NONE`.
	SessionAffinity interface{}
	// The number of secs to wait for a backend to respond
	// to a request before considering the request failed. Defaults to `30`.
	TimeoutSec interface{}
}

The set of arguments for constructing a RegionBackendService resource.

type RegionBackendServiceState

type RegionBackendServiceState struct {
	// The list of backends that serve this BackendService.
	// Structure is documented below.
	Backends interface{}
	// Time for which instance will be drained
	// (not accept new connections, but still work to finish started ones). Defaults to `0`.
	ConnectionDrainingTimeoutSec interface{}
	// The textual description for the backend service.
	Description interface{}
	// The fingerprint of the backend service.
	Fingerprint interface{}
	// Specifies a list of health checks
	// for checking the health of the backend service. Currently at most
	// one health check can be specified, and a health check is required.
	HealthChecks interface{}
	// The name of the backend service.
	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 protocol for incoming requests. Defaults to
	// `TCP`.
	Protocol interface{}
	// The Region in which the created address should reside.
	// If it is not provided, the provider region is used.
	Region interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// How to distribute load. Options are `NONE` (no
	// affinity), `CLIENT_IP`, `CLIENT_IP_PROTO`, or `CLIENT_IP_PORT_PROTO`.
	// Defaults to `NONE`.
	SessionAffinity interface{}
	// The number of secs to wait for a backend to respond
	// to a request before considering the request failed. Defaults to `30`.
	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).

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=region_disk_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=route_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=router_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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) 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.

type RouterInterfaceArgs

type RouterInterfaceArgs struct {
	// 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.
	VpnTunnel interface{}
}

The set of arguments for constructing a RouterInterface resource.

type RouterInterfaceState

type RouterInterfaceState struct {
	// 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.
	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) 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{}
	// 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{}
	// 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=ssl_certificate_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=ssl_policy_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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).

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 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=snapshot_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=subnetwork_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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) 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{}
	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{}
	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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=target_http_proxy_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=target_https_proxy_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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 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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=target_ssl_proxy_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=target_tcp_proxy_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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.

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=url_map_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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)

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=target_vpn_gateway_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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).

<div class = "oics-button" style="float: right; margin: 0 0 -15px">

<a href="https://console.cloud.google.com/cloudshell/open?cloudshell_git_repo=https%3A%2F%2Fgithub.com%2Fterraform-google-modules%2Fdocs-examples.git&cloudshell_working_dir=vpn_tunnel_basic&cloudshell_image=gcr.io%2Fgraphite-cloud-shell-images%2Fterraform%3Alatest&open_in_editor=main.tf&cloudshell_print=.%2Fmotd&cloudshell_tutorial=.%2Ftutorial.md" target="_blank">
  <img alt="Open in Cloud Shell" src="//gstatic.com/cloudssh/images/open-btn.svg" style="max-height: 44px; margin: 32px auto; max-width: 100%;">
</a>

</div>

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) 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.

type VPNTunnelArgs

type VPNTunnelArgs struct {
	Description           interface{}
	IkeVersion            interface{}
	Labels                interface{}
	LocalTrafficSelectors interface{}
	Name                  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{}
}

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{}
	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{}
}

Input properties used for looking up and filtering VPNTunnel resources.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL