Module compute

This provider is a derived work of the Terraform Provider distributed under MPL 2.0. If you encounter a bug or missing feature, first check the pulumi/pulumi-gcp repo; however, if that doesn’t turn up anything, please consult the source terraform-providers/terraform-provider-google repo.

Resources

Data Sources

Others

Resources

Resource Address

class Address extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_address.html.markdown.

constructor

new Address(name: string, args?: AddressArgs, opts?: pulumi.CustomResourceOptions)

Create a Address resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AddressState, opts?: pulumi.CustomResourceOptions): Address

Get an existing Address resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Address. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property address

public address: pulumi.Output<string>;

The IP of the created resource.

property addressType

public addressType: pulumi.Output<string | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property name

public name: pulumi.Output<string>;

property networkTier

public networkTier: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property purpose

public purpose: pulumi.Output<string>;

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property subnetwork

public subnetwork: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property users

public users: pulumi.Output<string[]>;

Resource AttachedDisk

class AttachedDisk extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_attached_disk.html.markdown.

constructor

new AttachedDisk(name: string, args: AttachedDiskArgs, opts?: pulumi.CustomResourceOptions)

Create a AttachedDisk resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AttachedDiskState, opts?: pulumi.CustomResourceOptions): AttachedDisk

Get an existing AttachedDisk resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of AttachedDisk. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property deviceName

public deviceName: pulumi.Output<string>;

property disk

public disk: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instance

public instance: pulumi.Output<string>;

property mode

public mode: pulumi.Output<string | undefined>;

property project

public project: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource Autoscalar

class Autoscalar extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_autoscaler.html.markdown.

constructor

new Autoscalar(name: string, args: AutoscalarArgs, opts?: pulumi.CustomResourceOptions)

Create a Autoscalar resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AutoscalarState, opts?: pulumi.CustomResourceOptions): Autoscalar

Get an existing Autoscalar resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Autoscalar. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoscalingPolicy

public autoscalingPolicy: pulumi.Output<outputs.compute.AutoscalarAutoscalingPolicy>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property target

public target: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource BackendBucket

class BackendBucket extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_backend_bucket.html.markdown.

constructor

new BackendBucket(name: string, args: BackendBucketArgs, opts?: pulumi.CustomResourceOptions)

Create a BackendBucket resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BackendBucketState, opts?: pulumi.CustomResourceOptions): BackendBucket

Get an existing BackendBucket resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of BackendBucket. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property bucketName

public bucketName: pulumi.Output<string>;

property cdnPolicy

public cdnPolicy: pulumi.Output<outputs.compute.BackendBucketCdnPolicy>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property enableCdn

public enableCdn: pulumi.Output<boolean | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource BackendBucketSignedUrlKey

class BackendBucketSignedUrlKey extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_backend_bucket_signed_url_key.html.markdown.

constructor

new BackendBucketSignedUrlKey(name: string, args: BackendBucketSignedUrlKeyArgs, opts?: pulumi.CustomResourceOptions)

Create a BackendBucketSignedUrlKey resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BackendBucketSignedUrlKeyState, opts?: pulumi.CustomResourceOptions): BackendBucketSignedUrlKey

Get an existing BackendBucketSignedUrlKey resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of BackendBucketSignedUrlKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property backendBucket

public backendBucket: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property keyValue

public keyValue: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource BackendService

class BackendService extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_backend_service.html.markdown.

constructor

new BackendService(name: string, args: BackendServiceArgs, opts?: pulumi.CustomResourceOptions)

Create a BackendService resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BackendServiceState, opts?: pulumi.CustomResourceOptions): BackendService

Get an existing BackendService resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of BackendService. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property affinityCookieTtlSec

public affinityCookieTtlSec: pulumi.Output<number | undefined>;

property backends

public backends: pulumi.Output<outputs.compute.BackendServiceBackend[] | undefined>;

property cdnPolicy

public cdnPolicy: pulumi.Output<outputs.compute.BackendServiceCdnPolicy>;

property circuitBreakers

public circuitBreakers: pulumi.Output<outputs.compute.BackendServiceCircuitBreakers | undefined>;

property connectionDrainingTimeoutSec

public connectionDrainingTimeoutSec: pulumi.Output<number | undefined>;

property consistentHash

public consistentHash: pulumi.Output<outputs.compute.BackendServiceConsistentHash | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property customRequestHeaders

public customRequestHeaders: pulumi.Output<string[] | undefined>;

property description

public description: pulumi.Output<string | undefined>;

property enableCdn

public enableCdn: pulumi.Output<boolean | undefined>;

property fingerprint

public fingerprint: pulumi.Output<string>;

property healthChecks

public healthChecks: pulumi.Output<string>;

property iap

public iap: pulumi.Output<outputs.compute.BackendServiceIap | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property loadBalancingScheme

public loadBalancingScheme: pulumi.Output<string | undefined>;

property localityLbPolicy

public localityLbPolicy: pulumi.Output<string | undefined>;

property logConfig

public logConfig: pulumi.Output<outputs.compute.BackendServiceLogConfig>;

property name

public name: pulumi.Output<string>;

property outlierDetection

public outlierDetection: pulumi.Output<outputs.compute.BackendServiceOutlierDetection | undefined>;

property portName

public portName: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property protocol

public protocol: pulumi.Output<string>;

property securityPolicy

public securityPolicy: pulumi.Output<string | undefined>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sessionAffinity

public sessionAffinity: pulumi.Output<string>;

property timeoutSec

public timeoutSec: pulumi.Output<number>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource BackendServiceSignedUrlKey

class BackendServiceSignedUrlKey extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_backend_service_signed_url_key.html.markdown.

constructor

new BackendServiceSignedUrlKey(name: string, args: BackendServiceSignedUrlKeyArgs, opts?: pulumi.CustomResourceOptions)

Create a BackendServiceSignedUrlKey resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: BackendServiceSignedUrlKeyState, opts?: pulumi.CustomResourceOptions): BackendServiceSignedUrlKey

Get an existing BackendServiceSignedUrlKey resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of BackendServiceSignedUrlKey. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property backendService

public backendService: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property keyValue

public keyValue: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Disk

class Disk extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_disk.html.markdown.

constructor

new Disk(name: string, args?: DiskArgs, opts?: pulumi.CustomResourceOptions)

Create a Disk resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DiskState, opts?: pulumi.CustomResourceOptions): Disk

Get an existing Disk resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Disk. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property diskEncryptionKey

public diskEncryptionKey: pulumi.Output<outputs.compute.DiskDiskEncryptionKey | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property image

public image: pulumi.Output<string | undefined>;

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property lastAttachTimestamp

public lastAttachTimestamp: pulumi.Output<string>;

property lastDetachTimestamp

public lastDetachTimestamp: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property physicalBlockSizeBytes

public physicalBlockSizeBytes: pulumi.Output<number>;

property project

public project: pulumi.Output<string>;

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

property resourcePolicies

public resourcePolicies: pulumi.Output<string[]>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property size

public size: pulumi.Output<number>;

property snapshot

public snapshot: pulumi.Output<string | undefined>;

property sourceImageEncryptionKey

public sourceImageEncryptionKey: pulumi.Output<outputs.compute.DiskSourceImageEncryptionKey | undefined>;

property sourceImageId

public sourceImageId: pulumi.Output<string>;

property sourceSnapshotEncryptionKey

public sourceSnapshotEncryptionKey: pulumi.Output<outputs.compute.DiskSourceSnapshotEncryptionKey | undefined>;

property sourceSnapshotId

public sourceSnapshotId: pulumi.Output<string>;

property type

public type: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property users

public users: pulumi.Output<string[]>;

property zone

public zone: pulumi.Output<string>;

Resource DiskResourcePolicyAttachment

class DiskResourcePolicyAttachment extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_disk_resource_policy_attachment.html.markdown.

constructor

new DiskResourcePolicyAttachment(name: string, args: DiskResourcePolicyAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a DiskResourcePolicyAttachment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: DiskResourcePolicyAttachmentState, opts?: pulumi.CustomResourceOptions): DiskResourcePolicyAttachment

Get an existing DiskResourcePolicyAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of DiskResourcePolicyAttachment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property disk

public disk: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource ExternalVpnGateway

class ExternalVpnGateway extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_external_vpn_gateway.html.markdown.

constructor

new ExternalVpnGateway(name: string, args?: ExternalVpnGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a ExternalVpnGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ExternalVpnGatewayState, opts?: pulumi.CustomResourceOptions): ExternalVpnGateway

Get an existing ExternalVpnGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ExternalVpnGateway. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property interfaces

public interfaces: pulumi.Output<outputs.compute.ExternalVpnGatewayInterface[] | undefined>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property redundancyType

public redundancyType: pulumi.Output<string | undefined>;
public selfLink: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Firewall

class Firewall extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_firewall.html.markdown.

constructor

new Firewall(name: string, args: FirewallArgs, opts?: pulumi.CustomResourceOptions)

Create a Firewall resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: FirewallState, opts?: pulumi.CustomResourceOptions): Firewall

Get an existing Firewall resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Firewall. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allows

public allows: pulumi.Output<outputs.compute.FirewallAllow[] | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property denies

public denies: pulumi.Output<outputs.compute.FirewallDeny[] | undefined>;

property description

public description: pulumi.Output<string | undefined>;

property destinationRanges

public destinationRanges: pulumi.Output<string[]>;

property direction

public direction: pulumi.Output<string>;

property disabled

public disabled: pulumi.Output<boolean | undefined>;

property enableLogging

public enableLogging: pulumi.Output<boolean | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property priority

public priority: pulumi.Output<number | undefined>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sourceRanges

public sourceRanges: pulumi.Output<string[]>;

property sourceServiceAccounts

public sourceServiceAccounts: pulumi.Output<string[] | undefined>;

property sourceTags

public sourceTags: pulumi.Output<string[] | undefined>;

property targetServiceAccounts

public targetServiceAccounts: pulumi.Output<string[] | undefined>;

property targetTags

public targetTags: pulumi.Output<string[] | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource ForwardingRule

class ForwardingRule extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_forwarding_rule.html.markdown.

constructor

new ForwardingRule(name: string, args?: ForwardingRuleArgs, opts?: pulumi.CustomResourceOptions)

Create a ForwardingRule resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ForwardingRuleState, opts?: pulumi.CustomResourceOptions): ForwardingRule

Get an existing ForwardingRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ForwardingRule. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allPorts

public allPorts: pulumi.Output<boolean | undefined>;

property backendService

public backendService: pulumi.Output<string | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipAddress

public ipAddress: pulumi.Output<string>;

property ipProtocol

public ipProtocol: pulumi.Output<string>;

property ipVersion

