compute

package
v0.14.1-dev Latest Latest
Warning

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

Go to latest
Published: Jun 13, 2018 License: Apache-2.0 Imports: 2 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func LookupDefaultServiceAccount

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

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

Types

type Address

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

Creates a static IP address resource for Google Compute Engine. For more information see the official documentation for [external](https://cloud.google.com/compute/docs/instances-and-network) and [internal](https://cloud.google.com/compute/docs/ip-addresses/reserve-static-internal-ip-address) static IP reservations, as well as the [API](https://cloud.google.com/compute/docs/reference/beta/addresses/insert).

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 address to reserve. An address may only be specified for INTERNAL address types. The IP address must be inside the specified subnetwork, if any.

func (*Address) AddressType

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

The Address Type that should be configured. Specify INTERNAL to reserve an internal static IP address EXTERNAL to specify an external static IP address. Defaults to EXTERNAL if omitted.

func (*Address) ID

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

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

func (*Address) Name

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

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

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

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

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

The URI of the created resource.

func (*Address) Subnetwork

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

The self link URI of the subnetwork in which to create the address. A subnetwork may only be specified for INTERNAL address types.

func (*Address) URN

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

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

type AddressArgs

type AddressArgs struct {
	// The IP address to reserve. An address may only be
	// specified for INTERNAL address types. The IP address must be inside the
	// specified subnetwork, if any.
	Address interface{}
	// The Address Type that should be configured.
	// Specify INTERNAL to reserve an internal static IP address EXTERNAL to
	// specify an external static IP address. Defaults to EXTERNAL if omitted.
	AddressType 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{}
	// The Region in which the created address should reside.
	// If it is not provided, the provider region is used.
	Region interface{}
	// The self link URI of the subnetwork in which to
	// create the address. A subnetwork may only be specified for INTERNAL
	// address types.
	Subnetwork interface{}
}

The set of arguments for constructing a Address resource.

type AddressState

type AddressState struct {
	// The IP address to reserve. An address may only be
	// specified for INTERNAL address types. The IP address must be inside the
	// specified subnetwork, if any.
	Address interface{}
	// The Address Type that should be configured.
	// Specify INTERNAL to reserve an internal static IP address EXTERNAL to
	// specify an external static IP address. Defaults to EXTERNAL if omitted.
	AddressType 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{}
	// 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{}
	// The self link URI of the subnetwork in which to
	// create the address. A subnetwork may only be specified for INTERNAL
	// address types.
	Subnetwork interface{}
}

Input properties used for looking up and filtering Address resources.

type Autoscalar

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

A Compute Engine Autoscaler automatically adds or removes virtual machines from a managed instance group based on increases or decreases in load. This allows your applications to gracefully handle increases in traffic and reduces cost when the need for resources is lower. You just define the autoscaling policy and the autoscaler performs automatic scaling based on the measured load. For more information, see [the official documentation](https://cloud.google.com/compute/docs/autoscaler/) and [API](https://cloud.google.com/compute/docs/reference/latest/autoscalers)

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

The parameters of the autoscaling algorithm. Structure is documented below.

func (*Autoscalar) Description

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

An optional textual description of the instance group manager.

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

The name of the Google Cloud Monitoring metric to follow, e.g. `compute.googleapis.com/instance/network/received_bytes_count`

func (*Autoscalar) Project

func (r *Autoscalar) 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 *Autoscalar) SelfLink() *pulumi.StringOutput

The URL of the created resource.

func (*Autoscalar) Target

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

The floating point threshold where load balancing utilization should be. E.g. if the load balancer's `maxRatePerInstance` is 10 requests per second (RPS) then setting this to 0.5 would cause the group to be scaled such that each instance receives 5 RPS.

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

The zone of the target.

type AutoscalarArgs

type AutoscalarArgs struct {
	// The parameters of the autoscaling
	// algorithm. Structure is documented below.
	AutoscalingPolicy interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The name of the Google Cloud Monitoring metric to follow, e.g.
	// `compute.googleapis.com/instance/network/received_bytes_count`
	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 floating point threshold where load balancing utilization
	// should be. E.g. if the load balancer's `maxRatePerInstance` is 10 requests
	// per second (RPS) then setting this to 0.5 would cause the group to be scaled
	// such that each instance receives 5 RPS.
	Target interface{}
	// The zone of the target.
	Zone interface{}
}

The set of arguments for constructing a Autoscalar resource.

type AutoscalarState

type AutoscalarState struct {
	// The parameters of the autoscaling
	// algorithm. Structure is documented below.
	AutoscalingPolicy interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The name of the Google Cloud Monitoring metric to follow, e.g.
	// `compute.googleapis.com/instance/network/received_bytes_count`
	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 URL of the created resource.
	SelfLink interface{}
	// The floating point threshold where load balancing utilization
	// should be. E.g. if the load balancer's `maxRatePerInstance` is 10 requests
	// per second (RPS) then setting this to 0.5 would cause the group to be scaled
	// such that each instance receives 5 RPS.
	Target interface{}
	// The zone of the target.
	Zone interface{}
}

Input properties used for looking up and filtering Autoscalar resources.

type BackendBucket

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

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](/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) 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) Description

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