public ipVersion: pulumi.Output<string | undefined>;

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property loadBalancingScheme

public loadBalancingScheme: pulumi.Output<string | undefined>;

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property networkTier

public networkTier: pulumi.Output<string>;

property portRange

public portRange: pulumi.Output<string | undefined>;

property ports

public ports: pulumi.Output<string[] | undefined>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property serviceLabel

public serviceLabel: pulumi.Output<string | undefined>;

property serviceName

public serviceName: pulumi.Output<string>;

property subnetwork

public subnetwork: pulumi.Output<string>;

property target

public target: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource GlobalAddress

class GlobalAddress extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_global_address.html.markdown.

constructor

new GlobalAddress(name: string, args?: GlobalAddressArgs, opts?: pulumi.CustomResourceOptions)

Create a GlobalAddress resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: GlobalAddressState, opts?: pulumi.CustomResourceOptions): GlobalAddress

Get an existing GlobalAddress resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of GlobalAddress. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property address

public address: pulumi.Output<string>;

property addressType

public addressType: pulumi.Output<string | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipVersion

public ipVersion: pulumi.Output<string | undefined>;

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string | undefined>;

property prefixLength

public prefixLength: pulumi.Output<number | undefined>;

property project

public project: pulumi.Output<string>;

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

property purpose

public purpose: pulumi.Output<string | undefined>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource GlobalForwardingRule

class GlobalForwardingRule extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_global_forwarding_rule.html.markdown.

constructor

new GlobalForwardingRule(name: string, args: GlobalForwardingRuleArgs, opts?: pulumi.CustomResourceOptions)

Create a GlobalForwardingRule resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: GlobalForwardingRuleState, opts?: pulumi.CustomResourceOptions): GlobalForwardingRule

Get an existing GlobalForwardingRule resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of GlobalForwardingRule. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipAddress

public ipAddress: pulumi.Output<string>;

property ipProtocol

public ipProtocol: pulumi.Output<string>;

property ipVersion

public ipVersion: pulumi.Output<string | undefined>;

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property loadBalancingScheme

public loadBalancingScheme: pulumi.Output<string | undefined>;

property metadataFilters

public metadataFilters: pulumi.Output<outputs.compute.GlobalForwardingRuleMetadataFilter[] | undefined>;

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property portRange

public portRange: pulumi.Output<string | undefined>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property target

public target: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource HaVpnGateway

class HaVpnGateway extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_ha_vpn_gateway.html.markdown.

constructor

new HaVpnGateway(name: string, args: HaVpnGatewayArgs, opts?: pulumi.CustomResourceOptions)

Create a HaVpnGateway resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: HaVpnGatewayState, opts?: pulumi.CustomResourceOptions): HaVpnGateway

Get an existing HaVpnGateway resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of HaVpnGateway. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpnInterfaces

public vpnInterfaces: pulumi.Output<outputs.compute.HaVpnGatewayVpnInterface[]>;

Resource HealthCheck

class HealthCheck extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_health_check.html.markdown.

constructor

new HealthCheck(name: string, args?: HealthCheckArgs, opts?: pulumi.CustomResourceOptions)

Create a HealthCheck resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: HealthCheckState, opts?: pulumi.CustomResourceOptions): HealthCheck

Get an existing HealthCheck resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of HealthCheck. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property checkIntervalSec

public checkIntervalSec: pulumi.Output<number | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property healthyThreshold

public healthyThreshold: pulumi.Output<number | undefined>;

property http2HealthCheck

public http2HealthCheck: pulumi.Output<outputs.compute.HealthCheckHttp2HealthCheck | undefined>;

property httpHealthCheck

public httpHealthCheck: pulumi.Output<outputs.compute.HealthCheckHttpHealthCheck | undefined>;

property httpsHealthCheck

public httpsHealthCheck: pulumi.Output<outputs.compute.HealthCheckHttpsHealthCheck | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sslHealthCheck

public sslHealthCheck: pulumi.Output<outputs.compute.HealthCheckSslHealthCheck | undefined>;

property tcpHealthCheck

public tcpHealthCheck: pulumi.Output<outputs.compute.HealthCheckTcpHealthCheck | undefined>;

property timeoutSec

public timeoutSec: pulumi.Output<number | undefined>;

property type

public type: pulumi.Output<string>;

property unhealthyThreshold

public unhealthyThreshold: pulumi.Output<number | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource HttpHealthCheck

class HttpHealthCheck extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_http_health_check.html.markdown.

constructor

new HttpHealthCheck(name: string, args?: HttpHealthCheckArgs, opts?: pulumi.CustomResourceOptions)

Create a HttpHealthCheck resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: HttpHealthCheckState, opts?: pulumi.CustomResourceOptions): HttpHealthCheck

Get an existing HttpHealthCheck resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of HttpHealthCheck. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property checkIntervalSec

public checkIntervalSec: pulumi.Output<number | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property healthyThreshold

public healthyThreshold: pulumi.Output<number | undefined>;

property host

public host: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property port

public port: pulumi.Output<number | undefined>;

property project

public project: pulumi.Output<string>;

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

property requestPath

public requestPath: pulumi.Output<string | undefined>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property timeoutSec

public timeoutSec: pulumi.Output<number | undefined>;

property unhealthyThreshold

public unhealthyThreshold: pulumi.Output<number | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource HttpsHealthCheck

class HttpsHealthCheck extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_https_health_check.html.markdown.

constructor

new HttpsHealthCheck(name: string, args?: HttpsHealthCheckArgs, opts?: pulumi.CustomResourceOptions)

Create a HttpsHealthCheck resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: HttpsHealthCheckState, opts?: pulumi.CustomResourceOptions): HttpsHealthCheck

Get an existing HttpsHealthCheck resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of HttpsHealthCheck. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property checkIntervalSec

public checkIntervalSec: pulumi.Output<number | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property healthyThreshold

public healthyThreshold: pulumi.Output<number | undefined>;

property host

public host: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property port

public port: pulumi.Output<number | undefined>;

property project

public project: pulumi.Output<string>;

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

property requestPath

public requestPath: pulumi.Output<string | undefined>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property timeoutSec

public timeoutSec: pulumi.Output<number | undefined>;

property unhealthyThreshold

public unhealthyThreshold: pulumi.Output<number | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Image

class Image extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_image.html.markdown.

constructor

new Image(name: string, args?: ImageArgs, opts?: pulumi.CustomResourceOptions)

Create a Image resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ImageState, opts?: pulumi.CustomResourceOptions): Image

Get an existing Image resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Image. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property archiveSizeBytes

public archiveSizeBytes: pulumi.Output<number>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property diskSizeGb

public diskSizeGb: pulumi.Output<number>;

property family

public family: pulumi.Output<string | undefined>;

property guestOsFeatures

public guestOsFeatures: pulumi.Output<outputs.compute.ImageGuestOsFeature[]>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property licenses

public licenses: pulumi.Output<string[]>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property rawDisk

public rawDisk: pulumi.Output<outputs.compute.ImageRawDisk | undefined>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sourceDisk

public sourceDisk: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Instance

class Instance extends CustomResource