Textual description for the backend.

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 {
	// 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{}
	// Textual description for the backend.
	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 {
	// 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{}
	// Textual description for the backend.
	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
}

Creates a new persistent disk within GCE, based on another disk. For more information see [the official documentation](https://cloud.google.com/compute/docs/disks/add-persistent-disk) and [API](https://cloud.google.com/compute/docs/reference/latest/disks).

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

func GetDisk

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

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

func NewDisk

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

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

func (*Disk) DiskEncryptionKeyRaw

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

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4) to encrypt this disk.

func (*Disk) DiskEncryptionKeySha256

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

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

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

The image from which to initialize this disk. This can be one of: the image's `self_link`, `projects/{project}/global/images/{image}`, `projects/{project}/global/images/family/{family}`, `global/images/{image}`, `global/images/family/{family}`, `family/{family}`, `{project}/{family}`, `{project}/{image}`, `{family}`, or `{image}`. If referred by family, the images names must include the family name. If they don't, use the [google_compute_image data source](/docs/providers/google/d/datasource_compute_image.html). For instance, the image `centos-6-v20180104` includes its family name `centos-6`. These images can be referred by family name here.

func (*Disk) LabelFingerprint

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

The fingerprint of the assigned labels.

func (*Disk) Labels

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

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

func (*Disk) Name

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

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

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

The size of the image in gigabytes. If not specified, it will inherit the size of its base image.

func (*Disk) Snapshot

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

Name of snapshot from which to initialize this disk.

func (*Disk) Type

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

The GCE disk type.

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

The Users of the created resource.

func (*Disk) Zone

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

The zone where this disk will be available.

type DiskArgs

type DiskArgs struct {
	// A 256-bit [customer-supplied encryption key]
	// (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption),
	// encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// to encrypt this disk.
	DiskEncryptionKeyRaw interface{}
	// The image from which to initialize this disk. This can be
	// one of: the image's `self_link`, `projects/{project}/global/images/{image}`,
	// `projects/{project}/global/images/family/{family}`, `global/images/{image}`,
	// `global/images/family/{family}`, `family/{family}`, `{project}/{family}`,
	// `{project}/{image}`, `{family}`, or `{image}`. If referred by family, the
	// images names must include the family name. If they don't, use the
	// [google_compute_image data source](/docs/providers/google/d/datasource_compute_image.html).
	// For instance, the image `centos-6-v20180104` includes its family name `centos-6`.
	// These images can be referred by family name here.
	Image interface{}
	// A set of key/value label pairs to assign to the image.
	Labels 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{}
	// The size of the image in gigabytes. If not specified, it
	// will inherit the size of its base image.
	Size interface{}
	// Name of snapshot from which to initialize this disk.
	Snapshot interface{}
	// The GCE disk type.
	Type interface{}
	// The zone where this disk will be available.
	Zone interface{}
}

The set of arguments for constructing a Disk resource.

type DiskState

type DiskState struct {
	// A 256-bit [customer-supplied encryption key]
	// (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption),
	// encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// to encrypt this disk.
	DiskEncryptionKeyRaw 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 resource.
	DiskEncryptionKeySha256 interface{}
	// The image from which to initialize this disk. This can be
	// one of: the image's `self_link`, `projects/{project}/global/images/{image}`,
	// `projects/{project}/global/images/family/{family}`, `global/images/{image}`,
	// `global/images/family/{family}`, `family/{family}`, `{project}/{family}`,
	// `{project}/{image}`, `{family}`, or `{image}`. If referred by family, the
	// images names must include the family name. If they don't, use the
	// [google_compute_image data source](/docs/providers/google/d/datasource_compute_image.html).
	// For instance, the image `centos-6-v20180104` includes its family name `centos-6`.
	// These images can be referred by family name here.
	Image interface{}
	// The fingerprint of the assigned labels.
	LabelFingerprint interface{}
	// A set of key/value label pairs to assign to the image.
	Labels 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{}
	// The URI of the created resource.
	SelfLink interface{}
	// The size of the image in gigabytes. If not specified, it
	// will inherit the size of its base image.
	Size interface{}
	// Name of snapshot from which to initialize this disk.
	Snapshot interface{}
	// The GCE disk type.
	Type interface{}
	// The Users of the created resource.
	Users interface{}
	// The zone where this disk will be available.
	Zone interface{}
}

Input properties used for looking up and filtering Disk resources.

type Firewall

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

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

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

Can be specified multiple times for each allow rule. Each allow block supports fields documented below.

func (*Firewall) Denies

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

Can be specified multiple times for each deny rule. Each deny block supports fields documented below. Can be specified instead of allow.

func (*Firewall) Description

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

Textual description field.

func (*Firewall) DestinationRanges

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

A list of destination CIDR ranges that this firewall applies to. Can't be used for `INGRESS`.

func (*Firewall) Direction

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

Direction of traffic to which this firewall applies; One of `INGRESS` or `EGRESS`. Defaults to `INGRESS`.

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

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

func (*Firewall) Network

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

The name or self_link of the network to attach this firewall to.

func (*Firewall) Priority

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

The priority for this firewall. Ranges from 0-65535, inclusive. Defaults to 1000. Firewall resources with lower priority values have higher precedence (e.g. a firewall resource with a priority value of 0 takes effect over all other firewall rules with a non-zero priority).

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

A list of source CIDR ranges that this firewall applies to. Can't be used for `EGRESS`.

func (*Firewall) SourceServiceAccounts

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

A list of service accounts such that the firewall will apply only to traffic originating from an instance with a service account in this list. Note that as of May 2018, this list can contain only one item, due to a change in the way that these firewall rules are handled. Source service accounts cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not an IP address. `source_ranges` can be set at the same time as `source_service_accounts`. If both are set, the firewall will apply to traffic that has source IP address within `source_ranges` OR the source IP belongs to an instance with service account listed in `source_service_accounts`. The connection does not need to match both properties for the firewall to apply. `source_service_accounts` cannot be used at the same time as `source_tags` or `target_tags`.

func (*Firewall) SourceTags

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

A list of source tags for this firewall. Can't be used for `EGRESS`.

func (*Firewall) TargetServiceAccounts

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

A list of service accounts indicating sets of instances located in the network that may make network connections as specified in `allow`. `target_service_accounts` cannot be used at the same time as `source_tags` or `target_tags`. If neither `target_service_accounts` nor `target_tags` are specified, the firewall rule applies to all instances on the specified network. Note that as of May 2018, this list can contain only one item, due to a change in the way that these firewall rules are handled.

func (*Firewall) TargetTags

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

A list of target tags for this firewall.

func (*Firewall) URN

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

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

type FirewallArgs

type FirewallArgs struct {
	// Can be specified multiple times for each allow
	// rule. Each allow block supports fields documented below.
	Allows interface{}
	// Can be specified multiple times for each deny
	// rule. Each deny block supports fields documented below. Can be specified
	// instead of allow.
	Denies interface{}
	// Textual description field.
	Description interface{}
	// A list of destination CIDR ranges that this
	// firewall applies to. Can't be used for `INGRESS`.
	DestinationRanges interface{}
	// Direction of traffic to which this firewall applies;
	// One of `INGRESS` or `EGRESS`. Defaults to `INGRESS`.
	Direction interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The name or self_link of the network to attach this firewall to.
	Network interface{}
	// The priority for this firewall. Ranges from 0-65535, inclusive. Defaults to 1000. Firewall
	// resources with lower priority values have higher precedence (e.g. a firewall resource with a priority value of 0
	// takes effect over all other firewall rules with a non-zero priority).
	Priority interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// A list of source CIDR ranges that this
	// firewall applies to. Can't be used for `EGRESS`.
	SourceRanges interface{}
	// A list of service accounts such that
	// the firewall will apply only to traffic originating from an instance with a service account in this list.  Note that as of May 2018,
	// this list can contain only one item, due to a change in the way that these firewall rules are handled.  Source service accounts
	// cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not
	// an IP address. `source_ranges` can be set at the same time as `source_service_accounts`. If both are set, the firewall will apply to
	// traffic that has source IP address within `source_ranges` OR the source IP belongs to an instance with service account listed in
	// `source_service_accounts`. The connection does not need to match both properties for the firewall to apply. `source_service_accounts`
	// cannot be used at the same time as `source_tags` or `target_tags`.
	SourceServiceAccounts interface{}
	// A list of source tags for this firewall. Can't be used for `EGRESS`.
	SourceTags interface{}
	// A list of service accounts indicating
	// sets of instances located in the network that may make network connections as specified in `allow`. `target_service_accounts` cannot
	// be used at the same time as `source_tags` or `target_tags`. If neither `target_service_accounts` nor `target_tags` are specified, the
	// firewall rule applies to all instances on the specified network.  Note that as of May 2018, this list can contain only one item, due
	// to a change in the way that these firewall rules are handled.
	TargetServiceAccounts interface{}
	// A list of target tags for this firewall.
	TargetTags interface{}
}

The set of arguments for constructing a Firewall resource.

type FirewallState

type FirewallState struct {
	// Can be specified multiple times for each allow
	// rule. Each allow block supports fields documented below.
	Allows interface{}
	// Can be specified multiple times for each deny
	// rule. Each deny block supports fields documented below. Can be specified
	// instead of allow.
	Denies interface{}
	// Textual description field.
	Description interface{}
	// A list of destination CIDR ranges that this
	// firewall applies to. Can't be used for `INGRESS`.
	DestinationRanges interface{}
	// Direction of traffic to which this firewall applies;
	// One of `INGRESS` or `EGRESS`. Defaults to `INGRESS`.
	Direction interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The name or self_link of the network to attach this firewall to.
	Network interface{}
	// The priority for this firewall. Ranges from 0-65535, inclusive. Defaults to 1000. Firewall
	// resources with lower priority values have higher precedence (e.g. a firewall resource with a priority value of 0
	// takes effect over all other firewall rules with a non-zero priority).
	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{}
	// A list of source CIDR ranges that this
	// firewall applies to. Can't be used for `EGRESS`.
	SourceRanges interface{}
	// A list of service accounts such that
	// the firewall will apply only to traffic originating from an instance with a service account in this list.  Note that as of May 2018,
	// this list can contain only one item, due to a change in the way that these firewall rules are handled.  Source service accounts
	// cannot be used to control traffic to an instance's external IP address because service accounts are associated with an instance, not
	// an IP address. `source_ranges` can be set at the same time as `source_service_accounts`. If both are set, the firewall will apply to
	// traffic that has source IP address within `source_ranges` OR the source IP belongs to an instance with service account listed in
	// `source_service_accounts`. The connection does not need to match both properties for the firewall to apply. `source_service_accounts`
	// cannot be used at the same time as `source_tags` or `target_tags`.
	SourceServiceAccounts interface{}
	// A list of source tags for this firewall. Can't be used for `EGRESS`.
	SourceTags interface{}
	// A list of service accounts indicating
	// sets of instances located in the network that may make network connections as specified in `allow`. `target_service_accounts` cannot
	// be used at the same time as `source_tags` or `target_tags`. If neither `target_service_accounts` nor `target_tags` are specified, the
	// firewall rule applies to all instances on the specified network.  Note that as of May 2018, this list can contain only one item, due
	// to a change in the way that these firewall rules are handled.
	TargetServiceAccounts interface{}
	// A list of target tags for this firewall.
	TargetTags interface{}
}

Input properties used for looking up and filtering Firewall resources.

type ForwardingRule

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

Manages a Forwarding Rule within GCE. This binds an ip and port range to a target pool. For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/network/forwarding-rules) and [API](https://cloud.google.com/compute/docs/reference/latest/forwardingRules).

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

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

BackendService resource to receive the matched traffic. Only used for internal load balancing.

func (*ForwardingRule) Description

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

Textual description field.

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

The static IP. (if not set, an ephemeral IP is used).

func (*ForwardingRule) IpProtocol

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

The IP protocol to route, one of "TCP" "UDP" "AH" "ESP" or "SCTP" for external load balancing, "TCP" or "UDP" for internal (default "TCP").

func (*ForwardingRule) LoadBalancingScheme

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

Type of load balancing to use. Can be set to "INTERNAL" or "EXTERNAL" (default "EXTERNAL").

func (*ForwardingRule) Name

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

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

func (*ForwardingRule) Network

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

Network name or self_link that the load balanced IP should belong to. Only used for internal load balancing. If it is not provided, the default network is used.

func (*ForwardingRule) PortRange

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

A range e.g. "1024-2048" or a single port "1024" (defaults to all ports!). Only used for external load balancing. 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 (*ForwardingRule) Ports

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

A list of ports (maximum of 5) to use for internal load balancing. Packets addressed to these ports will be forwarded to the backends configured with this forwarding rule. Required for internal load balancing.

func (*ForwardingRule) Project

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

The ID of 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

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

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

The URI of the created resource.

func (*ForwardingRule) Subnetwork

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

Subnetwork that the load balanced IP should belong to. Only used for internal load balancing. Must be specified if the network is in custom subnet mode.

func (*ForwardingRule) Target

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

URL of target pool. Required for external load balancing.

func (*ForwardingRule) URN

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

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

type ForwardingRuleArgs

type ForwardingRuleArgs struct {
	// BackendService resource to receive the
	// matched traffic. Only used for internal load balancing.
	BackendService interface{}
	// Textual description field.
	Description interface{}
	// The static IP. (if not set, an ephemeral IP is
	// used).
	IpAddress interface{}
	// The IP protocol to route, one of "TCP" "UDP" "AH"
	// "ESP" or "SCTP" for external load balancing, "TCP" or "UDP" for internal
	// (default "TCP").
	IpProtocol interface{}
	// Type of load balancing to use. Can be
	// set to "INTERNAL" or "EXTERNAL" (default "EXTERNAL").
	LoadBalancingScheme interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// Network name or self_link that the load balanced IP
	// should belong to. Only used for internal load balancing. If it is not
	// provided, the default network is used.
	Network interface{}
	// A range e.g. "1024-2048" or a single port "1024"
	// (defaults to all ports!). Only used for external load balancing.
	// 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{}
	// A list of ports (maximum of 5) to use for internal load
	// balancing. Packets addressed to these ports will be forwarded to the backends
	// configured with this forwarding rule. Required for internal load balancing.
	Ports interface{}
	// The ID of 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 should reside.
	// If it is not provided, the provider region is used.
	Region interface{}
	// Subnetwork that the load balanced IP should belong
	// to. Only used for internal load balancing. Must be specified if the network
	// is in custom subnet mode.
	Subnetwork interface{}
	// URL of target pool. Required for external load
	// balancing.
	Target interface{}
}

The set of arguments for constructing a ForwardingRule resource.

type ForwardingRuleState

type ForwardingRuleState struct {
	// BackendService resource to receive the
	// matched traffic. Only used for internal load balancing.
	BackendService interface{}
	// Textual description field.
	Description interface{}
	// The static IP. (if not set, an ephemeral IP is
	// used).
	IpAddress interface{}
	// The IP protocol to route, one of "TCP" "UDP" "AH"
	// "ESP" or "SCTP" for external load balancing, "TCP" or "UDP" for internal
	// (default "TCP").
	IpProtocol interface{}
	// Type of load balancing to use. Can be
	// set to "INTERNAL" or "EXTERNAL" (default "EXTERNAL").
	LoadBalancingScheme interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// Network name or self_link that the load balanced IP
	// should belong to. Only used for internal load balancing. If it is not
	// provided, the default network is used.
	Network interface{}
	// A range e.g. "1024-2048" or a single port "1024"
	// (defaults to all ports!). Only used for external load balancing.
	// 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{}
	// A list of ports (maximum of 5) to use for internal load
	// balancing. Packets addressed to these ports will be forwarded to the backends
	// configured with this forwarding rule. Required for internal load balancing.
	Ports interface{}
	// The ID of 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 should reside.
	// If it is not provided, the provider region is used.
	Region interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// Subnetwork that the load balanced IP should belong
	// to. Only used for internal load balancing. Must be specified if the network
	// is in custom subnet mode.
	Subnetwork interface{}
	// URL of target pool. Required for external load
	// balancing.
	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{}
}

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

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 {
	Email interface{}
	// The project ID. If it is not provided, the provider project is used.
	Project interface{}
}

A collection of arguments for invoking getDefaultServiceAccount.

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

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

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

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

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)