Manages a VM instance resource within GCE. For more information see the official documentation and API.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const defaultInstance = new gcp.compute.Instance("default", {
    bootDisk: {
        initializeParams: {
            image: "debian-cloud/debian-9",
        },
    },
    machineType: "n1-standard-1",
    metadata: {
        foo: "bar",
    },
    metadataStartupScript: "echo hi > /test.txt",
    networkInterfaces: [{
        accessConfigs: [{}],
        network: "default",
    }],
    // Local SSD disk
    scratchDisks: [{}],
    serviceAccount: {
        scopes: [
            "userinfo-email",
            "compute-ro",
            "storage-ro",
        ],
    },
    tags: [
        "foo",
        "bar",
    ],
    zone: "us-central1-a",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance.html.markdown.

constructor

new Instance(name: string, args: InstanceArgs, opts?: pulumi.CustomResourceOptions)

Create a Instance resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceState, opts?: pulumi.CustomResourceOptions): Instance

Get an existing Instance resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Instance. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allowStoppingForUpdate

public allowStoppingForUpdate: pulumi.Output<boolean | undefined>;

If true, allows this provider 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.

property attachedDisks

public attachedDisks: pulumi.Output<outputs.compute.InstanceAttachedDisk[] | undefined>;

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

property bootDisk

public bootDisk: pulumi.Output<outputs.compute.InstanceBootDisk>;

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

property canIpForward

public canIpForward: pulumi.Output<boolean | undefined>;

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

property cpuPlatform

public cpuPlatform: pulumi.Output<string>;

The CPU platform used by this instance.

property deletionProtection

public deletionProtection: pulumi.Output<boolean | undefined>;

Enable deletion protection on this instance. Defaults to false. Note: you must disable deletion protection before removing the resource, or the instance cannot be deleted and the deployment will not complete successfully.

property description

public description: pulumi.Output<string | undefined>;

A brief description of this resource.

property guestAccelerators

public guestAccelerators: pulumi.Output<outputs.compute.InstanceGuestAccelerator[]>;

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

property hostname

public hostname: pulumi.Output<string | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceId

public instanceId: pulumi.Output<string>;

The server-assigned unique identifier of this instance.

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

The unique fingerprint of the labels.

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

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

property machineType

public machineType: pulumi.Output<string>;

The machine type to create.

property metadata

public metadata: pulumi.Output<{[key: string]: string} | undefined>;

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

property metadataFingerprint

public metadataFingerprint: pulumi.Output<string>;

The unique fingerprint of the metadata.

property metadataStartupScript

public metadataStartupScript: pulumi.Output<string | undefined>;

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.

property minCpuPlatform

public minCpuPlatform: pulumi.Output<string | undefined>;

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. Note: allowStoppingForUpdate must be set to true in order to update this field.

property name

public name: pulumi.Output<string>;

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

property networkInterfaces

public networkInterfaces: pulumi.Output<outputs.compute.InstanceNetworkInterface[]>;

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

property project

public project: pulumi.Output<string>;

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

property scheduling

public scheduling: pulumi.Output<outputs.compute.InstanceScheduling>;

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

property scratchDisks

public scratchDisks: pulumi.Output<outputs.compute.InstanceScratchDisk[] | undefined>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property serviceAccount

public serviceAccount: pulumi.Output<outputs.compute.InstanceServiceAccount | undefined>;

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

property shieldedInstanceConfig

public shieldedInstanceConfig: pulumi.Output<outputs.compute.InstanceShieldedInstanceConfig>;

Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shieldedInstanceConfig can only be used with boot images with shielded vm support. See the complete list here.

property tags

public tags: pulumi.Output<string[] | undefined>;

A list of tags to attach to the instance.

property tagsFingerprint

public tagsFingerprint: pulumi.Output<string>;

The unique fingerprint of the tags.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

The zone that the machine should be created in.

Resource InstanceFromTemplate

class InstanceFromTemplate extends CustomResource

Manages a VM instance resource within GCE. For more information see the official documentation and API.

This resource is specifically to create a compute instance from a given sourceInstanceTemplate. To create an instance without a template, use the gcp.compute.Instance resource.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const tplInstanceTemplate = new gcp.compute.InstanceTemplate("tpl", {
    canIpForward: true,
    disks: [{
        autoDelete: true,
        boot: true,
        diskSizeGb: 100,
        sourceImage: "debian-cloud/debian-9",
    }],
    machineType: "n1-standard-1",
    metadata: {
        foo: "bar",
    },
    networkInterfaces: [{
        network: "default",
    }],
});
const tplInstanceFromTemplate = new gcp.compute.InstanceFromTemplate("tpl", {
    // Override fields from instance template
    canIpForward: false,
    labels: {
        my_key: "myValue",
    },
    sourceInstanceTemplate: tplInstanceTemplate.selfLink,
    zone: "us-central1-a",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_from_template.html.markdown.

constructor

new InstanceFromTemplate(name: string, args: InstanceFromTemplateArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceFromTemplate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceFromTemplateState, opts?: pulumi.CustomResourceOptions): InstanceFromTemplate

Get an existing InstanceFromTemplate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceFromTemplate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property allowStoppingForUpdate

public allowStoppingForUpdate: pulumi.Output<boolean>;

property attachedDisks

public attachedDisks: pulumi.Output<outputs.compute.InstanceFromTemplateAttachedDisk[]>;

property bootDisk

public bootDisk: pulumi.Output<outputs.compute.InstanceFromTemplateBootDisk>;

property canIpForward

public canIpForward: pulumi.Output<boolean>;

property cpuPlatform

public cpuPlatform: pulumi.Output<string>;

property deletionProtection

public deletionProtection: pulumi.Output<boolean>;

property description

public description: pulumi.Output<string>;

property guestAccelerators

public guestAccelerators: pulumi.Output<outputs.compute.InstanceFromTemplateGuestAccelerator[]>;

property hostname

public hostname: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceId

public instanceId: pulumi.Output<string>;

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string}>;

property machineType

public machineType: pulumi.Output<string>;

property metadata

public metadata: pulumi.Output<{[key: string]: string}>;

property metadataFingerprint

public metadataFingerprint: pulumi.Output<string>;

property metadataStartupScript

public metadataStartupScript: pulumi.Output<string>;

property minCpuPlatform

public minCpuPlatform: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

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

property networkInterfaces

public networkInterfaces: pulumi.Output<outputs.compute.InstanceFromTemplateNetworkInterface[]>;

property project

public project: pulumi.Output<string>;

property scheduling

public scheduling: pulumi.Output<outputs.compute.InstanceFromTemplateScheduling>;

property scratchDisks

public scratchDisks: pulumi.Output<outputs.compute.InstanceFromTemplateScratchDisk[]>;
public selfLink: pulumi.Output<string>;

property serviceAccount

public serviceAccount: pulumi.Output<outputs.compute.InstanceFromTemplateServiceAccount>;

property shieldedInstanceConfig

public shieldedInstanceConfig: pulumi.Output<outputs.compute.InstanceFromTemplateShieldedInstanceConfig>;

property sourceInstanceTemplate

public sourceInstanceTemplate: pulumi.Output<string>;

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

property tags

public tags: pulumi.Output<string[]>;

property tagsFingerprint

public tagsFingerprint: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

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

Resource InstanceGroup

class InstanceGroup extends CustomResource

Creates a group of dissimilar Compute Engine virtual machine instances. For more information, see the official documentation and API

Recreating an instance group that’s in use by another resource will give a resourceInUseByAnotherResource error.

Example Usage - Empty instance group

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const test = new gcp.compute.InstanceGroup("test", {
    description: "Test instance group",
    network: google_compute_network_default.selfLink,
    zone: "us-central1-a",
});
Example Usage - With instances and named ports
import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const webservers = new gcp.compute.InstanceGroup("webservers", {
    description: "Test instance group",
    instances: [
        google_compute_instance_test.selfLink,
        google_compute_instance_test2.selfLink,
    ],
    namedPorts: [
        {
            name: "http",
            port: 8080,
        },
        {
            name: "https",
            port: 8443,
        },
    ],
    zone: "us-central1-a",
});
Example Usage - Recreating an instance group in use

Recreating an instance group that’s in use by another resource will give a resourceInUseByAnotherResource error. Use lifecycle.create_before_destroy as shown in this example to avoid this type of error.

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const debianImage = gcp.compute.getImage({
    family: "debian-9",
    project: "debian-cloud",
});
const stagingVm = new gcp.compute.Instance("stagingVm", {
    bootDisk: {
        initializeParams: {
            image: debianImage.selfLink,
        },
    },
    machineType: "n1-standard-1",
    networkInterfaces: [{
        network: "default",
    }],
    zone: "us-central1-c",
});
const stagingGroup = new gcp.compute.InstanceGroup("stagingGroup", {
    instances: [stagingVm.selfLink],
    namedPorts: [
        {
            name: "http",
            port: 8080,
        },
        {
            name: "https",
            port: 8443,
        },
    ],
    zone: "us-central1-c",
});
const stagingHealth = new gcp.compute.HttpsHealthCheck("stagingHealth", {
    requestPath: "/health_check",
});
const stagingService = new gcp.compute.BackendService("stagingService", {
    backends: [{
        group: stagingGroup.selfLink,
    }],
    healthChecks: stagingHealth.selfLink,
    portName: "https",
    protocol: "HTTPS",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_group.html.markdown.

constructor

new InstanceGroup(name: string, args?: InstanceGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceGroupState, opts?: pulumi.CustomResourceOptions): InstanceGroup

Get an existing InstanceGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

An optional textual description of the instance group.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instances

public instances: pulumi.Output<string[]>;

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

property name

public name: pulumi.Output<string>;

The name of the instance group. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.

property namedPorts

public namedPorts: pulumi.Output<outputs.compute.InstanceGroupNamedPort[] | undefined>;

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

property network

public network: pulumi.Output<string>;

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

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property size

public size: pulumi.Output<number>;

The number of instances in the group.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

The zone that this instance group should be created in.

Resource InstanceGroupManager

class InstanceGroupManager extends CustomResource

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

Note: Use gcp.compute.RegionInstanceGroupManager to create a regional (multi-zone) instance group manager.

Example Usage with top level instance template (google provider)

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const autohealing = new gcp.compute.HealthCheck("autohealing", {
    checkIntervalSec: 5,
    healthyThreshold: 2,
    httpHealthCheck: {
        port: 8080,
        requestPath: "/healthz",
    },
    timeoutSec: 5,
    unhealthyThreshold: 10, // 50 seconds
});
const appserver = new gcp.compute.InstanceGroupManager("appserver", {
    autoHealingPolicies: {
        healthCheck: autohealing.selfLink,
        initialDelaySec: 300,
    },
    baseInstanceName: "app",
    instanceTemplate: google_compute_instance_template_appserver.selfLink,
    namedPorts: [{
        name: "customHTTP",
        port: 8888,
    }],
    targetPools: [google_compute_target_pool_appserver.selfLink],
    targetSize: 2,
    updateStrategy: "NONE",
    zone: "us-central1-a",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_group_manager.html.markdown.

constructor

new InstanceGroupManager(name: string, args: InstanceGroupManagerArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceGroupManager resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceGroupManagerState, opts?: pulumi.CustomResourceOptions): InstanceGroupManager

Get an existing InstanceGroupManager resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceGroupManager. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoHealingPolicies

public autoHealingPolicies: pulumi.Output<outputs.compute.InstanceGroupManagerAutoHealingPolicies | undefined>;

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

property baseInstanceName

public baseInstanceName: pulumi.Output<string>;

The base instance name to use for instances in this group. The value must be a valid RFC1035 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.

property description

public description: pulumi.Output<string | undefined>;

An optional textual description of the instance group manager.

property fingerprint

public fingerprint: pulumi.Output<string>;

The fingerprint of the instance group manager.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceGroup

public instanceGroup: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.

property namedPorts

public namedPorts: pulumi.Output<outputs.compute.InstanceGroupManagerNamedPort[] | undefined>;

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

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URL of the created resource.

property targetPools

public targetPools: pulumi.Output<string[] | undefined>;

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.

property targetSize

public targetSize: pulumi.Output<number>;

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.

property updatePolicy

public updatePolicy: pulumi.Output<outputs.compute.InstanceGroupManagerUpdatePolicy>;

) The update policy for this managed instance group. Structure is documented below. For more information, see the official documentation and API


property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property versions

public versions: pulumi.Output<outputs.compute.InstanceGroupManagerVersion[]>;

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

property waitForInstances

public waitForInstances: pulumi.Output<boolean | undefined>;

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, this provider will continue trying until it times out.

property zone

public zone: pulumi.Output<string>;

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

Resource InstanceIAMBinding

class InstanceIAMBinding extends CustomResource

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

  • gcp.compute.InstanceIAMPolicy: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached.
  • gcp.compute.InstanceIAMBinding: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved.
  • gcp.compute.InstanceIAMMember: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

Note: gcp.compute.InstanceIAMPolicy cannot be used in conjunction with gcp.compute.InstanceIAMBinding and gcp.compute.InstanceIAMMember or they will fight over what your policy should be.

Note: gcp.compute.InstanceIAMBinding resources can be used in conjunction with gcp.compute.InstanceIAMMember resources only if they do not grant privilege to the same role.

google_compute_instance_iam_policy

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const admin = gcp.organizations.getIAMPolicy({
    bindings: [{
        members: ["user:jane@example.com"],
        role: "roles/compute.osLogin",
    }],
});
const instance = new gcp.compute.InstanceIAMPolicy("instance", {
    instanceName: "your-instance-name",
    policyData: admin.policyData,
});

google_compute_instance_iam_binding

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instance = new gcp.compute.InstanceIAMBinding("instance", {
    instanceName: "your-instance-name",
    members: ["user:jane@example.com"],
    role: "roles/compute.osLogin",
});

google_compute_instance_iam_member

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instance = new gcp.compute.InstanceIAMMember("instance", {
    instanceName: "your-instance-name",
    member: "user:jane@example.com",
    role: "roles/compute.osLogin",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_iam_binding.html.markdown.

constructor

new InstanceIAMBinding(name: string, args: InstanceIAMBindingArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceIAMBinding resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceIAMBindingState, opts?: pulumi.CustomResourceOptions): InstanceIAMBinding

Get an existing InstanceIAMBinding resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceIAMBinding. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property etag

public etag: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceName

public instanceName: pulumi.Output<string>;

The name of the instance.

property members

public members: pulumi.Output<string[]>;

property project

public project: pulumi.Output<string>;

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

property role

public role: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

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

Resource InstanceIAMMember

class InstanceIAMMember extends CustomResource

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

  • gcp.compute.InstanceIAMPolicy: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached.
  • gcp.compute.InstanceIAMBinding: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved.
  • gcp.compute.InstanceIAMMember: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

Note: gcp.compute.InstanceIAMPolicy cannot be used in conjunction with gcp.compute.InstanceIAMBinding and gcp.compute.InstanceIAMMember or they will fight over what your policy should be.

Note: gcp.compute.InstanceIAMBinding resources can be used in conjunction with gcp.compute.InstanceIAMMember resources only if they do not grant privilege to the same role.

google_compute_instance_iam_policy

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const admin = gcp.organizations.getIAMPolicy({
    bindings: [{
        members: ["user:jane@example.com"],
        role: "roles/compute.osLogin",
    }],
});
const instance = new gcp.compute.InstanceIAMPolicy("instance", {
    instanceName: "your-instance-name",
    policyData: admin.policyData,
});

google_compute_instance_iam_binding

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instance = new gcp.compute.InstanceIAMBinding("instance", {
    instanceName: "your-instance-name",
    members: ["user:jane@example.com"],
    role: "roles/compute.osLogin",
});

google_compute_instance_iam_member

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instance = new gcp.compute.InstanceIAMMember("instance", {
    instanceName: "your-instance-name",
    member: "user:jane@example.com",
    role: "roles/compute.osLogin",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_iam_member.html.markdown.

constructor

new InstanceIAMMember(name: string, args: InstanceIAMMemberArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceIAMMember resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceIAMMemberState, opts?: pulumi.CustomResourceOptions): InstanceIAMMember

Get an existing InstanceIAMMember resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceIAMMember. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property etag

public etag: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceName

public instanceName: pulumi.Output<string>;

The name of the instance.

property member

public member: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property role

public role: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

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

Resource InstanceIAMPolicy

class InstanceIAMPolicy extends CustomResource

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

  • gcp.compute.InstanceIAMPolicy: Authoritative. Sets the IAM policy for the instance and replaces any existing policy already attached.
  • gcp.compute.InstanceIAMBinding: Authoritative for a given role. Updates the IAM policy to grant a role to a list of members. Other roles within the IAM policy for the instance are preserved.
  • gcp.compute.InstanceIAMMember: Non-authoritative. Updates the IAM policy to grant a role to a new member. Other members for the role for the instance are preserved.

Note: gcp.compute.InstanceIAMPolicy cannot be used in conjunction with gcp.compute.InstanceIAMBinding and gcp.compute.InstanceIAMMember or they will fight over what your policy should be.

Note: gcp.compute.InstanceIAMBinding resources can be used in conjunction with gcp.compute.InstanceIAMMember resources only if they do not grant privilege to the same role.

google_compute_instance_iam_policy

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const admin = gcp.organizations.getIAMPolicy({
    bindings: [{
        members: ["user:jane@example.com"],
        role: "roles/compute.osLogin",
    }],
});
const instance = new gcp.compute.InstanceIAMPolicy("instance", {
    instanceName: "your-instance-name",
    policyData: admin.policyData,
});

google_compute_instance_iam_binding

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instance = new gcp.compute.InstanceIAMBinding("instance", {
    instanceName: "your-instance-name",
    members: ["user:jane@example.com"],
    role: "roles/compute.osLogin",
});

google_compute_instance_iam_member

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instance = new gcp.compute.InstanceIAMMember("instance", {
    instanceName: "your-instance-name",
    member: "user:jane@example.com",
    role: "roles/compute.osLogin",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_iam_policy.html.markdown.

constructor

new InstanceIAMPolicy(name: string, args: InstanceIAMPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceIAMPolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceIAMPolicyState, opts?: pulumi.CustomResourceOptions): InstanceIAMPolicy

Get an existing InstanceIAMPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceIAMPolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property etag

public etag: pulumi.Output<string>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceName

public instanceName: pulumi.Output<string>;

The name of the instance.

property policyData

public policyData: pulumi.Output<string>;

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

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

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

Resource InstanceTemplate

class InstanceTemplate extends CustomResource

Manages a VM instance template resource within GCE. For more information see the official documentation and API.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const myImage = gcp.compute.getImage({
    family: "debian-9",
    project: "debian-cloud",
});
const foobar = new gcp.compute.Disk("foobar", {
    image: myImage.selfLink,
    size: 10,
    type: "pd-ssd",
    zone: "us-central1-a",
});
const defaultInstanceTemplate = new gcp.compute.InstanceTemplate("default", {
    canIpForward: false,
    description: "This template is used to create app server instances.",
    disks: [
        // Create a new boot disk from an image
        {
            autoDelete: true,
            boot: true,
            sourceImage: "debian-cloud/debian-9",
        },
        // Use an existing disk resource
        {
            autoDelete: false,
            boot: false,
            // Instance Templates reference disks by name, not self link
            source: foobar.name,
        },
    ],
    instanceDescription: "description assigned to instances",
    labels: {
        environment: "dev",
    },
    machineType: "n1-standard-1",
    metadata: {
        foo: "bar",
    },
    networkInterfaces: [{
        network: "default",
    }],
    scheduling: {
        automaticRestart: true,
        onHostMaintenance: "MIGRATE",
    },
    serviceAccount: {
        scopes: [
            "userinfo-email",
            "compute-ro",
            "storage-ro",
        ],
    },
    tags: [
        "foo",
        "bar",
    ],
});

Using with Instance Group Manager

Instance Templates cannot be updated after creation with the Google Cloud Platform API. In order to update an Instance Template, this provider will destroy the existing resource and create a replacement. In order to effectively use an Instance Template resource with an [Instance Group Manager resource][1], it’s recommended to specify createBeforeDestroy in a [lifecycle][2] block. Either omit the Instance Template name attribute, or specify a partial name with namePrefix. Example:

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instanceTemplate = new gcp.compute.InstanceTemplate("instanceTemplate", {
    // boot disk
    disks: [{}],
    machineType: "n1-standard-1",
    namePrefix: "instance-template-",
    // networking
    networkInterfaces: [{}],
    region: "us-central1",
});
const instanceGroupManager = new gcp.compute.InstanceGroupManager("instanceGroupManager", {
    baseInstanceName: "instance-group-manager",
    instanceTemplate: instanceTemplate.selfLink,
    targetSize: 1,
    zone: "us-central1-f",
});

With this setup this provider generates a unique name for your Instance Template and can then update the Instance Group manager without conflict before destroying the previous Instance Template.

Deploying the Latest Image

A common way to use instance templates and managed instance groups is to deploy the latest image in a family, usually the latest build of your application. There are two ways to do this in this provider, and they have their pros and cons. The difference ends up being in how “latest” is interpreted. You can either deploy the latest image available when this provider runs, or you can have each instance check what the latest image is when it’s being created, either as part of a scaling event or being rebuilt by the instance group manager.

If you’re not sure, we recommend deploying the latest image available when this provider runs, because this means all the instances in your group will be based on the same image, always, and means that no upgrades or changes to your instances happen outside of a deployment. You can achieve this by using the gcp.compute.Image data source, which will retrieve the latest image on every deployment, and will update the template to use that specific image:

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const myImage = gcp.compute.getImage({
    family: "debian-9",
    project: "debian-cloud",
});
const instanceTemplate = new gcp.compute.InstanceTemplate("instanceTemplate", {
    // boot disk
    disks: [{
        sourceImage: google_compute_image_my_image.selfLink,
    }],
    machineType: "n1-standard-1",
    namePrefix: "instance-template-",
    region: "us-central1",
});

To have instances update to the latest on every scaling event or instance re-creation, use the family as the image for the disk, and it will use GCP’s default behavior, setting the image for the template to the family:

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const instanceTemplate = new gcp.compute.InstanceTemplate("instanceTemplate", {
    // boot disk
    disks: [{
        sourceImage: "debian-cloud/debian-9",
    }],
    machineType: "n1-standard-1",
    namePrefix: "instance-template-",
    region: "us-central1",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_instance_template.html.markdown.

constructor

new InstanceTemplate(name: string, args: InstanceTemplateArgs, opts?: pulumi.CustomResourceOptions)

Create a InstanceTemplate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InstanceTemplateState, opts?: pulumi.CustomResourceOptions): InstanceTemplate

Get an existing InstanceTemplate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InstanceTemplate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property canIpForward

public canIpForward: pulumi.Output<boolean | undefined>;

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

property description

public description: pulumi.Output<string | undefined>;

A brief description of this resource.

property disks

public disks: pulumi.Output<outputs.compute.InstanceTemplateDisk[]>;

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

property guestAccelerators

public guestAccelerators: pulumi.Output<outputs.compute.InstanceTemplateGuestAccelerator[] | undefined>;

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

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceDescription

public instanceDescription: pulumi.Output<string | undefined>;

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

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

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

property machineType

public machineType: pulumi.Output<string>;

The machine type to create.

property metadata

public metadata: pulumi.Output<{[key: string]: any} | undefined>;

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

property metadataFingerprint

public metadataFingerprint: pulumi.Output<string>;

The unique fingerprint of the metadata.

property metadataStartupScript

public metadataStartupScript: pulumi.Output<string | undefined>;

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

property minCpuPlatform

public minCpuPlatform: pulumi.Output<string | undefined>;

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.

property name

public name: pulumi.Output<string>;

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

property namePrefix

public namePrefix: pulumi.Output<string>;

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

property networkInterfaces

public networkInterfaces: pulumi.Output<outputs.compute.InstanceTemplateNetworkInterface[] | undefined>;

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

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

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.

property scheduling

public scheduling: pulumi.Output<outputs.compute.InstanceTemplateScheduling>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property serviceAccount

public serviceAccount: pulumi.Output<outputs.compute.InstanceTemplateServiceAccount | undefined>;

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

property shieldedInstanceConfig

public shieldedInstanceConfig: pulumi.Output<outputs.compute.InstanceTemplateShieldedInstanceConfig>;

Enable Shielded VM on this instance. Shielded VM provides verifiable integrity to prevent against malware and rootkits. Defaults to disabled. Structure is documented below. Note: shieldedInstanceConfig can only be used with boot images with shielded vm support. See the complete list here.

property tags

public tags: pulumi.Output<string[] | undefined>;

Tags to attach to the instance.

property tagsFingerprint

public tagsFingerprint: pulumi.Output<string>;

The unique fingerprint of the tags.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource InterconnectAttachment

class InterconnectAttachment extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_interconnect_attachment.html.markdown.

constructor

new InterconnectAttachment(name: string, args: InterconnectAttachmentArgs, opts?: pulumi.CustomResourceOptions)

Create a InterconnectAttachment resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: InterconnectAttachmentState, opts?: pulumi.CustomResourceOptions): InterconnectAttachment

Get an existing InterconnectAttachment resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of InterconnectAttachment. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property adminEnabled

public adminEnabled: pulumi.Output<boolean | undefined>;

property bandwidth

public bandwidth: pulumi.Output<string>;

property candidateSubnets

public candidateSubnets: pulumi.Output<string[] | undefined>;

property cloudRouterIpAddress

public cloudRouterIpAddress: pulumi.Output<string>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property customerRouterIpAddress

public customerRouterIpAddress: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property edgeAvailabilityDomain

public edgeAvailabilityDomain: pulumi.Output<string | undefined>;

property googleReferenceId

public googleReferenceId: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property interconnect

public interconnect: pulumi.Output<string | undefined>;

property name

public name: pulumi.Output<string>;

property pairingKey

public pairingKey: pulumi.Output<string>;

property partnerAsn

public partnerAsn: pulumi.Output<string>;

property privateInterconnectInfo

public privateInterconnectInfo: pulumi.Output<outputs.compute.InterconnectAttachmentPrivateInterconnectInfo>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

property router

public router: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property state

public state: pulumi.Output<string>;

property type

public type: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vlanTag8021q

public vlanTag8021q: pulumi.Output<number>;

Resource ManagedSslCertificate

class ManagedSslCertificate extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_managed_ssl_certificate.html.markdown.

constructor

new ManagedSslCertificate(name: string, args?: ManagedSslCertificateArgs, opts?: pulumi.CustomResourceOptions)

Create a ManagedSslCertificate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ManagedSslCertificateState, opts?: pulumi.CustomResourceOptions): ManagedSslCertificate

Get an existing ManagedSslCertificate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ManagedSslCertificate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property certificateId

public certificateId: pulumi.Output<number>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property expireTime

public expireTime: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property managed

public managed: pulumi.Output<outputs.compute.ManagedSslCertificateManaged | undefined>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property subjectAlternativeNames

public subjectAlternativeNames: pulumi.Output<string[]>;

property type

public type: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource MangedSslCertificate

class MangedSslCertificate extends CustomResource

constructor

new MangedSslCertificate(name: string, args?: MangedSslCertificateArgs, opts?: pulumi.CustomResourceOptions)

Create a MangedSslCertificate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MangedSslCertificateState, opts?: pulumi.CustomResourceOptions): MangedSslCertificate

Get an existing MangedSslCertificate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of MangedSslCertificate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property certificateId

public certificateId: pulumi.Output<number>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property expireTime

public expireTime: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property managed

public managed: pulumi.Output<outputs.compute.MangedSslCertificateManaged | undefined>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

property subjectAlternativeNames

public subjectAlternativeNames: pulumi.Output<string[]>;

property type

public type: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Network

class Network extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_network.html.markdown.

constructor

new Network(name: string, args?: NetworkArgs, opts?: pulumi.CustomResourceOptions)

Create a Network resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkState, opts?: pulumi.CustomResourceOptions): Network

Get an existing Network resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Network. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoCreateSubnetworks

public autoCreateSubnetworks: pulumi.Output<boolean | undefined>;

property deleteDefaultRoutesOnCreate

public deleteDefaultRoutesOnCreate: pulumi.Output<boolean | undefined>;

If set to true, default routes (0.0.0.0/0) will be deleted immediately after network creation. Defaults to false.

property description

public description: pulumi.Output<string | undefined>;

property gatewayIpv4

public gatewayIpv4: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipv4Range

public ipv4Range: pulumi.Output<string | undefined>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property routingMode

public routingMode: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource NetworkEndpoint

class NetworkEndpoint extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_network_endpoint.html.markdown.

constructor

new NetworkEndpoint(name: string, args: NetworkEndpointArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkEndpoint resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkEndpointState, opts?: pulumi.CustomResourceOptions): NetworkEndpoint

Get an existing NetworkEndpoint resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NetworkEndpoint. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instance

public instance: pulumi.Output<string>;

property ipAddress

public ipAddress: pulumi.Output<string>;

property networkEndpointGroup

public networkEndpointGroup: pulumi.Output<string>;

property port

public port: pulumi.Output<number>;

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource NetworkEndpointGroup

class NetworkEndpointGroup extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_network_endpoint_group.html.markdown.

constructor

new NetworkEndpointGroup(name: string, args: NetworkEndpointGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkEndpointGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkEndpointGroupState, opts?: pulumi.CustomResourceOptions): NetworkEndpointGroup

Get an existing NetworkEndpointGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NetworkEndpointGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property defaultPort

public defaultPort: pulumi.Output<number | undefined>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property networkEndpointType

public networkEndpointType: pulumi.Output<string | undefined>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property size

public size: pulumi.Output<number>;

property subnetwork

public subnetwork: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource NetworkPeering

class NetworkPeering extends CustomResource

Manages a network peering within GCE. For more information see the official documentation and API.

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.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const defaultNetwork = new gcp.compute.Network("default", {
    autoCreateSubnetworks: false,
});
const other = new gcp.compute.Network("other", {
    autoCreateSubnetworks: false,
});
const peering1 = new gcp.compute.NetworkPeering("peering1", {
    network: defaultNetwork.selfLink,
    peerNetwork: other.selfLink,
});
const peering2 = new gcp.compute.NetworkPeering("peering2", {
    network: other.selfLink,
    peerNetwork: defaultNetwork.selfLink,
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_network_peering.html.markdown.

constructor

new NetworkPeering(name: string, args: NetworkPeeringArgs, opts?: pulumi.CustomResourceOptions)

Create a NetworkPeering resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NetworkPeeringState, opts?: pulumi.CustomResourceOptions): NetworkPeering

Get an existing NetworkPeering resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NetworkPeering. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoCreateRoutes

public autoCreateRoutes: pulumi.Output<boolean | undefined>;

If set to true, the routes between the two networks will be created and managed automatically. Defaults to true.

property exportCustomRoutes

public exportCustomRoutes: pulumi.Output<boolean | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property importCustomRoutes

public importCustomRoutes: pulumi.Output<boolean | undefined>;

property name

public name: pulumi.Output<string>;

Name of the peering.

property network

public network: pulumi.Output<string>;

Resource link of the network to add a peering to.

property peerNetwork

public peerNetwork: pulumi.Output<string>;

Resource link of the peer network.

property state

public state: pulumi.Output<string>;

State for the peering.

property stateDetails

public stateDetails: pulumi.Output<string>;

Details about the current state of the peering.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource NodeGroup

class NodeGroup extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_node_group.html.markdown.

constructor

new NodeGroup(name: string, args: NodeGroupArgs, opts?: pulumi.CustomResourceOptions)

Create a NodeGroup resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NodeGroupState, opts?: pulumi.CustomResourceOptions): NodeGroup

Get an existing NodeGroup resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NodeGroup. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property nodeTemplate

public nodeTemplate: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property size

public size: pulumi.Output<number>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource NodeTemplate

class NodeTemplate extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_node_template.html.markdown.

constructor

new NodeTemplate(name: string, args?: NodeTemplateArgs, opts?: pulumi.CustomResourceOptions)

Create a NodeTemplate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: NodeTemplateState, opts?: pulumi.CustomResourceOptions): NodeTemplate

Get an existing NodeTemplate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of NodeTemplate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property nodeAffinityLabels

public nodeAffinityLabels: pulumi.Output<{[key: string]: string} | undefined>;

property nodeType

public nodeType: pulumi.Output<string | undefined>;

property nodeTypeFlexibility

public nodeTypeFlexibility: pulumi.Output<outputs.compute.NodeTemplateNodeTypeFlexibility | undefined>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property serverBinding

public serverBinding: pulumi.Output<outputs.compute.NodeTemplateServerBinding>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource ProjectDefaultNetworkTier

class ProjectDefaultNetworkTier extends CustomResource

Configures the Google Compute Engine Default Network Tier for a project.

For more information, see, the Project API documentation.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const defaultProjectDefaultNetworkTier = new gcp.compute.ProjectDefaultNetworkTier("default", {
    networkTier: "PREMIUM",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_project_default_network_tier.html.markdown.

constructor

new ProjectDefaultNetworkTier(name: string, args: ProjectDefaultNetworkTierArgs, opts?: pulumi.CustomResourceOptions)

Create a ProjectDefaultNetworkTier resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProjectDefaultNetworkTierState, opts?: pulumi.CustomResourceOptions): ProjectDefaultNetworkTier

Get an existing ProjectDefaultNetworkTier resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ProjectDefaultNetworkTier. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property networkTier

public networkTier: pulumi.Output<string>;

The default network tier to be configured for the project. This field can take the following values: PREMIUM or STANDARD.

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource ProjectMetadata

class ProjectMetadata extends CustomResource

Authoritatively manages metadata common to all instances for a project in GCE. For more information see the official documentation and API.

Note: This resource manages all project-level metadata including project-level ssh keys. Keys unset in config but set on the server will be removed. If you want to manage only single key/value pairs within the project metadata rather than the entire set, then use google_compute_project_metadata_item.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const defaultProjectMetadata = new gcp.compute.ProjectMetadata("default", {
    metadata: {
        "13": "42",
        fizz: "buzz",
        foo: "bar",
    },
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_project_metadata.html.markdown.

constructor

new ProjectMetadata(name: string, args: ProjectMetadataArgs, opts?: pulumi.CustomResourceOptions)

Create a ProjectMetadata resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProjectMetadataState, opts?: pulumi.CustomResourceOptions): ProjectMetadata

Get an existing ProjectMetadata resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ProjectMetadata. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property metadata

public metadata: pulumi.Output<{[key: string]: string}>;

A series of key value pairs.

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource ProjectMetadataItem

class ProjectMetadataItem extends CustomResource

Manages a single key/value pair on metadata common to all instances for a project in GCE. Using gcp.compute.ProjectMetadataItem lets you manage a single key/value setting with this provider rather than the entire project metadata map.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const defaultProjectMetadataItem = new gcp.compute.ProjectMetadataItem("default", {
    key: "myMetadata",
    value: "myValue",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_project_metadata_item.html.markdown.

constructor

new ProjectMetadataItem(name: string, args: ProjectMetadataItemArgs, opts?: pulumi.CustomResourceOptions)

Create a ProjectMetadataItem resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ProjectMetadataItemState, opts?: pulumi.CustomResourceOptions): ProjectMetadataItem

Get an existing ProjectMetadataItem resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ProjectMetadataItem. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property key

public key: pulumi.Output<string>;

The metadata key to set.

property project

public project: pulumi.Output<string>;

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

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property value

public value: pulumi.Output<string>;

The value to set for the given metadata key.

Resource RegionAutoscaler

class RegionAutoscaler extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_autoscaler.html.markdown.

constructor

new RegionAutoscaler(name: string, args: RegionAutoscalerArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionAutoscaler resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionAutoscalerState, opts?: pulumi.CustomResourceOptions): RegionAutoscaler

Get an existing RegionAutoscaler resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionAutoscaler. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoscalingPolicy

public autoscalingPolicy: pulumi.Output<outputs.compute.RegionAutoscalerAutoscalingPolicy>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property target

public target: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RegionBackendService

class RegionBackendService extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_backend_service.html.markdown.

constructor

new RegionBackendService(name: string, args: RegionBackendServiceArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionBackendService resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionBackendServiceState, opts?: pulumi.CustomResourceOptions): RegionBackendService

Get an existing RegionBackendService resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionBackendService. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property backends

public backends: pulumi.Output<outputs.compute.RegionBackendServiceBackend[] | undefined>;

property connectionDrainingTimeoutSec

public connectionDrainingTimeoutSec: pulumi.Output<number | undefined>;

property description

public description: pulumi.Output<string | undefined>;

property failoverPolicy

public failoverPolicy: pulumi.Output<outputs.compute.RegionBackendServiceFailoverPolicy | undefined>;

property fingerprint

public fingerprint: pulumi.Output<string>;

property healthChecks

public healthChecks: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property loadBalancingScheme

public loadBalancingScheme: pulumi.Output<string | undefined>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property protocol

public protocol: pulumi.Output<string>;

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sessionAffinity

public sessionAffinity: pulumi.Output<string>;

property timeoutSec

public timeoutSec: pulumi.Output<number>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RegionDisk

class RegionDisk extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_disk.html.markdown.

constructor

new RegionDisk(name: string, args: RegionDiskArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionDisk resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionDiskState, opts?: pulumi.CustomResourceOptions): RegionDisk

Get an existing RegionDisk resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionDisk. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property diskEncryptionKey

public diskEncryptionKey: pulumi.Output<outputs.compute.RegionDiskDiskEncryptionKey | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property lastAttachTimestamp

public lastAttachTimestamp: pulumi.Output<string>;

property lastDetachTimestamp

public lastDetachTimestamp: pulumi.Output<string>;

property name

public name: pulumi.Output<string>;

property physicalBlockSizeBytes

public physicalBlockSizeBytes: pulumi.Output<number>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

property replicaZones

public replicaZones: pulumi.Output<string[]>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property size

public size: pulumi.Output<number>;

property snapshot

public snapshot: pulumi.Output<string | undefined>;

property sourceSnapshotEncryptionKey

public sourceSnapshotEncryptionKey: pulumi.Output<outputs.compute.RegionDiskSourceSnapshotEncryptionKey | undefined>;

property sourceSnapshotId

public sourceSnapshotId: pulumi.Output<string>;

property type

public type: pulumi.Output<string | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property users

public users: pulumi.Output<string[]>;

Resource RegionHealthCheck

class RegionHealthCheck extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_health_check.html.markdown.

constructor

new RegionHealthCheck(name: string, args?: RegionHealthCheckArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionHealthCheck resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionHealthCheckState, opts?: pulumi.CustomResourceOptions): RegionHealthCheck

Get an existing RegionHealthCheck resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionHealthCheck. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property checkIntervalSec

public checkIntervalSec: pulumi.Output<number | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property healthyThreshold

public healthyThreshold: pulumi.Output<number | undefined>;

property http2HealthCheck

public http2HealthCheck: pulumi.Output<outputs.compute.RegionHealthCheckHttp2HealthCheck | undefined>;

property httpHealthCheck

public httpHealthCheck: pulumi.Output<outputs.compute.RegionHealthCheckHttpHealthCheck | undefined>;

property httpsHealthCheck

public httpsHealthCheck: pulumi.Output<outputs.compute.RegionHealthCheckHttpsHealthCheck | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sslHealthCheck

public sslHealthCheck: pulumi.Output<outputs.compute.RegionHealthCheckSslHealthCheck | undefined>;

property tcpHealthCheck

public tcpHealthCheck: pulumi.Output<outputs.compute.RegionHealthCheckTcpHealthCheck | undefined>;

property timeoutSec

public timeoutSec: pulumi.Output<number | undefined>;

property type

public type: pulumi.Output<string>;

property unhealthyThreshold

public unhealthyThreshold: pulumi.Output<number | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RegionInstanceGroupManager

class RegionInstanceGroupManager extends CustomResource

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

Note: Use gcp.compute.InstanceGroupManager to create a single-zone instance group manager.

Example Usage with top level instance template (google provider)

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const autohealing = new gcp.compute.HealthCheck("autohealing", {
    checkIntervalSec: 5,
    healthyThreshold: 2,
    httpHealthCheck: {
        port: 8080,
        requestPath: "/healthz",
    },
    timeoutSec: 5,
    unhealthyThreshold: 10, // 50 seconds
});
const appserver = new gcp.compute.RegionInstanceGroupManager("appserver", {
    autoHealingPolicies: {
        healthCheck: autohealing.selfLink,
        initialDelaySec: 300,
    },
    baseInstanceName: "app",
    distributionPolicyZones: [
        "us-central1-a",
        "us-central1-f",
    ],
    instanceTemplate: google_compute_instance_template_appserver.selfLink,
    namedPorts: [{
        name: "custom",
        port: 8888,
    }],
    region: "us-central1",
    targetPools: [google_compute_target_pool_appserver.selfLink],
    targetSize: 2,
});

Example Usage with multiple versions (google-beta provider)

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const appserver = new gcp.compute.RegionInstanceGroupManager("appserver", {
    baseInstanceName: "app",
    region: "us-central1",
    targetSize: 5,
    updateStrategy: "NONE",
    versions: [
        {
            instanceTemplate: google_compute_instance_template_appserver.selfLink,
        },
        {
            instanceTemplate: google_compute_instance_template_appserver_canary.selfLink,
            targetSize: {
                fixed: 1,
            },
        },
    ],
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_instance_group_manager.html.markdown.

constructor

new RegionInstanceGroupManager(name: string, args: RegionInstanceGroupManagerArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionInstanceGroupManager resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionInstanceGroupManagerState, opts?: pulumi.CustomResourceOptions): RegionInstanceGroupManager

Get an existing RegionInstanceGroupManager resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionInstanceGroupManager. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property autoHealingPolicies

public autoHealingPolicies: pulumi.Output<outputs.compute.RegionInstanceGroupManagerAutoHealingPolicies | undefined>;

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

property baseInstanceName

public baseInstanceName: pulumi.Output<string>;

The base instance name to use for instances in this group. The value must be a valid RFC1035 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.

property description

public description: pulumi.Output<string | undefined>;

An optional textual description of the instance group manager.

property distributionPolicyZones

public distributionPolicyZones: pulumi.Output<string[]>;

The distribution policy for this managed instance group. You can specify one or more values. For more information, see the official documentation.


property fingerprint

public fingerprint: pulumi.Output<string>;

The fingerprint of the instance group manager.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property instanceGroup

public instanceGroup: pulumi.Output<string>;

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

property name

public name: pulumi.Output<string>;

The name of the instance group manager. Must be 1-63 characters long and comply with RFC1035. Supported characters include lowercase letters, numbers, and hyphens.

property namedPorts

public namedPorts: pulumi.Output<outputs.compute.RegionInstanceGroupManagerNamedPort[] | undefined>;

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

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

The region where the managed instance group resides.

public selfLink: pulumi.Output<string>;

The URL of the created resource.

property targetPools

public targetPools: pulumi.Output<string[] | undefined>;

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.

property targetSize

public targetSize: pulumi.Output<number>;

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.

property updatePolicy

public updatePolicy: pulumi.Output<outputs.compute.RegionInstanceGroupManagerUpdatePolicy>;

) The update policy for this managed instance group. Structure is documented below. For more information, see the official documentation and API

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property versions

public versions: pulumi.Output<outputs.compute.RegionInstanceGroupManagerVersion[]>;

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

property waitForInstances

public waitForInstances: pulumi.Output<boolean | undefined>;

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, this provider will continue trying until it times out.

Resource RegionSslCertificate

class RegionSslCertificate extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_ssl_certificate.html.markdown.

constructor

new RegionSslCertificate(name: string, args: RegionSslCertificateArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionSslCertificate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionSslCertificateState, opts?: pulumi.CustomResourceOptions): RegionSslCertificate

Get an existing RegionSslCertificate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionSslCertificate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property certificate

public certificate: pulumi.Output<string>;

property certificateId

public certificateId: pulumi.Output<number>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property namePrefix

public namePrefix: pulumi.Output<string>;

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

property privateKey

public privateKey: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RegionTargetHttpProxy

class RegionTargetHttpProxy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_target_http_proxy.html.markdown.

constructor

new RegionTargetHttpProxy(name: string, args: RegionTargetHttpProxyArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionTargetHttpProxy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionTargetHttpProxyState, opts?: pulumi.CustomResourceOptions): RegionTargetHttpProxy

Get an existing RegionTargetHttpProxy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionTargetHttpProxy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property proxyId

public proxyId: pulumi.Output<number>;

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urlMap

public urlMap: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RegionTargetHttpsProxy

class RegionTargetHttpsProxy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_target_https_proxy.html.markdown.

constructor

new RegionTargetHttpsProxy(name: string, args: RegionTargetHttpsProxyArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionTargetHttpsProxy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionTargetHttpsProxyState, opts?: pulumi.CustomResourceOptions): RegionTargetHttpsProxy

Get an existing RegionTargetHttpsProxy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionTargetHttpsProxy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property proxyId

public proxyId: pulumi.Output<number>;

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property sslCertificates

public sslCertificates: pulumi.Output<string[]>;

property urlMap

public urlMap: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RegionUrlMap

class RegionUrlMap extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_region_url_map.html.markdown.

constructor

new RegionUrlMap(name: string, args: RegionUrlMapArgs, opts?: pulumi.CustomResourceOptions)

Create a RegionUrlMap resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RegionUrlMapState, opts?: pulumi.CustomResourceOptions): RegionUrlMap

Get an existing RegionUrlMap resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RegionUrlMap. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property defaultService

public defaultService: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property fingerprint

public fingerprint: pulumi.Output<string>;

property hostRules

public hostRules: pulumi.Output<outputs.compute.RegionUrlMapHostRule[] | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property mapId

public mapId: pulumi.Output<number>;

property name

public name: pulumi.Output<string>;

property pathMatchers

public pathMatchers: pulumi.Output<outputs.compute.RegionUrlMapPathMatcher[] | undefined>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property tests

public tests: pulumi.Output<outputs.compute.RegionUrlMapTest[] | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Reservation

class Reservation extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_reservation.html.markdown.

constructor

new Reservation(name: string, args: ReservationArgs, opts?: pulumi.CustomResourceOptions)

Create a Reservation resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ReservationState, opts?: pulumi.CustomResourceOptions): Reservation

Get an existing Reservation resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Reservation. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property commitment

public commitment: pulumi.Output<string>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property specificReservation

public specificReservation: pulumi.Output<outputs.compute.ReservationSpecificReservation>;

property specificReservationRequired

public specificReservationRequired: pulumi.Output<boolean | undefined>;

property status

public status: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource ResourcePolicy

class ResourcePolicy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_resource_policy.html.markdown.

constructor

new ResourcePolicy(name: string, args?: ResourcePolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a ResourcePolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ResourcePolicyState, opts?: pulumi.CustomResourceOptions): ResourcePolicy

Get an existing ResourcePolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of ResourcePolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

property snapshotSchedulePolicy

public snapshotSchedulePolicy: pulumi.Output<outputs.compute.ResourcePolicySnapshotSchedulePolicy | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Route

class Route extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_route.html.markdown.

constructor

new Route(name: string, args: RouteArgs, opts?: pulumi.CustomResourceOptions)

Create a Route resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouteState, opts?: pulumi.CustomResourceOptions): Route

Get an existing Route resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Route. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

property destRange

public destRange: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property nextHopGateway

public nextHopGateway: pulumi.Output<string | undefined>;

property nextHopIlb

public nextHopIlb: pulumi.Output<string | undefined>;

property nextHopInstance

public nextHopInstance: pulumi.Output<string | undefined>;

property nextHopInstanceZone

public nextHopInstanceZone: pulumi.Output<string | undefined>;

(Optional when nextHopInstance is specified) The zone of the instance specified in nextHopInstance. Omit if nextHopInstance is specified as a URL.

property nextHopIp

public nextHopIp: pulumi.Output<string>;

property nextHopNetwork

public nextHopNetwork: pulumi.Output<string>;

property nextHopVpnTunnel

public nextHopVpnTunnel: pulumi.Output<string | undefined>;

property priority

public priority: pulumi.Output<number | undefined>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property tags

public tags: pulumi.Output<string[] | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Router

class Router extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_router.html.markdown.

constructor

new Router(name: string, args: RouterArgs, opts?: pulumi.CustomResourceOptions)

Create a Router resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouterState, opts?: pulumi.CustomResourceOptions): Router

Get an existing Router resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Router. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property bgp

public bgp: pulumi.Output<outputs.compute.RouterBgp | undefined>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RouterInterface

class RouterInterface extends CustomResource

Manages a Cloud Router interface. For more information see the official documentation and API.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const foobar = new gcp.compute.RouterInterface("foobar", {
    ipRange: "169.254.1.1/30",
    region: "us-central1",
    router: "router-1",
    vpnTunnel: "tunnel-1",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_router_interface.html.markdown.

constructor

new RouterInterface(name: string, args: RouterInterfaceArgs, opts?: pulumi.CustomResourceOptions)

Create a RouterInterface resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouterInterfaceState, opts?: pulumi.CustomResourceOptions): RouterInterface

Get an existing RouterInterface resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RouterInterface. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property interconnectAttachment

public interconnectAttachment: pulumi.Output<string | undefined>;

The name or resource link to the VLAN interconnect for this interface. Changing this forces a new interface to be created. Only one of vpnTunnel and interconnectAttachment can be specified.

property ipRange

public ipRange: pulumi.Output<string | undefined>;

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.

property name

public name: pulumi.Output<string>;

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

property project

public project: pulumi.Output<string>;

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.

property region

public region: pulumi.Output<string>;

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.

property router

public router: pulumi.Output<string>;

The name of the router this interface will be attached to. Changing this forces a new interface to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property vpnTunnel

public vpnTunnel: pulumi.Output<string | undefined>;

The name or resource link to the VPN tunnel this interface will be linked to. Changing this forces a new interface to be created. Only one of vpnTunnel and interconnectAttachment can be specified.

Resource RouterNat

class RouterNat extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_router_nat.html.markdown.

constructor

new RouterNat(name: string, args: RouterNatArgs, opts?: pulumi.CustomResourceOptions)

Create a RouterNat resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouterNatState, opts?: pulumi.CustomResourceOptions): RouterNat

Get an existing RouterNat resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RouterNat. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property drainNatIps

public drainNatIps: pulumi.Output<string[] | undefined>;

property icmpIdleTimeoutSec

public icmpIdleTimeoutSec: pulumi.Output<number | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property logConfig

public logConfig: pulumi.Output<outputs.compute.RouterNatLogConfig | undefined>;

property minPortsPerVm

public minPortsPerVm: pulumi.Output<number | undefined>;

property name

public name: pulumi.Output<string>;

property natIpAllocateOption

public natIpAllocateOption: pulumi.Output<string>;

property natIps

public natIps: pulumi.Output<string[] | undefined>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

property router

public router: pulumi.Output<string>;

property sourceSubnetworkIpRangesToNat

public sourceSubnetworkIpRangesToNat: pulumi.Output<string>;

property subnetworks

public subnetworks: pulumi.Output<outputs.compute.RouterNatSubnetwork[] | undefined>;

property tcpEstablishedIdleTimeoutSec

public tcpEstablishedIdleTimeoutSec: pulumi.Output<number | undefined>;

property tcpTransitoryIdleTimeoutSec

public tcpTransitoryIdleTimeoutSec: pulumi.Output<number | undefined>;

property udpIdleTimeoutSec

public udpIdleTimeoutSec: pulumi.Output<number | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource RouterPeer

class RouterPeer extends CustomResource

Manages a Cloud Router BGP peer. For more information see the official documentation and API.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const foobar = new gcp.compute.RouterPeer("foobar", {
    advertisedRoutePriority: 100,
    interface: "interface-1",
    peerAsn: 65513,
    peerIpAddress: "169.254.1.2",
    region: "us-central1",
    router: "router-1",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_router_peer.html.markdown.

constructor

new RouterPeer(name: string, args: RouterPeerArgs, opts?: pulumi.CustomResourceOptions)

Create a RouterPeer resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: RouterPeerState, opts?: pulumi.CustomResourceOptions): RouterPeer

Get an existing RouterPeer resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of RouterPeer. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property advertiseMode

public advertiseMode: pulumi.Output<string | undefined>;

User-specified flag to indicate which mode to use for advertisement. Options include DEFAULT or CUSTOM.

property advertisedGroups

public advertisedGroups: pulumi.Output<string[] | undefined>;

User-specified list of prefix groups to advertise in custom mode, which can take one of the following options:

property advertisedIpRanges

public advertisedIpRanges: pulumi.Output<outputs.compute.RouterPeerAdvertisedIpRange[] | undefined>;

User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertiseMode is CUSTOM and overrides the list defined for the router (in the “bgp” message). These IP ranges are advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges.

property advertisedRoutePriority

public advertisedRoutePriority: pulumi.Output<number | undefined>;

The priority of routes advertised to this BGP peer. Changing this forces a new peer to be created.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property interface

public interface: pulumi.Output<string>;

The name of the interface the BGP peer is associated with. Changing this forces a new peer to be created.

property ipAddress

public ipAddress: pulumi.Output<string>;

IP address of the interface inside Google Cloud Platform.

property name

public name: pulumi.Output<string>;

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

property peerAsn

public peerAsn: pulumi.Output<number>;

Peer BGP Autonomous System Number (ASN). Changing this forces a new peer to be created.

property peerIpAddress

public peerIpAddress: pulumi.Output<string | undefined>;

IP address of the BGP interface outside Google Cloud. Changing this forces a new peer to be created.

property project

public project: pulumi.Output<string>;

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.

property region

public region: pulumi.Output<string>;

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.

property router

public router: pulumi.Output<string>;

The name of the router in which this BGP peer will be configured. Changing this forces a new peer to be created.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SecurityPolicy

class SecurityPolicy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_security_policy.html.markdown.

constructor

new SecurityPolicy(name: string, args?: SecurityPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a SecurityPolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityPolicyState, opts?: pulumi.CustomResourceOptions): SecurityPolicy

Get an existing SecurityPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SecurityPolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property description

public description: pulumi.Output<string | undefined>;

An optional description of this security policy. Max size is 2048.

property fingerprint

public fingerprint: pulumi.Output<string>;

Fingerprint of this resource.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

The name of the security policy.

property project

public project: pulumi.Output<string>;

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

property rules

public rules: pulumi.Output<outputs.compute.SecurityPolicyRule[]>;

The set of rules that belong to this policy. There must always be a default rule (rule with priority 2147483647 and match “*”). If no rules are provided when creating a security policy, a default rule with action “allow” will be added. Structure is documented below.

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SecurityScanConfig

class SecurityScanConfig extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/security_scanner_scan_config.html.markdown.

constructor

new SecurityScanConfig(name: string, args: SecurityScanConfigArgs, opts?: pulumi.CustomResourceOptions)

Create a SecurityScanConfig resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SecurityScanConfigState, opts?: pulumi.CustomResourceOptions): SecurityScanConfig

Get an existing SecurityScanConfig resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SecurityScanConfig. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property authentication

public authentication: pulumi.Output<outputs.compute.SecurityScanConfigAuthentication | undefined>;

property blacklistPatterns

public blacklistPatterns: pulumi.Output<string[] | undefined>;

property displayName

public displayName: pulumi.Output<string>;

property exportToSecurityCommandCenter

public exportToSecurityCommandCenter: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property maxQps

public maxQps: pulumi.Output<number | undefined>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property schedule

public schedule: pulumi.Output<outputs.compute.SecurityScanConfigSchedule | undefined>;

property startingUrls

public startingUrls: pulumi.Output<string[]>;

property targetPlatforms

public targetPlatforms: pulumi.Output<string[] | undefined>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property userAgent

public userAgent: pulumi.Output<string | undefined>;

Resource SharedVPCHostProject

class SharedVPCHostProject extends CustomResource

Enables the Google Compute Engine Shared VPC feature for a project, assigning it as a Shared VPC host project.

For more information, see, the Project API documentation, where the Shared VPC feature is referred to by its former name “XPN”.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

// A host project provides network resources to associated service projects.
const host = new gcp.compute.SharedVPCHostProject("host", {
    project: "host-project-id",
});
// A service project gains access to network resources provided by its
// associated host project.
const service1 = new gcp.compute.SharedVPCServiceProject("service1", {
    hostProject: host.project,
    serviceProject: "service-project-id-1",
});
const service2 = new gcp.compute.SharedVPCServiceProject("service2", {
    hostProject: host.project,
    serviceProject: "service-project-id-2",
});

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_shared_vpc_host_project.html.markdown.

constructor

new SharedVPCHostProject(name: string, args: SharedVPCHostProjectArgs, opts?: pulumi.CustomResourceOptions)

Create a SharedVPCHostProject resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SharedVPCHostProjectState, opts?: pulumi.CustomResourceOptions): SharedVPCHostProject

Get an existing SharedVPCHostProject resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SharedVPCHostProject. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property project

public project: pulumi.Output<string>;

The ID of the project that will serve as a Shared VPC host project

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SharedVPCServiceProject

class SharedVPCServiceProject extends CustomResource

Enables the Google Compute Engine 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, where the Shared VPC feature is referred to by its former name “XPN”.

Example Usage

import * as pulumi from "@pulumi/pulumi";
import * as gcp from "@pulumi/gcp";

const service1 = new gcp.compute.SharedVPCServiceProject("service1", {
    hostProject: "host-project-id",
    serviceProject: "service-project-id-1",
});

For a complete Shared VPC example with both host and service projects, see gcp.compute.SharedVPCHostProject.

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_shared_vpc_service_project.html.markdown.

constructor

new SharedVPCServiceProject(name: string, args: SharedVPCServiceProjectArgs, opts?: pulumi.CustomResourceOptions)

Create a SharedVPCServiceProject resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SharedVPCServiceProjectState, opts?: pulumi.CustomResourceOptions): SharedVPCServiceProject

Get an existing SharedVPCServiceProject resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SharedVPCServiceProject. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property hostProject

public hostProject: pulumi.Output<string>;

The ID of a host project to associate.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property serviceProject

public serviceProject: pulumi.Output<string>;

The ID of the project that will serve as a Shared VPC service project.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Snapshot

class Snapshot extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_snapshot.html.markdown.

constructor

new Snapshot(name: string, args: SnapshotArgs, opts?: pulumi.CustomResourceOptions)

Create a Snapshot resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SnapshotState, opts?: pulumi.CustomResourceOptions): Snapshot

Get an existing Snapshot resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Snapshot. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property diskSizeGb

public diskSizeGb: pulumi.Output<number>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property labelFingerprint

public labelFingerprint: pulumi.Output<string>;

property labels

public labels: pulumi.Output<{[key: string]: string} | undefined>;

property licenses

public licenses: pulumi.Output<string[]>;

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property snapshotEncryptionKey

public snapshotEncryptionKey: pulumi.Output<outputs.compute.SnapshotSnapshotEncryptionKey | undefined>;

property snapshotId

public snapshotId: pulumi.Output<number>;

property sourceDisk

public sourceDisk: pulumi.Output<string>;

property sourceDiskEncryptionKey

public sourceDiskEncryptionKey: pulumi.Output<outputs.compute.SnapshotSourceDiskEncryptionKey | undefined>;
public sourceDiskLink: pulumi.Output<string>;

property storageBytes

public storageBytes: pulumi.Output<number>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

property zone

public zone: pulumi.Output<string>;

Resource SSLCertificate

class SSLCertificate extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_ssl_certificate.html.markdown.

constructor

new SSLCertificate(name: string, args: SSLCertificateArgs, opts?: pulumi.CustomResourceOptions)

Create a SSLCertificate resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SSLCertificateState, opts?: pulumi.CustomResourceOptions): SSLCertificate

Get an existing SSLCertificate resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SSLCertificate. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property certificate

public certificate: pulumi.Output<string>;

property certificateId

public certificateId: pulumi.Output<number>;

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property namePrefix

public namePrefix: pulumi.Output<string>;

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

property privateKey

public privateKey: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SSLPolicy

class SSLPolicy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_ssl_policy.html.markdown.

constructor

new SSLPolicy(name: string, args?: SSLPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a SSLPolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SSLPolicyState, opts?: pulumi.CustomResourceOptions): SSLPolicy

Get an existing SSLPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SSLPolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property customFeatures

public customFeatures: pulumi.Output<string[] | undefined>;

property description

public description: pulumi.Output<string | undefined>;

property enabledFeatures

public enabledFeatures: pulumi.Output<string[]>;

property fingerprint

public fingerprint: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property minTlsVersion

public minTlsVersion: pulumi.Output<string | undefined>;

property name

public name: pulumi.Output<string>;

property profile

public profile: pulumi.Output<string | undefined>;

property project

public project: pulumi.Output<string>;

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

public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource Subnetwork

class Subnetwork extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_subnetwork.html.markdown.

constructor

new Subnetwork(name: string, args: SubnetworkArgs, opts?: pulumi.CustomResourceOptions)

Create a Subnetwork resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetworkState, opts?: pulumi.CustomResourceOptions): Subnetwork

Get an existing Subnetwork resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of Subnetwork. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property enableFlowLogs

public enableFlowLogs: pulumi.Output<boolean | undefined>;

property fingerprint

public fingerprint: pulumi.Output<string>;

property gatewayAddress

public gatewayAddress: pulumi.Output<string>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property ipCidrRange

public ipCidrRange: pulumi.Output<string>;

property logConfig

public logConfig: pulumi.Output<outputs.compute.SubnetworkLogConfig>;

property name

public name: pulumi.Output<string>;

property network

public network: pulumi.Output<string>;

property privateIpGoogleAccess

public privateIpGoogleAccess: pulumi.Output<boolean | undefined>;

property project

public project: pulumi.Output<string>;

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

property purpose

public purpose: pulumi.Output<string>;

property region

public region: pulumi.Output<string>;

property role

public role: pulumi.Output<string | undefined>;

property secondaryIpRanges

public secondaryIpRanges: pulumi.Output<outputs.compute.SubnetworkSecondaryIpRange[]>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SubnetworkIAMBinding

class SubnetworkIAMBinding extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_subnetwork_iam_binding.html.markdown.

constructor

new SubnetworkIAMBinding(name: string, args: SubnetworkIAMBindingArgs, opts?: pulumi.CustomResourceOptions)

Create a SubnetworkIAMBinding resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetworkIAMBindingState, opts?: pulumi.CustomResourceOptions): SubnetworkIAMBinding

Get an existing SubnetworkIAMBinding resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SubnetworkIAMBinding. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property etag

public etag: pulumi.Output<string>;

(Computed) The etag of the subnetwork’s IAM policy.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property members

public members: pulumi.Output<string[]>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

The region of the subnetwork. If unspecified, this defaults to the region configured in the provider.

property role

public role: pulumi.Output<string>;

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

property subnetwork

public subnetwork: pulumi.Output<string>;

The name of the subnetwork.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SubnetworkIAMMember

class SubnetworkIAMMember extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_subnetwork_iam_member.html.markdown.

constructor

new SubnetworkIAMMember(name: string, args: SubnetworkIAMMemberArgs, opts?: pulumi.CustomResourceOptions)

Create a SubnetworkIAMMember resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetworkIAMMemberState, opts?: pulumi.CustomResourceOptions): SubnetworkIAMMember