```

data "google_compute_instance_group" "all" {
	name = "instance-group-name"
	zone = "us-central1-a"
}

```

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

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

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

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

```

data "google_compute_region_instance_group" "group" {
	name = "instance-group-name"
}

```

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

```

resource "google_compute_region_instance_group_manager" "foo" {
	name = "some_name"
    ...
	base_instance_name = "foo"
    ...
	instance_template = "${google_compute_instance_template.foo.self_link}"
	target_pools = ["${google_compute_target_pool.foo.self_link}"]
    ...
}
data "google_compute_region_instance_group" "data_source" {
	self_link = "${google_compute_region_instance_group_manager.foo.instance_group}"
}

```

type GetSubnetworkArgs

type GetSubnetworkArgs struct {
	// The name of the subnetwork.
	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{}
}

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{}
	// The URI of the created resource.
	SelfLink 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{}
}

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

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.

``` data "google_compute_zones" "available" {}

resource "google_compute_instance_group_manager" "foo" {
  count = "${length(data.google_compute_zones.available.names)}"

  name               = "terraform-test-${count.index}"
  instance_template  = "${google_compute_instance_template.foobar.self_link}"
  base_instance_name = "foobar-${count.index}"
  zone               = "${data.google_compute_zones.available.names[count.index]}"
  target_size        = 1
}

```