Get an existing SubnetworkIAMMember resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SubnetworkIAMMember. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property etag

public etag: pulumi.Output<string>;

(Computed) The etag of the subnetwork’s IAM policy.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property member

public member: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

The region of the subnetwork. If unspecified, this defaults to the region configured in the provider.

property role

public role: pulumi.Output<string>;

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

property subnetwork

public subnetwork: pulumi.Output<string>;

The name of the subnetwork.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource SubnetworkIAMPolicy

class SubnetworkIAMPolicy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_subnetwork_iam_policy.html.markdown.

constructor

new SubnetworkIAMPolicy(name: string, args: SubnetworkIAMPolicyArgs, opts?: pulumi.CustomResourceOptions)

Create a SubnetworkIAMPolicy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: SubnetworkIAMPolicyState, opts?: pulumi.CustomResourceOptions): SubnetworkIAMPolicy

Get an existing SubnetworkIAMPolicy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of SubnetworkIAMPolicy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property etag

public etag: pulumi.Output<string>;

(Computed) The etag of the subnetwork’s IAM policy.

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property policyData

public policyData: pulumi.Output<string>;

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

property project

public project: pulumi.Output<string>;

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

property region

public region: pulumi.Output<string>;

The region of the subnetwork. If unspecified, this defaults to the region configured in the provider.

property subnetwork

public subnetwork: pulumi.Output<string>;

The name of the subnetwork.

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource TargetHttpProxy

class TargetHttpProxy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_target_http_proxy.html.markdown.

constructor

new TargetHttpProxy(name: string, args: TargetHttpProxyArgs, opts?: pulumi.CustomResourceOptions)

Create a TargetHttpProxy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.

method get

public static get(name: string, id: pulumi.Input<pulumi.ID>, state?: TargetHttpProxyState, opts?: pulumi.CustomResourceOptions): TargetHttpProxy

Get an existing TargetHttpProxy resource’s state with the given name, ID, and optional extra properties used to qualify the lookup.

method getProvider

getProvider(moduleMember: string): ProviderResource | undefined

method isInstance

public static isInstance(obj: any): boolean

Returns true if the given object is an instance of TargetHttpProxy. This is designed to work even when multiple copies of the Pulumi SDK have been loaded into the same process.

property creationTimestamp

public creationTimestamp: pulumi.Output<string>;

property description

public description: pulumi.Output<string | undefined>;

property id

id: Output<ID>;

id is the provider-assigned unique ID for this managed resource. It is set during deployments and may be missing (undefined) during planning phases.

property name

public name: pulumi.Output<string>;

property project

public project: pulumi.Output<string>;

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

property proxyId

public proxyId: pulumi.Output<number>;
public selfLink: pulumi.Output<string>;

The URI of the created resource.

property urlMap

public urlMap: pulumi.Output<string>;

property urn

urn: Output<URN>;

urn is the stable logical URN used to distinctly address a resource, both before and after deployments.

Resource TargetHttpsProxy

class TargetHttpsProxy extends CustomResource

This content is derived from https://github.com/terraform-providers/terraform-provider-google/blob/master/website/docs/r/compute_target_https_proxy.html.markdown.

constructor

new TargetHttpsProxy(name: string, args: TargetHttpsProxyArgs, opts?: pulumi.CustomResourceOptions)

Create a TargetHttpsProxy resource with the given unique name, arguments, and options.

  • name The unique name of the resource.
  • args The arguments to use to populate this resource's properties.
  • opts A bag of options that control this resource's behavior.