type GlobalAddress

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

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

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

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 (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 {
	Description interface{}
	IpVersion   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 GlobalAddress resource.

type GlobalAddressState

type GlobalAddressState struct {
	Address           interface{}
	CreationTimestamp interface{}
	Description       interface{}
	IpVersion         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 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"`.

func (*GlobalForwardingRule) LabelFingerprint

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

([Beta](/docs/providers/google/index.html#beta-features)) The current label fingerprint.

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"`.
	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"`.
	IpVersion interface{}
	// ([Beta](/docs/providers/google/index.html#beta-features)) The current label fingerprint.
	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
}

Manages a health check within GCE. This is used to monitor instances behind load balancers. Timeouts or HTTP errors cause the instance to be removed from the pool. For more information, see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/health-checks) and [API](https://cloud.google.com/compute/docs/reference/latest/healthChecks).

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

The number of seconds between each poll of the instance instance (default 5).

func (*HealthCheck) Description

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

Textual description field.

func (*HealthCheck) HealthyThreshold

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

Consecutive successes required (default 2).

func (*HealthCheck) HttpHealthCheck

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

An HTTP Health Check. Only one kind of Health Check can be added. Structure is documented below.

func (*HealthCheck) HttpsHealthCheck

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

An HTTPS Health Check. Only one kind of Health Check can be added. Structure is documented below.

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

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

func (*HealthCheck) Project

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

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

An SSL Health Check. Only one kind of Health Check can be added. Structure is documented below.

func (*HealthCheck) TcpHealthCheck

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

A TCP Health Check. Only one kind of Health Check can be added. Structure is documented below.

func (*HealthCheck) TimeoutSec

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

The number of seconds to wait before declaring failure (default 5).

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

Consecutive failures required (default 2).

type HealthCheckArgs

type HealthCheckArgs struct {
	// The number of seconds between each poll of
	// the instance instance (default 5).
	CheckIntervalSec interface{}
	// Textual description field.
	Description interface{}
	// Consecutive successes required (default 2).
	HealthyThreshold interface{}
	// An HTTP Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	HttpHealthCheck interface{}
	// An HTTPS Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	HttpsHealthCheck interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The project in which the resource belongs. If it
	// is not provided, the provider project is used.
	Project interface{}
	// An SSL Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	SslHealthCheck interface{}
	// A TCP Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	TcpHealthCheck interface{}
	// The number of seconds to wait before declaring
	// failure (default 5).
	TimeoutSec interface{}
	// Consecutive failures required (default 2).
	UnhealthyThreshold interface{}
}

The set of arguments for constructing a HealthCheck resource.

type HealthCheckState

type HealthCheckState struct {
	// The number of seconds between each poll of
	// the instance instance (default 5).
	CheckIntervalSec interface{}
	// Textual description field.
	Description interface{}
	// Consecutive successes required (default 2).
	HealthyThreshold interface{}
	// An HTTP Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	HttpHealthCheck interface{}
	// An HTTPS Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	HttpsHealthCheck interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// 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{}
	// An SSL Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	SslHealthCheck interface{}
	// A TCP Health Check. Only one kind of Health Check can be added.
	// Structure is documented below.
	TcpHealthCheck interface{}
	// The number of seconds to wait before declaring
	// failure (default 5).
	TimeoutSec interface{}
	// Consecutive failures required (default 2).
	UnhealthyThreshold interface{}
}

Input properties used for looking up and filtering HealthCheck resources.

type HttpHealthCheck

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

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
}

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
}

Creates a bootable VM image resource for Google Compute Engine from an existing tarball. For more information see [the official documentation](https://cloud.google.com/compute/docs/images) and [API](https://cloud.google.com/compute/docs/reference/latest/images).

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

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

Configurable timeout in minutes for creating images. Default is 4 minutes.

func (*Image) Description

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

The description of the image to be created

func (*Image) Family

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

The name of the image family to which this image belongs.

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

The fingerprint of the assigned labels.

func (*Image) Labels

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

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

func (*Image) Name

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

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

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

The raw disk that will be used as the source of the image. Changing this forces a new resource to be created. Structure is documented below.

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

The URI of the created resource.

func (*Image) SourceDisk

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

The URL of a disk that will be used as the source of the image. Changing this forces a new resource to be created.

func (*Image) URN

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

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

type ImageArgs

type ImageArgs struct {
	// Configurable timeout in minutes for creating images. Default is 4 minutes.
	CreateTimeout interface{}
	// The description of the image to be created
	Description interface{}
	// The name of the image family to which this image belongs.
	Family interface{}
	// A set of key/value label pairs to assign to the image.
	Labels 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{}
	// The raw disk that will be used as the source of the image.
	// Changing this forces a new resource to be created. Structure is documented
	// below.
	RawDisk interface{}
	// The URL of a disk that will be used as the source of the
	// image. Changing this forces a new resource to be created.
	SourceDisk interface{}
}

The set of arguments for constructing a Image resource.

type ImageState

type ImageState struct {
	// Configurable timeout in minutes for creating images. Default is 4 minutes.
	CreateTimeout interface{}
	// The description of the image to be created
	Description interface{}
	// The name of the image family to which this image belongs.
	Family interface{}
	// The fingerprint of the assigned labels.
	LabelFingerprint interface{}
	// A set of key/value label pairs to assign to the image.
	Labels 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{}
	// The raw disk that will be used as the source of the image.
	// Changing this forces a new resource to be created. Structure is documented
	// below.
	RawDisk interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// The URL of a disk that will be used as the source of the
	// image. Changing this forces a new resource to be created.
	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

List of disks to attach to the instance. 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) CreateTimeout

func (r *Instance) CreateTimeout() *pulumi.IntOutput

Configurable timeout in minutes for creating instances. Default is 4 minutes. Changing this forces a new resource to be created.

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.

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. To create a custom machine type, value should be set as specified [here](https://cloud.google.com/compute/docs/reference/latest/instances#machineType). **Note**: [`allow_stopping_for_update`](#allow_stopping_for_update) must be set to true in order to update this field.

func (*Instance) Metadata

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

Metadata key/value pairs to make available from within the 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`](#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`](#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{}
	// List of disks to attach to the instance. 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{}
	// Configurable timeout in minutes for creating instances. Default is 4 minutes.
	// Changing this forces a new resource to be created.
	CreateTimeout 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.
	GuestAccelerators interface{}
	// A set of key/value label pairs to assign to the instance.
	Labels interface{}
	// The machine type to create. To create a custom
	// machine type, value should be set as specified
	// [here](https://cloud.google.com/compute/docs/reference/latest/instances#machineType).
	// **Note**: [`allow_stopping_for_update`](#allow_stopping_for_update) must be set to true in order to update this field.
	MachineType interface{}
	// Metadata key/value pairs to make available from
	// within the 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`](#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`](#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 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)

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 which the port will be mapped to.

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 which the port will be mapped to.
	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](/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) InstanceTemplate

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

The full URL to an instance template from which all new instances will be created.

func (*InstanceGroupManager) Name

The name of the port.

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 (*InstanceGroupManager) RollingUpdatePolicy

func (r *InstanceGroupManager) RollingUpdatePolicy() *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 (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) UpdateStrategy

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

If the `instance_template` resource is modified, a value of `"NONE"` will prevent any of the managed instances from being restarted by Terraform. A value of `"RESTART"` will restart all of the instances at once. `"ROLLING_UPDATE"` is supported as [Beta feature]. A value of `"ROLLING_UPDATE"` requires `rolling_update_policy` block to be set

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 full URL to an instance template from
	// which all new instances will be created.
	InstanceTemplate interface{}
	// The name of the port.
	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 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)
	// - - -
	RollingUpdatePolicy 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{}
	// If the `instance_template`
	// resource is modified, a value of `"NONE"` will prevent any of the managed
	// instances from being restarted by Terraform. A value of `"RESTART"` will
	// restart all of the instances at once. `"ROLLING_UPDATE"` is supported as [Beta feature].
	// A value of `"ROLLING_UPDATE"` requires `rolling_update_policy` block to be set
	UpdateStrategy 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 full URL to an instance template from
	// which all new instances will be created.
	InstanceTemplate interface{}
	// The name of the port.
	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 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)
	// - - -
	RollingUpdatePolicy 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{}
	// If the `instance_template`
	// resource is modified, a value of `"NONE"` will prevent any of the managed
	// instances from being restarted by Terraform. A value of `"RESTART"` will
	// restart all of the instances at once. `"ROLLING_UPDATE"` is supported as [Beta feature].
	// A value of `"ROLLING_UPDATE"` requires `rolling_update_policy` block to be set
	UpdateStrategy 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 which the port will be mapped to.
	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{}
	// List of disks to attach to the instance. 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{}
	// Configurable timeout in minutes for creating instances. Default is 4 minutes.
	// Changing this forces a new resource to be created.
	CreateTimeout 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.
	GuestAccelerators 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. To create a custom
	// machine type, value should be set as specified
	// [here](https://cloud.google.com/compute/docs/reference/latest/instances#machineType).
	// **Note**: [`allow_stopping_for_update`](#allow_stopping_for_update) must be set to true in order to update this field.
	MachineType interface{}
	// Metadata key/value pairs to make available from
	// within the 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`](#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`](#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 Network

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

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

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

If set to true, this network will be created in auto subnet mode, and Google will create a subnet for each region automatically. If set to false, a custom subnetted network will be created that can support `google_compute_subnetwork` resources. Defaults to true.

func (*Network) Description

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

A brief description of this resource.

func (*Network) GatewayIpv4

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

The IPv4 address of the gateway.

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

If set to a CIDR block, uses the legacy VPC API with the specified range. This API is deprecated. If set, `auto_create_subnetworks` must be explicitly set to false.

func (*Network) Name

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

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

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

Sets the network-wide routing mode for Cloud Routers to use. Accepted values are `"GLOBAL"` or `"REGIONAL"`. Defaults to `"REGIONAL"`. Refer to the [Cloud Router documentation](https://cloud.google.com/router/docs/concepts/overview#dynamic-routing-mode) for more details.

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 {
	// If set to true, this network will be
	// created in auto subnet mode, and Google will create a subnet for each region
	// automatically. If set to false, a custom subnetted network will be created that
	// can support `google_compute_subnetwork` resources. Defaults to true.
	AutoCreateSubnetworks interface{}
	// A brief description of this resource.
	Description interface{}
	// If set to a CIDR block, uses the legacy VPC API with the
	// specified range. This API is deprecated. If set, `auto_create_subnetworks` must be
	// explicitly set to false.
	Ipv4Range 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{}
	// Sets the network-wide routing mode for Cloud Routers
	// to use. Accepted values are `"GLOBAL"` or `"REGIONAL"`. Defaults to `"REGIONAL"`.
	// Refer to the [Cloud Router documentation](https://cloud.google.com/router/docs/concepts/overview#dynamic-routing-mode)
	// for more details.
	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 {
	// If set to true, this network will be
	// created in auto subnet mode, and Google will create a subnet for each region
	// automatically. If set to false, a custom subnetted network will be created that
	// can support `google_compute_subnetwork` resources. Defaults to true.
	AutoCreateSubnetworks interface{}
	// A brief description of this resource.
	Description interface{}
	// The IPv4 address of the gateway.
	GatewayIpv4 interface{}
	// If set to a CIDR block, uses the legacy VPC API with the
	// specified range. This API is deprecated. If set, `auto_create_subnetworks` must be
	// explicitly set to false.
	Ipv4Range 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{}
	// Sets the network-wide routing mode for Cloud Routers
	// to use. Accepted values are `"GLOBAL"` or `"REGIONAL"`. Defaults to `"REGIONAL"`.
	// Refer to the [Cloud Router documentation](https://cloud.google.com/router/docs/concepts/overview#dynamic-routing-mode)
	// for more details.
	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
}

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:** 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](compute_project_metadata_item.html).

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. Changing this resource updates the GCE state.

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. Changing this resource
	// updates the GCE state.
	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. Changing this resource
	// updates the GCE state.
	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
}

A Compute Engine Regional Autoscaler automatically adds or removes virtual machines from a managed instance group based on increases or decreases in load. This allows your applications to gracefully handle increases in traffic and reduces cost when the need for resources is lower. You just define the autoscaling policy and the autoscaler performs automatic scaling based on the measured load. For more information, see [the official documentation](https://cloud.google.com/compute/docs/autoscaler/) and [API](https://cloud.google.com/compute/docs/reference/latest/regionAutoscalers)

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

The parameters of the autoscaling algorithm. Structure is documented below.

func (*RegionAutoscaler) Description

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

An optional textual description of the instance group manager.

func (*RegionAutoscaler) ID

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

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

func (*RegionAutoscaler) Name

The name of the Google Cloud Monitoring metric to follow, e.g. `compute.googleapis.com/instance/network/received_bytes_count`

func (*RegionAutoscaler) Project

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

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

func (*RegionAutoscaler) Region

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

The region of the target.

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

The URL of the created resource.

func (*RegionAutoscaler) Target

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

The floating point threshold where load balancing utilization should be. E.g. if the load balancer's `maxRatePerInstance` is 10 requests per second (RPS) then setting this to 0.5 would cause the group to be scaled such that each instance receives 5 RPS.

func (*RegionAutoscaler) URN

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

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

type RegionAutoscalerArgs

type RegionAutoscalerArgs struct {
	// The parameters of the autoscaling
	// algorithm. Structure is documented below.
	AutoscalingPolicy interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The name of the Google Cloud Monitoring metric to follow, e.g.
	// `compute.googleapis.com/instance/network/received_bytes_count`
	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 of the target.
	Region interface{}
	// The floating point threshold where load balancing utilization
	// should be. E.g. if the load balancer's `maxRatePerInstance` is 10 requests
	// per second (RPS) then setting this to 0.5 would cause the group to be scaled
	// such that each instance receives 5 RPS.
	Target interface{}
}

The set of arguments for constructing a RegionAutoscaler resource.

type RegionAutoscalerState

type RegionAutoscalerState struct {
	// The parameters of the autoscaling
	// algorithm. Structure is documented below.
	AutoscalingPolicy interface{}
	// An optional textual description of the instance
	// group manager.
	Description interface{}
	// The name of the Google Cloud Monitoring metric to follow, e.g.
	// `compute.googleapis.com/instance/network/received_bytes_count`
	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 of the target.
	Region interface{}
	// The URL of the created resource.
	SelfLink interface{}
	// The floating point threshold where load balancing utilization
	// should be. E.g. if the load balancer's `maxRatePerInstance` is 10 requests
	// per second (RPS) then setting this to 0.5 would cause the group to be scaled
	// such that each instance receives 5 RPS.
	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).

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

Textual description for the backend.

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 `HTTP`.

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{}
	// Textual description for the backend.
	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
	// `HTTP`.
	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{}
	// Textual description for the backend.
	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
	// `HTTP`.
	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 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](/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) InstanceTemplate

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

The full URL to an instance template from which all new instances will be created.

func (*RegionInstanceGroupManager) Name

The name of the port.

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.

func (*RegionInstanceGroupManager) RollingUpdatePolicy

func (r *RegionInstanceGroupManager) RollingUpdatePolicy() *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)

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

func (r *RegionInstanceGroupManager) UpdateStrategy() *pulumi.StringOutput

If the `instance_template` resource is modified, a value of `"NONE"` will prevent any of the managed instances from being restarted by Terraform. A value of `"ROLLING_UPDATE"` is supported as [Beta feature]. A value of `"ROLLING_UPDATE"` requires `rolling_update_policy` block to be set

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 full URL to an instance template from
	// which all new instances will be created.
	InstanceTemplate interface{}
	// The name of the port.
	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 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)
	RollingUpdatePolicy 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{}
	// If the `instance_template`
	// resource is modified, a value of `"NONE"` will prevent any of the managed
	// instances from being restarted by Terraform. A value of `"ROLLING_UPDATE"`
	// is supported as [Beta feature]. A value of `"ROLLING_UPDATE"` requires
	// `rolling_update_policy` block to be set
	UpdateStrategy 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 full URL to an instance template from
	// which all new instances will be created.
	InstanceTemplate interface{}
	// The name of the port.
	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 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)
	RollingUpdatePolicy 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{}
	// If the `instance_template`
	// resource is modified, a value of `"NONE"` will prevent any of the managed
	// instances from being restarted by Terraform. A value of `"ROLLING_UPDATE"`
	// is supported as [Beta feature]. A value of `"ROLLING_UPDATE"` requires
	// `rolling_update_policy` block to be set
	UpdateStrategy 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
}

Manages a network route within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/vpc/routes) and [API](https://cloud.google.com/compute/docs/reference/latest/routes).

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

The destination IPv4 address range that this route applies to.

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

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

func (*Route) Network

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

The name or self_link of the network to attach this route to.

func (*Route) NextHopGateway

func (r *Route) NextHopGateway() *pulumi.StringOutput

The URL of the internet gateway to route to if this route is matched. The alias "default-internet-gateway" can also be used.

func (*Route) NextHopInstance

func (r *Route) NextHopInstance() *pulumi.StringOutput

The name of the VM instance to route to if this route is matched.

func (*Route) NextHopInstanceZone

func (r *Route) NextHopInstanceZone() *pulumi.StringOutput

The zone of the instance specified in `next_hop_instance`.

func (*Route) NextHopIp

func (r *Route) NextHopIp() *pulumi.StringOutput

The IP address of the next hop if this route is matched.

func (*Route) NextHopNetwork

func (r *Route) NextHopNetwork() *pulumi.StringOutput

The name of the next hop network, if available.

func (*Route) NextHopVpnTunnel

func (r *Route) NextHopVpnTunnel() *pulumi.StringOutput

The name of the VPN to route to if this route is matched.

func (*Route) Priority

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

The priority of this route, used to break ties. Defaults to 1000.

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

The tags that this route applies to.

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{}
	// The destination IPv4 address range that this
	// route applies to.
	DestRange interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The name or self_link of the network to attach this route to.
	Network interface{}
	// The URL of the internet gateway to route
	// to if this route is matched. The alias "default-internet-gateway" can also
	// be used.
	NextHopGateway interface{}
	// The name of the VM instance to route to
	// if this route is matched.
	NextHopInstance interface{}
	//
	// The zone of the instance specified in `next_hop_instance`.
	NextHopInstanceZone interface{}
	// The IP address of the next hop if this route
	// is matched.
	NextHopIp interface{}
	// The name of the VPN to route to if this
	// route is matched.
	NextHopVpnTunnel interface{}
	// The priority of this route, used to break ties. Defaults to 1000.
	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 tags that this route applies to.
	Tags interface{}
}

The set of arguments for constructing a Route resource.

type RouteState

type RouteState struct {
	Description interface{}
	// The destination IPv4 address range that this
	// route applies to.
	DestRange interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The name or self_link of the network to attach this route to.
	Network interface{}
	// The URL of the internet gateway to route
	// to if this route is matched. The alias "default-internet-gateway" can also
	// be used.
	NextHopGateway interface{}
	// The name of the VM instance to route to
	// if this route is matched.
	NextHopInstance interface{}
	//
	// The zone of the instance specified in `next_hop_instance`.
	NextHopInstanceZone interface{}
	// The IP address of the next hop if this route
	// is matched.
	NextHopIp interface{}
	// The name of the next hop network, if available.
	NextHopNetwork interface{}
	// The name of the VPN to route to if this
	// route is matched.
	NextHopVpnTunnel interface{}
	// The priority of this route, used to break ties. Defaults to 1000.
	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{}
	// The tags that this route applies to.
	Tags interface{}
}

Input properties used for looking up and filtering Route resources.

type Router

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

Manages a Cloud Router resource. 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 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

BGP information specific to this router. Changing this forces a new router to be created. Structure is documented below.

func (*Router) Description

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

A description of the resource. Changing this forces a new router to be created.

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

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

func (*Router) Network

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

The name or resource link to the network this Cloud Router will use to learn and announce routes. Changing this forces a new router to be created.

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. Changing this forces a new router to be created.

func (*Router) Region

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

The region this router should sit in. If not specified, the project region will be used. Changing this forces a new router to be created.

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 information specific to this router.
	// Changing this forces a new router to be created.
	// Structure is documented below.
	Bgp interface{}
	// A description of the resource.
	// Changing this forces a new router to be created.
	Description interface{}
	// A unique name for the router, required by GCE. Changing
	// this forces a new router to be created.
	Name interface{}
	// The name or resource link to the network this Cloud Router
	// will use to learn and announce routes. Changing this forces a new router to be created.
	Network interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	// Changing this forces a new router to be created.
	Project interface{}
	// The region this router should sit in. If not specified,
	// the project region will be used. Changing this forces a new router to be
	// created.
	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 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 information specific to this router.
	// Changing this forces a new router to be created.
	// Structure is documented below.
	Bgp interface{}
	// A description of the resource.
	// Changing this forces a new router to be created.
	Description interface{}
	// A unique name for the router, required by GCE. Changing
	// this forces a new router to be created.
	Name interface{}
	// The name or resource link to the network this Cloud Router
	// will use to learn and announce routes. Changing this forces a new router to be created.
	Network interface{}
	// The ID of the project in which the resource belongs. If it
	// is not provided, the provider project is used.
	// Changing this forces a new router to be created.
	Project interface{}
	// The region this router should sit in. If not specified,
	// the project region will be used. Changing this forces a new router to be
	// created.
	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
}

Creates an SSL certificate resource necessary for HTTPS load balancing in GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/http/ssl-certificates) and [API](https://cloud.google.com/compute/docs/reference/latest/sslCertificates).

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

A local certificate file in PEM format. The chain may be at most 5 certs long, and must include at least one intermediate cert. Changing this forces a new resource to be created.

func (*SSLCertificate) CertificateId

func (r *SSLCertificate) CertificateId() *pulumi.StringOutput

A unique ID for the certificate, assigned by GCE.

func (*SSLCertificate) Description

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

An optional description of this resource. Changing this forces a new resource to be created.

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

A unique name for the SSL certificate. If you leave this blank, Terraform will auto-generate a unique name.

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

Write only private key in PEM format. Changing this forces a new resource to be created.

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 {
	// A local certificate file in PEM format. The chain
	// may be at most 5 certs long, and must include at least one intermediate
	// cert. Changing this forces a new resource to be created.
	Certificate interface{}
	// An optional description of this resource.
	// Changing this forces a new resource to be created.
	Description interface{}
	// A unique name for the SSL certificate. 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{}
	// Write only private key in PEM format.
	// Changing this forces a new resource to be created.
	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 {
	// A local certificate file in PEM format. The chain
	// may be at most 5 certs long, and must include at least one intermediate
	// cert. Changing this forces a new resource to be created.
	Certificate interface{}
	// A unique ID for the certificate, assigned by GCE.
	CertificateId interface{}
	// An optional description of this resource.
	// Changing this forces a new resource to be created.
	Description interface{}
	// A unique name for the SSL certificate. 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{}
	// Write only private key in PEM format.
	// Changing this forces a new resource to be created.
	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 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
}

Creates a new snapshot of a disk within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/disks/create-snapshots) and [API](https://cloud.google.com/compute/docs/reference/latest/snapshots).

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

The unique fingerprint of the labels.

func (*Snapshot) Labels

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

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

func (*Snapshot) Name

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

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

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

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

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4) to encrypt this snapshot.

func (*Snapshot) SnapshotEncryptionKeySha256

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

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

func (*Snapshot) SourceDisk

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

The disk which will be used as the source of the snapshot.

func (*Snapshot) SourceDiskEncryptionKeyRaw

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

A 256-bit [customer-supplied encryption key] (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption), encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4) to decrypt the source disk.

func (*Snapshot) SourceDiskEncryptionKeySha256

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

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 the source disk.

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

The URI of the source disk.

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

The zone where the source disk is located.

type SnapshotArgs

type SnapshotArgs struct {
	// A set of key/value label pairs to assign to the snapshot.
	Labels 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{}
	// A 256-bit [customer-supplied encryption key]
	// (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption),
	// encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// to encrypt this snapshot.
	SnapshotEncryptionKeyRaw interface{}
	// The disk which will be used as the source of the snapshot.
	SourceDisk interface{}
	// A 256-bit [customer-supplied encryption key]
	// (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption),
	// encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// to decrypt the source disk.
	SourceDiskEncryptionKeyRaw interface{}
	// The zone where the source disk is located.
	Zone interface{}
}

The set of arguments for constructing a Snapshot resource.

type SnapshotState

type SnapshotState struct {
	// The unique fingerprint of the labels.
	LabelFingerprint interface{}
	// A set of key/value label pairs to assign to the snapshot.
	Labels 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{}
	// The URI of the created resource.
	SelfLink interface{}
	// A 256-bit [customer-supplied encryption key]
	// (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption),
	// encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// to encrypt this snapshot.
	SnapshotEncryptionKeyRaw 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 resource.
	SnapshotEncryptionKeySha256 interface{}
	// The disk which will be used as the source of the snapshot.
	SourceDisk interface{}
	// A 256-bit [customer-supplied encryption key]
	// (https://cloud.google.com/compute/docs/disks/customer-supplied-encryption),
	// encoded in [RFC 4648 base64](https://tools.ietf.org/html/rfc4648#section-4)
	// to decrypt the source disk.
	SourceDiskEncryptionKeyRaw 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 the source disk.
	SourceDiskEncryptionKeySha256 interface{}
	// The URI of the source disk.
	SourceDiskLink interface{}
	// The zone where the source disk is located.
	Zone interface{}
}

Input properties used for looking up and filtering Snapshot resources.

type Subnetwork

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

Manages a subnetwork within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/vpc/#vpc_networks_and_subnets) and [API](https://cloud.google.com/compute/docs/reference/latest/subnetworks).

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

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

Description of this subnetwork.

func (*Subnetwork) EnableFlowLogs

func (r *Subnetwork) EnableFlowLogs() *pulumi.BoolOutput

) Set to `true` to enable [flow logs](https://cloud.google.com/vpc/docs/using-flow-logs) for this subnetwork.

func (*Subnetwork) Fingerprint

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

func (*Subnetwork) GatewayAddress

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

The IP address of the gateway.

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

The range of IP addresses belonging to this subnetwork secondary range. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network.

func (*Subnetwork) Name

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

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

func (*Subnetwork) Network

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

The network name or resource link to the parent network of this subnetwork. The parent network must have been created in custom subnet mode.

func (*Subnetwork) PrivateIpGoogleAccess

func (r *Subnetwork) PrivateIpGoogleAccess() *pulumi.BoolOutput

Whether the VMs in this subnet can access Google services without assigned external IP addresses.

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

The region this subnetwork will be created in. If unspecified, this defaults to the region configured in the provider.

func (*Subnetwork) SecondaryIpRanges

func (r *Subnetwork) SecondaryIpRanges() *pulumi.ArrayOutput

) An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. Structure is documented below.

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 of this subnetwork.
	Description interface{}
	// )
	// Set to `true` to enable [flow logs](https://cloud.google.com/vpc/docs/using-flow-logs)
	// for this subnetwork.
	EnableFlowLogs interface{}
	// The range of IP addresses belonging to this subnetwork secondary range. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network.
	IpCidrRange interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The network name or resource link to the parent
	// network of this subnetwork. The parent network must have been created
	// in custom subnet mode.
	Network interface{}
	// Whether the VMs in this subnet
	// can access Google services without assigned external IP
	// addresses.
	PrivateIpGoogleAccess 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 will be created in. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// ) An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. Structure is documented below.
	SecondaryIpRanges interface{}
}

The set of arguments for constructing a Subnetwork resource.

type SubnetworkState

type SubnetworkState struct {
	// Description of this subnetwork.
	Description interface{}
	// )
	// Set to `true` to enable [flow logs](https://cloud.google.com/vpc/docs/using-flow-logs)
	// for this subnetwork.
	EnableFlowLogs interface{}
	Fingerprint    interface{}
	// The IP address of the gateway.
	GatewayAddress interface{}
	// The range of IP addresses belonging to this subnetwork secondary range. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network.
	IpCidrRange interface{}
	// A unique name for the resource, required by GCE.
	// Changing this forces a new resource to be created.
	Name interface{}
	// The network name or resource link to the parent
	// network of this subnetwork. The parent network must have been created
	// in custom subnet mode.
	Network interface{}
	// Whether the VMs in this subnet
	// can access Google services without assigned external IP
	// addresses.
	PrivateIpGoogleAccess 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 will be created in. If
	// unspecified, this defaults to the region configured in the provider.
	Region interface{}
	// ) An array of configurations for secondary IP ranges for VM instances contained in this subnetwork. Structure is documented below.
	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
}

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
}

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

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

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

Input properties used for looking up and filtering TargetSSLProxy resources.

type TargetTCPProxy

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

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
}

Manages a URL Map resource within GCE. For more information see [the official documentation](https://cloud.google.com/compute/docs/load-balancing/http/url-map) and [API](https://cloud.google.com/compute/docs/reference/latest/urlMaps).

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

func (r *URLMap) DefaultService() *pulumi.StringOutput

The backend service or backend bucket to use if none of the given paths match.

func (*URLMap) Description

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

An optional description of this test.

func (*URLMap) Fingerprint

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

The unique fingerprint for this resource.

func (*URLMap) HostRules

func (r *URLMap) HostRules() *pulumi.ArrayOutput

A list of host rules. Multiple blocks of this type are permitted. Structure is documented below.

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

The GCE assigned ID of the resource.

func (*URLMap) Name

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

The name of the `path_matcher` resource.

func (*URLMap) PathMatchers

func (r *URLMap) PathMatchers() *pulumi.ArrayOutput

The name of the `path_matcher` to apply this host rule to.

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

The test to perform. Multiple blocks of this type are permitted. Structure is documented below.

func (*URLMap) URN

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

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

type URLMapArgs

type URLMapArgs struct {
	// The backend service or backend bucket to use if none of the given paths match.
	DefaultService interface{}
	// An optional description of this test.
	Description interface{}
	// A list of host rules. Multiple blocks of this type are permitted. Structure is documented below.
	HostRules interface{}
	// The name of the `path_matcher` resource.
	Name interface{}
	// The name of the `path_matcher` to apply this host rule to.
	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 test to perform.  Multiple blocks of this type are permitted. Structure is documented below.
	Tests interface{}
}

The set of arguments for constructing a URLMap resource.

type URLMapState

type URLMapState struct {
	// The backend service or backend bucket to use if none of the given paths match.
	DefaultService interface{}
	// An optional description of this test.
	Description interface{}
	// The unique fingerprint for this resource.
	Fingerprint interface{}
	// A list of host rules. Multiple blocks of this type are permitted. Structure is documented below.
	HostRules interface{}
	// The GCE assigned ID of the resource.
	MapId interface{}
	// The name of the `path_matcher` resource.
	Name interface{}
	// The name of the `path_matcher` to apply this host rule to.
	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{}
	// The test to perform.  Multiple blocks of this type are permitted. Structure is documented below.
	Tests interface{}
}

Input properties used for looking up and filtering URLMap resources.

type VPNGateway

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

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
}

Manages a VPN Tunnel to the GCE network. For more info, read the [documentation](https://cloud.google.com/compute/docs/vpn).

~> **Note:** All arguments including the `shared_secret` will be stored in the raw state as plain-text. [Read more about sensitive data in state](/docs/state/sensitive-data.html).

func GetVPNTunnel

func GetVPNTunnel(ctx *pulumi.Context,
	name string, id pulumi.ID, state *VPNTunnelState, opts ...pulumi.ResourceOpt) (*VPNTunnel, error)

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

func NewVPNTunnel

func NewVPNTunnel(ctx *pulumi.Context,
	name string, args *VPNTunnelArgs, opts ...pulumi.ResourceOpt) (*VPNTunnel, error)

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

func (*VPNTunnel) Description

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

A description of the resource. Changing this forces a new resource to be created.

func (*VPNTunnel) DetailedStatus

func (r *VPNTunnel) DetailedStatus() *pulumi.StringOutput

Information about the status of the VPN tunnel.

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

Either version 1 or 2. Default is 2. Changing this forces a new resource to be created.

func (*VPNTunnel) LocalTrafficSelectors

func (r *VPNTunnel) LocalTrafficSelectors() *pulumi.ArrayOutput

Specifies which CIDR ranges are announced to the VPN peer. Mandatory if the VPN gateway is attached to a custom subnetted network. Refer to Google documentation for more information.

func (*VPNTunnel) Name

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

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

func (*VPNTunnel) PeerIp

func (r *VPNTunnel) PeerIp() *pulumi.StringOutput

The VPN gateway sitting outside of GCE. Changing this forces a new resource to be created.

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

The region this tunnel should sit in. If not specified, the project region will be used. Changing this forces a new resource to be created.

func (*VPNTunnel) RemoteTrafficSelectors

func (r *VPNTunnel) RemoteTrafficSelectors() *pulumi.ArrayOutput

Specifies which CIDR ranges the VPN tunnel can route to the remote side. Mandatory if the VPN gateway is attached to a custom subnetted network. Refer to Google documentation for more information.

func (*VPNTunnel) Router

func (r *VPNTunnel) Router() *pulumi.StringOutput

Name of a Cloud Router in the same region to be used for dynamic routing. Refer to Google documentation for more information.

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

The URI of the created resource.

func (*VPNTunnel) SharedSecret

func (r *VPNTunnel) SharedSecret() *pulumi.StringOutput

A passphrase shared between the two VPN gateways. Changing this forces a new resource to be created.

func (*VPNTunnel) TargetVpnGateway

func (r *VPNTunnel) TargetVpnGateway() *pulumi.StringOutput

A link to the VPN gateway sitting inside GCE. Changing this forces a new resource to be created.

func (*VPNTunnel) URN

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

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

type VPNTunnelArgs

type VPNTunnelArgs struct {
	// A description of the resource. Changing this forces
	// a new resource to be created.
	Description interface{}
	// Either version 1 or 2. Default is 2. Changing this
	// forces a new resource to be created.
	IkeVersion interface{}
	// Specifies which CIDR ranges are
	// announced to the VPN peer. Mandatory if the VPN gateway is attached to a
	// custom subnetted network. Refer to Google documentation for more
	// information.
	LocalTrafficSelectors interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// The VPN gateway sitting outside of GCE. Changing this
	// forces a new resource to be created.
	PeerIp 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 tunnel should sit in. If not specified,
	// the project region will be used. Changing this forces a new resource to be
	// created.
	Region interface{}
	// Specifies which CIDR ranges the VPN
	// tunnel can route to the remote side. Mandatory if the VPN gateway is attached to a
	// custom subnetted network. Refer to Google documentation for more
	// information.
	RemoteTrafficSelectors interface{}
	// Name of a Cloud Router in the same region
	// to be used for dynamic routing. Refer to Google documentation for more
	// information.
	Router interface{}
	// A passphrase shared between the two VPN gateways.
	// Changing this forces a new resource to be created.
	SharedSecret interface{}
	// A link to the VPN gateway sitting inside
	// GCE. Changing this forces a new resource to be created.
	TargetVpnGateway interface{}
}

The set of arguments for constructing a VPNTunnel resource.

type VPNTunnelState

type VPNTunnelState struct {
	// A description of the resource. Changing this forces
	// a new resource to be created.
	Description interface{}
	// Information about the status of the VPN tunnel.
	DetailedStatus interface{}
	// Either version 1 or 2. Default is 2. Changing this
	// forces a new resource to be created.
	IkeVersion interface{}
	// Specifies which CIDR ranges are
	// announced to the VPN peer. Mandatory if the VPN gateway is attached to a
	// custom subnetted network. Refer to Google documentation for more
	// information.
	LocalTrafficSelectors interface{}
	// A unique name for the resource, required by GCE. Changing
	// this forces a new resource to be created.
	Name interface{}
	// The VPN gateway sitting outside of GCE. Changing this
	// forces a new resource to be created.
	PeerIp 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 tunnel should sit in. If not specified,
	// the project region will be used. Changing this forces a new resource to be
	// created.
	Region interface{}
	// Specifies which CIDR ranges the VPN
	// tunnel can route to the remote side. Mandatory if the VPN gateway is attached to a
	// custom subnetted network. Refer to Google documentation for more
	// information.
	RemoteTrafficSelectors interface{}
	// Name of a Cloud Router in the same region
	// to be used for dynamic routing. Refer to Google documentation for more
	// information.
	Router interface{}
	// The URI of the created resource.
	SelfLink interface{}
	// A passphrase shared between the two VPN gateways.
	// Changing this forces a new resource to be created.
	SharedSecret interface{}
	// A link to the VPN gateway sitting inside
	// GCE. Changing this forces a new resource to be created.
	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