Module types/input

This page documents the language specification for the gcp package. If you're looking for help working with the inputs, outputs, or functions of gcp resources in a Pulumi program, please see the resource documentation for examples and API reference.

namespace accesscontextmanager

namespace appengine

namespace artifactregistry

namespace bigquery

namespace bigtable

namespace billing

namespace binaryauthorization

namespace cloudbuild

namespace cloudfunctions

namespace cloudrun

namespace cloudscheduler

namespace cloudtasks

namespace composer

namespace compute

namespace container

namespace containeranalysis

namespace datacatalog

namespace datafusion

namespace dataproc

namespace datastore

namespace deploymentmanager

namespace diagflow

namespace dns

namespace endpoints

namespace filestore

namespace firestore

namespace folder

namespace gameservices

namespace healthcare

namespace iap

namespace identityplatform

namespace iot

namespace kms

namespace logging

namespace ml

namespace monitoring

namespace organizations

namespace projects

namespace pubsub

namespace runtimeconfig

namespace secretmanager

namespace serviceAccount

namespace servicedirectory

namespace sourcerepo

namespace spanner

namespace sql

namespace storage

namespace tpu

APIs

namespace accesscontextmanager

interface AccessLevelBasic

interface AccessLevelBasic

property combiningFunction

combiningFunction?: pulumi.Input<string>;

How the conditions list should be combined to determine if a request is granted this AccessLevel. If AND is used, each Condition in conditions must be satisfied for the AccessLevel to be applied. If OR is used, at least one Condition in conditions must be satisfied for the AccessLevel to be applied.

property conditions

conditions: pulumi.Input<pulumi.Input<AccessLevelBasicCondition>[]>;

A set of requirements for the AccessLevel to be granted. Structure is documented below.

interface AccessLevelBasicCondition

interface AccessLevelBasicCondition

property devicePolicy

devicePolicy?: pulumi.Input<AccessLevelBasicConditionDevicePolicy>;

Device specific restrictions, all restrictions must hold for the Condition to be true. If not specified, all devices are allowed. Structure is documented below.

property ipSubnetworks

ipSubnetworks?: pulumi.Input<pulumi.Input<string>[]>;

A list of CIDR block IP subnetwork specification. May be IPv4 or IPv6. Note that for a CIDR IP address block, the specified IP address portion must be properly truncated (i.e. all the host bits must be zero) or the input is considered malformed. For example, “192.0.2.0/24” is accepted but “192.0.2.1/24” is not. Similarly, for IPv6, “2001:db8::/32” is accepted whereas “2001:db8::1/32” is not. The originating IP of a request must be in one of the listed subnets in order for this Condition to be true. If empty, all IP addresses are allowed.

property members

members?: pulumi.Input<pulumi.Input<string>[]>;

An allowed list of members (users, service accounts). Using groups is not supported yet. The signed-in user originating the request must be a part of one of the provided members. If not specified, a request may come from any user (logged in/not logged in, not present in any groups, etc.). Formats: user:{emailid}, serviceAccount:{emailid}

property negate

negate?: pulumi.Input<boolean>;

Whether to negate the Condition. If true, the Condition becomes a NAND over its non-empty fields, each field must be false for the Condition overall to be satisfied. Defaults to false.

property regions

regions?: pulumi.Input<pulumi.Input<string>[]>;

The request must originate from one of the provided countries/regions. Format: A valid ISO 3166-1 alpha-2 code.

property requiredAccessLevels

requiredAccessLevels?: pulumi.Input<pulumi.Input<string>[]>;

A list of other access levels defined in the same Policy, referenced by resource name. Referencing an AccessLevel which does not exist is an error. All access levels listed must be granted for the Condition to be true. Format: accessPolicies/{policy_id}/accessLevels/{short_name}

interface AccessLevelBasicConditionDevicePolicy

interface AccessLevelBasicConditionDevicePolicy

property allowedDeviceManagementLevels

allowedDeviceManagementLevels?: pulumi.Input<pulumi.Input<string>[]>;

A list of allowed device management levels. An empty list allows all management levels.

property allowedEncryptionStatuses

allowedEncryptionStatuses?: pulumi.Input<pulumi.Input<string>[]>;

A list of allowed encryptions statuses. An empty list allows all statuses.

property osConstraints

osConstraints?: pulumi.Input<pulumi.Input<AccessLevelBasicConditionDevicePolicyOsConstraint>[]>;

A list of allowed OS versions. An empty list allows all types and all versions. Structure is documented below.

property requireAdminApproval

requireAdminApproval?: pulumi.Input<boolean>;

Whether the device needs to be approved by the customer admin.

property requireCorpOwned

requireCorpOwned?: pulumi.Input<boolean>;

Whether the device needs to be corp owned.

property requireScreenLock

requireScreenLock?: pulumi.Input<boolean>;

Whether or not screenlock is required for the DevicePolicy to be true. Defaults to false.

interface AccessLevelBasicConditionDevicePolicyOsConstraint

interface AccessLevelBasicConditionDevicePolicyOsConstraint

property minimumVersion

minimumVersion?: pulumi.Input<string>;

The minimum allowed OS version. If not set, any version of this OS satisfies the constraint. Format: “major.minor.patch” such as “10.5.301”, “9.2.1”.

property osType

osType: pulumi.Input<string>;

The operating system type of the device.

interface ServicePerimeterSpec

interface ServicePerimeterSpec

property accessLevels

accessLevels?: pulumi.Input<pulumi.Input<string>[]>;

A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via GCP calls with request origins within the perimeter. For Service Perimeter Bridge, must be empty. Format: accessPolicies/{policy_id}/accessLevels/{access_level_name}

property resources

resources?: pulumi.Input<pulumi.Input<string>[]>;

A list of GCP resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}

property restrictedServices

restrictedServices?: pulumi.Input<pulumi.Input<string>[]>;

GCP services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter’s access restrictions.

property vpcAccessibleServices

vpcAccessibleServices?: pulumi.Input<ServicePerimeterSpecVpcAccessibleServices>;

Specifies how APIs are allowed to communicate within the Service Perimeter. Structure is documented below.

interface ServicePerimeterSpecVpcAccessibleServices

interface ServicePerimeterSpecVpcAccessibleServices

property allowedServices

allowedServices?: pulumi.Input<pulumi.Input<string>[]>;

The list of APIs usable within the Service Perimeter. Must be empty unless enableRestriction is True.

property enableRestriction

enableRestriction?: pulumi.Input<boolean>;

Whether to restrict API calls within the Service Perimeter to the list of APIs specified in ‘allowedServices’.

interface ServicePerimeterStatus

interface ServicePerimeterStatus

property accessLevels

accessLevels?: pulumi.Input<pulumi.Input<string>[]>;

A list of AccessLevel resource names that allow resources within the ServicePerimeter to be accessed from the internet. AccessLevels listed must be in the same policy as this ServicePerimeter. Referencing a nonexistent AccessLevel is a syntax error. If no AccessLevel names are listed, resources within the perimeter can only be accessed via GCP calls with request origins within the perimeter. For Service Perimeter Bridge, must be empty. Format: accessPolicies/{policy_id}/accessLevels/{access_level_name}

property resources

resources?: pulumi.Input<pulumi.Input<string>[]>;

A list of GCP resources that are inside of the service perimeter. Currently only projects are allowed. Format: projects/{project_number}

property restrictedServices

restrictedServices?: pulumi.Input<pulumi.Input<string>[]>;

GCP services that are subject to the Service Perimeter restrictions. Must contain a list of services. For example, if storage.googleapis.com is specified, access to the storage buckets inside the perimeter must meet the perimeter’s access restrictions.

property vpcAccessibleServices

vpcAccessibleServices?: pulumi.Input<ServicePerimeterStatusVpcAccessibleServices>;

Specifies how APIs are allowed to communicate within the Service Perimeter. Structure is documented below.

interface ServicePerimeterStatusVpcAccessibleServices

interface ServicePerimeterStatusVpcAccessibleServices

property allowedServices

allowedServices?: pulumi.Input<pulumi.Input<string>[]>;

The list of APIs usable within the Service Perimeter. Must be empty unless enableRestriction is True.

property enableRestriction

enableRestriction?: pulumi.Input<boolean>;

Whether to restrict API calls within the Service Perimeter to the list of APIs specified in ‘allowedServices’.

namespace appengine

interface ApplicationFeatureSettings

interface ApplicationFeatureSettings

property splitHealthChecks

splitHealthChecks: pulumi.Input<boolean>;

Set to false to use the legacy health check instead of the readiness and liveness checks.

interface ApplicationIap

interface ApplicationIap

property enabled

enabled?: pulumi.Input<boolean>;

property oauth2ClientId

oauth2ClientId: pulumi.Input<string>;

OAuth2 client ID to use for the authentication flow.

property oauth2ClientSecret

oauth2ClientSecret: pulumi.Input<string>;

OAuth2 client secret to use for the authentication flow. The SHA-256 hash of the value is returned in the oauth2ClientSecretSha256 field.

property oauth2ClientSecretSha256

oauth2ClientSecretSha256?: pulumi.Input<string>;

Hex-encoded SHA-256 hash of the client secret.

interface ApplicationUrlDispatchRule

interface ApplicationUrlDispatchRule

property domain

domain?: pulumi.Input<string>;

property path

path?: pulumi.Input<string>;

property service

service?: pulumi.Input<string>;

interface ApplicationUrlDispatchRulesDispatchRule

interface ApplicationUrlDispatchRulesDispatchRule

property domain

domain?: pulumi.Input<string>;

Domain name to match against. The wildcard “” is supported if specified before a period: “.“. Defaults to matching all domains: “*“.

property path

path: pulumi.Input<string>;

Pathname within the host. Must start with a “/”. A single “*” can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.

property service

service: pulumi.Input<string>;

Pathname within the host. Must start with a “/”. A single “*” can be included at the end of the path. The sum of the lengths of the domain and path may not exceed 100 characters.

interface DomainMappingResourceRecord

interface DomainMappingResourceRecord

property name

name?: pulumi.Input<string>;

property rrdata

rrdata?: pulumi.Input<string>;

property type

type?: pulumi.Input<string>;

interface DomainMappingSslSettings

interface DomainMappingSslSettings

property certificateId

certificateId?: pulumi.Input<string>;

ID of the AuthorizedCertificate resource configuring SSL for the application. Clearing this field will remove SSL support. By default, a managed certificate is automatically created for every domain mapping. To omit SSL support or to configure SSL manually, specify SslManagementType.MANUAL on a CREATE or UPDATE request. You must be authorized to administer the AuthorizedCertificate resource to manually map it to a DomainMapping resource. Example: 12345.

property pendingManagedCertificateId

pendingManagedCertificateId?: pulumi.Input<string>;

- ID of the managed AuthorizedCertificate resource currently being provisioned, if applicable. Until the new managed certificate has been successfully provisioned, the previous SSL state will be preserved. Once the provisioning process completes, the certificateId field will reflect the new managed certificate and this field will be left empty. To remove SSL support while there is still a pending managed certificate, clear the certificateId field with an update request.

property sslManagementType

sslManagementType: pulumi.Input<string>;

SSL management type for this domain. If AUTOMATIC, a managed certificate is automatically provisioned. If MANUAL, certificateId must be manually specified in order to configure SSL for this domain.

interface EngineSplitTrafficSplit

interface EngineSplitTrafficSplit

property allocations

allocations: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Mapping from version IDs within the service to fractional (0.000, 1] allocations of traffic for that version. Each version can be specified only once, but some versions in the service may not have any traffic allocation. Services that have traffic allocated cannot be deleted until either the service is deleted or their traffic allocation is removed. Allocations must sum to 1. Up to two decimal place precision is supported for IP-based splits and up to three decimal places is supported for cookie-based splits.

property shardBy

shardBy?: pulumi.Input<string>;

Mechanism used to determine which version a request is sent to. The traffic selection algorithm will be stable for either type until allocations are changed.

interface FlexibleAppVersionApiConfig

interface FlexibleAppVersionApiConfig

property authFailAction

authFailAction?: pulumi.Input<string>;

Action to take when users access resources that require authentication.

property login

login?: pulumi.Input<string>;

Level of login required to access this resource.

property script

script: pulumi.Input<string>;

Path to the script from the application root directory.

property securityLevel

securityLevel?: pulumi.Input<string>;

Security (HTTPS) enforcement for this URL.

property url

url?: pulumi.Input<string>;

URL to serve the endpoint at.

interface FlexibleAppVersionAutomaticScaling

interface FlexibleAppVersionAutomaticScaling

property coolDownPeriod

coolDownPeriod?: pulumi.Input<string>;

The time period that the Autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. Default: 120s

property cpuUtilization

cpuUtilization: pulumi.Input<FlexibleAppVersionAutomaticScalingCpuUtilization>;

Target scaling by CPU usage. Structure is documented below.

property diskUtilization

diskUtilization?: pulumi.Input<FlexibleAppVersionAutomaticScalingDiskUtilization>;

Target scaling by disk usage. Structure is documented below.

property maxConcurrentRequests

maxConcurrentRequests?: pulumi.Input<number>;

Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Defaults to a runtime-specific value.

property maxIdleInstances

maxIdleInstances?: pulumi.Input<number>;

Maximum number of idle instances that should be maintained for this version.

property maxPendingLatency

maxPendingLatency?: pulumi.Input<string>;

Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it.

property maxTotalInstances

maxTotalInstances?: pulumi.Input<number>;

Maximum number of instances that should be started to handle requests for this version. Default: 20

property minIdleInstances

minIdleInstances?: pulumi.Input<number>;

Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.

property minPendingLatency

minPendingLatency?: pulumi.Input<string>;

Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it.

property minTotalInstances

minTotalInstances?: pulumi.Input<number>;

Minimum number of running instances that should be maintained for this version. Default: 2

property networkUtilization

networkUtilization?: pulumi.Input<FlexibleAppVersionAutomaticScalingNetworkUtilization>;

Target scaling by network usage. Structure is documented below.

property requestUtilization

requestUtilization?: pulumi.Input<FlexibleAppVersionAutomaticScalingRequestUtilization>;

Target scaling by request utilization. Structure is documented below.

interface FlexibleAppVersionAutomaticScalingCpuUtilization

interface FlexibleAppVersionAutomaticScalingCpuUtilization

property aggregationWindowLength

aggregationWindowLength?: pulumi.Input<string>;

Period of time over which CPU utilization is calculated.

property targetUtilization

targetUtilization: pulumi.Input<number>;

Target CPU utilization ratio to maintain when scaling. Must be between 0 and 1.

interface FlexibleAppVersionAutomaticScalingDiskUtilization

interface FlexibleAppVersionAutomaticScalingDiskUtilization

property targetReadBytesPerSecond

targetReadBytesPerSecond?: pulumi.Input<number>;

Target bytes read per second.

property targetReadOpsPerSecond

targetReadOpsPerSecond?: pulumi.Input<number>;

Target ops read per seconds.

property targetWriteBytesPerSecond

targetWriteBytesPerSecond?: pulumi.Input<number>;

Target bytes written per second.

property targetWriteOpsPerSecond

targetWriteOpsPerSecond?: pulumi.Input<number>;

Target ops written per second.

interface FlexibleAppVersionAutomaticScalingNetworkUtilization

interface FlexibleAppVersionAutomaticScalingNetworkUtilization

property targetReceivedBytesPerSecond

targetReceivedBytesPerSecond?: pulumi.Input<number>;

Target bytes received per second.

property targetReceivedPacketsPerSecond

targetReceivedPacketsPerSecond?: pulumi.Input<number>;

Target packets received per second.

property targetSentBytesPerSecond

targetSentBytesPerSecond?: pulumi.Input<number>;

Target bytes sent per second.

property targetSentPacketsPerSecond

targetSentPacketsPerSecond?: pulumi.Input<number>;

Target packets sent per second.

interface FlexibleAppVersionAutomaticScalingRequestUtilization

interface FlexibleAppVersionAutomaticScalingRequestUtilization

property targetConcurrentRequests

targetConcurrentRequests?: pulumi.Input<number>;

Target number of concurrent requests.

property targetRequestCountPerSecond

targetRequestCountPerSecond?: pulumi.Input<string>;

Target requests per second.

interface FlexibleAppVersionDeployment

interface FlexibleAppVersionDeployment

property cloudBuildOptions

cloudBuildOptions?: pulumi.Input<FlexibleAppVersionDeploymentCloudBuildOptions>;

Options for the build operations performed as a part of the version deployment. Only applicable when creating a version using source code directly. Structure is documented below.

property container

container?: pulumi.Input<FlexibleAppVersionDeploymentContainer>;

The Docker image for the container that runs the version. Structure is documented below.

property files

files?: pulumi.Input<pulumi.Input<FlexibleAppVersionDeploymentFile>[]>;

Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call. Structure is documented below.

property zip

zip?: pulumi.Input<FlexibleAppVersionDeploymentZip>;

Zip File Structure is documented below.

interface FlexibleAppVersionDeploymentCloudBuildOptions

interface FlexibleAppVersionDeploymentCloudBuildOptions

property appYamlPath

appYamlPath: pulumi.Input<string>;

Path to the yaml file used in deployment, used to determine runtime configuration details.

property cloudBuildTimeout

cloudBuildTimeout?: pulumi.Input<string>;

The Cloud Build timeout used as part of any dependent builds performed by version creation. Defaults to 10 minutes. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”.

interface FlexibleAppVersionDeploymentContainer

interface FlexibleAppVersionDeploymentContainer

property image

image: pulumi.Input<string>;

URI to the hosted container image in Google Container Registry. The URI must be fully qualified and include a tag or digest. Examples: “gcr.io/my-project/image:tag” or “gcr.io/my-project/image@digest”

interface FlexibleAppVersionDeploymentFile

interface FlexibleAppVersionDeploymentFile

property name

name: pulumi.Input<string>;

Full Serverless VPC Access Connector name e.g. /projects/my-project/locations/us-central1/connectors/c1.

property sha1Sum

sha1Sum?: pulumi.Input<string>;

SHA1 checksum of the file

property sourceUrl

sourceUrl: pulumi.Input<string>;

Source URL

interface FlexibleAppVersionDeploymentZip

interface FlexibleAppVersionDeploymentZip

property filesCount

filesCount?: pulumi.Input<number>;

files count

property sourceUrl

sourceUrl: pulumi.Input<string>;

Source URL

interface FlexibleAppVersionEndpointsApiService

interface FlexibleAppVersionEndpointsApiService

property configId

configId?: pulumi.Input<string>;

Endpoints service configuration ID as specified by the Service Management API. For example “2016-09-19r1”. By default, the rollout strategy for Endpoints is “FIXED”. This means that Endpoints starts up with a particular configuration ID. When a new configuration is rolled out, Endpoints must be given the new configuration ID. The configId field is used to give the configuration ID and is required in this case. Endpoints also has a rollout strategy called “MANAGED”. When using this, Endpoints fetches the latest configuration and does not need the configuration ID. In this case, configId must be omitted.

property disableTraceSampling

disableTraceSampling?: pulumi.Input<boolean>;

Enable or disable trace sampling. By default, this is set to false for enabled.

property name

name: pulumi.Input<string>;

Full Serverless VPC Access Connector name e.g. /projects/my-project/locations/us-central1/connectors/c1.

property rolloutStrategy

rolloutStrategy?: pulumi.Input<string>;

Endpoints rollout strategy. If FIXED, configId must be specified. If MANAGED, configId must be omitted.

interface FlexibleAppVersionEntrypoint

interface FlexibleAppVersionEntrypoint

property shell

shell: pulumi.Input<string>;

The format should be a shell command that can be fed to bash -c.

interface FlexibleAppVersionHandler

interface FlexibleAppVersionHandler

property authFailAction

authFailAction?: pulumi.Input<string>;

Action to take when users access resources that require authentication.

property login

login?: pulumi.Input<string>;

Level of login required to access this resource.

property redirectHttpResponseCode

redirectHttpResponseCode?: pulumi.Input<string>;

30x code to use when performing redirects for the secure field.

property script

script?: pulumi.Input<FlexibleAppVersionHandlerScript>;

Path to the script from the application root directory.

property securityLevel

securityLevel?: pulumi.Input<string>;

Security (HTTPS) enforcement for this URL.

property staticFiles

staticFiles?: pulumi.Input<FlexibleAppVersionHandlerStaticFiles>;

Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them. Structure is documented below.

property urlRegex

urlRegex?: pulumi.Input<string>;

URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.

interface FlexibleAppVersionHandlerScript

interface FlexibleAppVersionHandlerScript

property scriptPath

scriptPath: pulumi.Input<string>;

Path to the script from the application root directory.

interface FlexibleAppVersionHandlerStaticFiles

interface FlexibleAppVersionHandlerStaticFiles

property applicationReadable

applicationReadable?: pulumi.Input<boolean>;

Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.

property expiration

expiration?: pulumi.Input<string>;

Time a static file served by this handler should be cached by web proxies and browsers. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example “3.5s”. Default is ‘0s’

property httpHeaders

httpHeaders?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

HTTP headers to use for all responses from these URLs. An object containing a list of “key:value” value pairs.“.

property mimeType

mimeType?: pulumi.Input<string>;

MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file’s filename extension.

property path

path?: pulumi.Input<string>;

Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.

property requireMatchingFile

requireMatchingFile?: pulumi.Input<boolean>;

Whether this handler should match the request if the file referenced by the handler does not exist.

property uploadPathRegex

uploadPathRegex?: pulumi.Input<string>;

Regular expression that matches the file paths for all files that should be referenced by this handler.

interface FlexibleAppVersionLivenessCheck

interface FlexibleAppVersionLivenessCheck

property checkInterval

checkInterval?: pulumi.Input<string>;

Interval between health checks.

property failureThreshold

failureThreshold?: pulumi.Input<number>;

Number of consecutive failed checks required before considering the VM unhealthy. Default: 4.

property host

host?: pulumi.Input<string>;

Host header to send when performing a HTTP Readiness check. Example: “myapp.appspot.com”

property initialDelay

initialDelay?: pulumi.Input<string>;

The initial delay before starting to execute the checks. Default: “300s”

property path

path: pulumi.Input<string>;

Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.

property successThreshold

successThreshold?: pulumi.Input<number>;

Number of consecutive successful checks required before considering the VM healthy. Default: 2.

property timeout

timeout?: pulumi.Input<string>;

Time before the check is considered failed. Default: “4s”

interface FlexibleAppVersionManualScaling

interface FlexibleAppVersionManualScaling

property instances

instances: pulumi.Input<number>;

Number of instances to assign to the service at the start. Note: When managing the number of instances at runtime through the App Engine Admin API or the (now deprecated) Python 2 Modules API set_num_instances() you must use lifecycle.ignore_changes = ["manualScaling"[0].instances] to prevent drift detection.

interface FlexibleAppVersionNetwork

interface FlexibleAppVersionNetwork

property forwardedPorts

forwardedPorts?: pulumi.Input<pulumi.Input<string>[]>;

List of ports, or port pairs, to forward from the virtual machine to the application container.

property instanceTag

instanceTag?: pulumi.Input<string>;

Tag to apply to the instance during creation.

property name

name: pulumi.Input<string>;

Full Serverless VPC Access Connector name e.g. /projects/my-project/locations/us-central1/connectors/c1.

property sessionAffinity

sessionAffinity?: pulumi.Input<boolean>;

Enable session affinity.

property subnetwork

subnetwork?: pulumi.Input<string>;

Google Cloud Platform sub-network where the virtual machines are created. Specify the short name, not the resource path. If the network that the instance is being created in is a Legacy network, then the IP address is allocated from the IPv4Range. If the network that the instance is being created in is an auto Subnet Mode Network, then only network name should be specified (not the subnetworkName) and the IP address is created from the IPCidrRange of the subnetwork that exists in that zone for that network. If the network that the instance is being created in is a custom Subnet Mode Network, then the subnetworkName must be specified and the IP address is created from the IPCidrRange of the subnetwork. If specified, the subnetwork must exist in the same region as the App Engine flexible environment application.

interface FlexibleAppVersionReadinessCheck

interface FlexibleAppVersionReadinessCheck

property appStartTimeout

appStartTimeout?: pulumi.Input<string>;

A maximum time limit on application initialization, measured from moment the application successfully replies to a healthcheck until it is ready to serve traffic. Default: “300s”

property checkInterval

checkInterval?: pulumi.Input<string>;

Interval between health checks.

property failureThreshold

failureThreshold?: pulumi.Input<number>;

Number of consecutive failed checks required before considering the VM unhealthy. Default: 4.

property host

host?: pulumi.Input<string>;

Host header to send when performing a HTTP Readiness check. Example: “myapp.appspot.com”

property path

path: pulumi.Input<string>;

Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.

property successThreshold

successThreshold?: pulumi.Input<number>;

Number of consecutive successful checks required before considering the VM healthy. Default: 2.

property timeout

timeout?: pulumi.Input<string>;

Time before the check is considered failed. Default: “4s”

interface FlexibleAppVersionResources

interface FlexibleAppVersionResources

property cpu

cpu?: pulumi.Input<number>;

Number of CPU cores needed.

property diskGb

diskGb?: pulumi.Input<number>;

Disk size (GB) needed.

property memoryGb

memoryGb?: pulumi.Input<number>;

Memory (GB) needed.

property volumes

volumes?: pulumi.Input<pulumi.Input<FlexibleAppVersionResourcesVolume>[]>;

List of ports, or port pairs, to forward from the virtual machine to the application container. Structure is documented below.

interface FlexibleAppVersionResourcesVolume

interface FlexibleAppVersionResourcesVolume

property name

name: pulumi.Input<string>;

Full Serverless VPC Access Connector name e.g. /projects/my-project/locations/us-central1/connectors/c1.

property sizeGb

sizeGb: pulumi.Input<number>;

Volume size in gigabytes.

property volumeType

volumeType: pulumi.Input<string>;

Underlying volume type, e.g. ‘tmpfs’.

interface FlexibleAppVersionVpcAccessConnector

interface FlexibleAppVersionVpcAccessConnector

property name

name: pulumi.Input<string>;

Full Serverless VPC Access Connector name e.g. /projects/my-project/locations/us-central1/connectors/c1.

interface StandardAppVersionAutomaticScaling

interface StandardAppVersionAutomaticScaling

property maxConcurrentRequests

maxConcurrentRequests?: pulumi.Input<number>;

Number of concurrent requests an automatic scaling instance can accept before the scheduler spawns a new instance. Defaults to a runtime-specific value.

property maxIdleInstances

maxIdleInstances?: pulumi.Input<number>;

Maximum number of idle instances that should be maintained for this version.

property maxPendingLatency

maxPendingLatency?: pulumi.Input<string>;

Maximum amount of time that a request should wait in the pending queue before starting a new instance to handle it. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”.

property minIdleInstances

minIdleInstances?: pulumi.Input<number>;

Minimum number of idle instances that should be maintained for this version. Only applicable for the default version of a service.

property minPendingLatency

minPendingLatency?: pulumi.Input<string>;

Minimum amount of time a request should wait in the pending queue before starting a new instance to handle it. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”.

property standardSchedulerSettings

standardSchedulerSettings?: pulumi.Input<StandardAppVersionAutomaticScalingStandardSchedulerSettings>;

Scheduler settings for standard environment. Structure is documented below.

interface StandardAppVersionAutomaticScalingStandardSchedulerSettings

interface StandardAppVersionAutomaticScalingStandardSchedulerSettings

property maxInstances

maxInstances?: pulumi.Input<number>;

Maximum number of instances to create for this version. Must be in the range [1.0, 200.0].

property minInstances

minInstances?: pulumi.Input<number>;

Minimum number of instances to run for this version. Set to zero to disable minInstances configuration.

property targetCpuUtilization

targetCpuUtilization?: pulumi.Input<number>;

Target CPU utilization ratio to maintain when scaling. Should be a value in the range [0.50, 0.95], zero, or a negative value.

property targetThroughputUtilization

targetThroughputUtilization?: pulumi.Input<number>;

Target throughput utilization ratio to maintain when scaling. Should be a value in the range [0.50, 0.95], zero, or a negative value.

interface StandardAppVersionBasicScaling

interface StandardAppVersionBasicScaling

property idleTimeout

idleTimeout?: pulumi.Input<string>;

Duration of time after the last request that an instance must wait before the instance is shut down. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”. Defaults to 900s.

property maxInstances

maxInstances: pulumi.Input<number>;

Maximum number of instances to create for this version. Must be in the range [1.0, 200.0].

interface StandardAppVersionDeployment

interface StandardAppVersionDeployment

property files

files?: pulumi.Input<pulumi.Input<StandardAppVersionDeploymentFile>[]>;

Manifest of the files stored in Google Cloud Storage that are included as part of this version. All files must be readable using the credentials supplied with this call. Structure is documented below.

property zip

zip?: pulumi.Input<StandardAppVersionDeploymentZip>;

Zip File Structure is documented below.

interface StandardAppVersionDeploymentFile

interface StandardAppVersionDeploymentFile

property name

name: pulumi.Input<string>;

Name of the library. Example “django”.

property sha1Sum

sha1Sum?: pulumi.Input<string>;

SHA1 checksum of the file

property sourceUrl

sourceUrl: pulumi.Input<string>;

Source URL

interface StandardAppVersionDeploymentZip

interface StandardAppVersionDeploymentZip

property filesCount

filesCount?: pulumi.Input<number>;

files count

property sourceUrl

sourceUrl: pulumi.Input<string>;

Source URL

interface StandardAppVersionEntrypoint

interface StandardAppVersionEntrypoint

property shell

shell: pulumi.Input<string>;

The format should be a shell command that can be fed to bash -c.

interface StandardAppVersionHandler

interface StandardAppVersionHandler

property authFailAction

authFailAction?: pulumi.Input<string>;

Actions to take when the user is not logged in.

property login

login?: pulumi.Input<string>;

Methods to restrict access to a URL based on login status.

property redirectHttpResponseCode

redirectHttpResponseCode?: pulumi.Input<string>;

30x code to use when performing redirects for the secure field.

property script

script?: pulumi.Input<StandardAppVersionHandlerScript>;

Executes a script to handle the requests that match this URL pattern. Only the auto value is supported for Node.js in the App Engine standard environment, for example “script:” “auto”. Structure is documented below.

property securityLevel

securityLevel?: pulumi.Input<string>;

Security (HTTPS) enforcement for this URL.

property staticFiles

staticFiles?: pulumi.Input<StandardAppVersionHandlerStaticFiles>;

Files served directly to the user for a given URL, such as images, CSS stylesheets, or JavaScript source files. Static file handlers describe which files in the application directory are static files, and which URLs serve them. Structure is documented below.

property urlRegex

urlRegex?: pulumi.Input<string>;

URL prefix. Uses regular expression syntax, which means regexp special characters must be escaped, but should not contain groupings. All URLs that begin with this prefix are handled by this handler, using the portion of the URL after the prefix as part of the file path.

interface StandardAppVersionHandlerScript

interface StandardAppVersionHandlerScript

property scriptPath

scriptPath: pulumi.Input<string>;

Path to the script from the application root directory.

interface StandardAppVersionHandlerStaticFiles

interface StandardAppVersionHandlerStaticFiles

property applicationReadable

applicationReadable?: pulumi.Input<boolean>;

Whether files should also be uploaded as code data. By default, files declared in static file handlers are uploaded as static data and are only served to end users; they cannot be read by the application. If enabled, uploads are charged against both your code and static data storage resource quotas.

property expiration

expiration?: pulumi.Input<string>;

Time a static file served by this handler should be cached by web proxies and browsers. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example “3.5s”.

property httpHeaders

httpHeaders?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

HTTP headers to use for all responses from these URLs. An object containing a list of “key:value” value pairs.“.

property mimeType

mimeType?: pulumi.Input<string>;

MIME type used to serve all files served by this handler. Defaults to file-specific MIME types, which are derived from each file’s filename extension.

property path

path?: pulumi.Input<string>;

Path to the static files matched by the URL pattern, from the application root directory. The path can refer to text matched in groupings in the URL pattern.

property requireMatchingFile

requireMatchingFile?: pulumi.Input<boolean>;

Whether this handler should match the request if the file referenced by the handler does not exist.

property uploadPathRegex

uploadPathRegex?: pulumi.Input<string>;

Regular expression that matches the file paths for all files that should be referenced by this handler.

interface StandardAppVersionLibrary

interface StandardAppVersionLibrary

property name

name?: pulumi.Input<string>;

Name of the library. Example “django”.

property version

version?: pulumi.Input<string>;

Version of the library to select, or “latest”.

interface StandardAppVersionManualScaling

interface StandardAppVersionManualScaling

property instances

instances: pulumi.Input<number>;

Number of instances to assign to the service at the start. Note: When managing the number of instances at runtime through the App Engine Admin API or the (now deprecated) Python 2 Modules API set_num_instances() you must use lifecycle.ignore_changes = ["manualScaling"[0].instances] to prevent drift detection.

namespace artifactregistry

interface RepositoryIamBindingCondition

interface RepositoryIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface RepositoryIamMemberCondition

interface RepositoryIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

namespace bigquery

interface AppProfileSingleClusterRouting

interface AppProfileSingleClusterRouting

property allowTransactionalWrites

allowTransactionalWrites?: pulumi.Input<boolean>;

If true, CheckAndMutateRow and ReadModifyWriteRow requests are allowed by this app profile. It is unsafe to send these requests to the same table/row/column in multiple clusters.

property clusterId

clusterId: pulumi.Input<string>;

The cluster to which read/write requests should be routed.

interface ConnectionCloudSql

interface ConnectionCloudSql

property credential

credential: pulumi.Input<ConnectionCloudSqlCredential>;

Cloud SQL properties. Structure is documented below.

property database

database: pulumi.Input<string>;

Database name.

property instanceId

instanceId: pulumi.Input<string>;

Cloud SQL instance ID in the form project:location:instance.

property type

type: pulumi.Input<string>;

Type of the Cloud SQL database.

interface ConnectionCloudSqlCredential

interface ConnectionCloudSqlCredential

property password

password: pulumi.Input<string>;

Password for database. Note: This property is sensitive and will not be displayed in the plan.

property username

username: pulumi.Input<string>;

Username for database.

interface DatasetAccess

interface DatasetAccess

property domain

domain?: pulumi.Input<string>;

A domain to grant access to. Any users signed in with the domain specified will be granted the specified access

property groupByEmail

groupByEmail?: pulumi.Input<string>;

An email address of a Google Group to grant access to.

property role

role?: pulumi.Input<string>;

Describes the rights granted to the user specified by the other member of the access object. Primitive, Predefined and custom roles are supported. Predefined roles that have equivalent primitive roles are swapped by the API to their Primitive counterparts. See official docs.

property specialGroup

specialGroup?: pulumi.Input<string>;

A special group to grant access to. Possible values include:

property userByEmail

userByEmail?: pulumi.Input<string>;

An email address of a user to grant access to. For example: fred@example.com

property view

view?: pulumi.Input<DatasetAccessView>;

A view from a different dataset to grant access to. Queries executed against that view will have read access to tables in this dataset. The role field is not required when this field is set. If that view is updated by any user, access to the view needs to be granted again via an update operation. Structure is documented below.

interface DatasetAccessView

interface DatasetAccessView

property datasetId

datasetId: pulumi.Input<string>;

The ID of the dataset containing this table.

property projectId

projectId: pulumi.Input<string>;

The ID of the project containing this table.

property tableId

tableId: pulumi.Input<string>;

The ID of the table. The ID must contain only letters (a-z, A-Z), numbers (0-9), or underscores (_). The maximum length is 1,024 characters.

interface DatasetDefaultEncryptionConfiguration

interface DatasetDefaultEncryptionConfiguration

property kmsKeyName

kmsKeyName: pulumi.Input<string>;

Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key.

interface JobCopy

interface JobCopy

property createDisposition

createDisposition?: pulumi.Input<string>;

Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a ‘notFound’ error is returned in the job result. Creation, truncation and append actions occur as one atomic update upon job completion

property destinationEncryptionConfiguration

destinationEncryptionConfiguration?: pulumi.Input<JobCopyDestinationEncryptionConfiguration>;

Custom encryption configuration (e.g., Cloud KMS keys) Structure is documented below.

property destinationTable

destinationTable?: pulumi.Input<JobCopyDestinationTable>;

The destination table. Structure is documented below.

property sourceTables

sourceTables: pulumi.Input<pulumi.Input<JobCopySourceTable>[]>;

Source tables to copy. Structure is documented below.

property writeDisposition

writeDisposition?: pulumi.Input<string>;

Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a ‘duplicate’ error is returned in the job result. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion.

interface JobCopyDestinationEncryptionConfiguration

interface JobCopyDestinationEncryptionConfiguration

property kmsKeyName

kmsKeyName: pulumi.Input<string>;

Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key.

interface JobCopyDestinationTable

interface JobCopyDestinationTable

property datasetId

datasetId?: pulumi.Input<string>;

The ID of the dataset containing this model.

property projectId

projectId?: pulumi.Input<string>;

The ID of the project containing this model.

property tableId

tableId: pulumi.Input<string>;

The table. Can be specified {{table_id}} if projectId and datasetId are also set, or of the form projects/{{project}}/datasets/{{dataset_id}}/tables/{{table_id}} if not.

interface JobCopySourceTable

interface JobCopySourceTable

property datasetId

datasetId?: pulumi.Input<string>;

The ID of the dataset containing this model.

property projectId

projectId?: pulumi.Input<string>;

The ID of the project containing this model.

property tableId

tableId: pulumi.Input<string>;

The table. Can be specified {{table_id}} if projectId and datasetId are also set, or of the form projects/{{project}}/datasets/{{dataset_id}}/tables/{{table_id}} if not.

interface JobExtract

interface JobExtract

property compression

compression?: pulumi.Input<string>;

The compression type to use for exported files. Possible values include GZIP, DEFLATE, SNAPPY, and NONE. The default value is NONE. DEFLATE and SNAPPY are only supported for Avro.

property destinationFormat

destinationFormat?: pulumi.Input<string>;

The exported file format. Possible values include CSV, NEWLINE_DELIMITED_JSON and AVRO for tables and SAVED_MODEL for models. The default value for tables is CSV. Tables with nested or repeated fields cannot be exported as CSV. The default value for models is SAVED_MODEL.

property destinationUris

destinationUris: pulumi.Input<pulumi.Input<string>[]>;

A list of fully-qualified Google Cloud Storage URIs where the extracted table should be written.

property fieldDelimiter

fieldDelimiter?: pulumi.Input<string>;

When extracting data in CSV format, this defines the delimiter to use between fields in the exported data. Default is ‘,’

property printHeader

printHeader?: pulumi.Input<boolean>;

Whether to print out a header row in the results. Default is true.

property sourceModel

sourceModel?: pulumi.Input<JobExtractSourceModel>;

A reference to the model being exported. Structure is documented below.

property sourceTable

sourceTable?: pulumi.Input<JobExtractSourceTable>;

A reference to the table being exported. Structure is documented below.

property useAvroLogicalTypes

useAvroLogicalTypes?: pulumi.Input<boolean>;

Whether to use logical types when extracting to AVRO format.

interface JobExtractSourceModel

interface JobExtractSourceModel

property datasetId

datasetId: pulumi.Input<string>;

The ID of the dataset containing this model.

property modelId

modelId: pulumi.Input<string>;

The ID of the model.

property projectId

projectId: pulumi.Input<string>;

The ID of the project containing this model.

interface JobExtractSourceTable

interface JobExtractSourceTable

property datasetId

datasetId?: pulumi.Input<string>;

The ID of the dataset containing this model.

property projectId

projectId?: pulumi.Input<string>;

The ID of the project containing this model.

property tableId

tableId: pulumi.Input<string>;

The table. Can be specified {{table_id}} if projectId and datasetId are also set, or of the form projects/{{project}}/datasets/{{dataset_id}}/tables/{{table_id}} if not.

interface JobLoad

interface JobLoad

property allowJaggedRows

allowJaggedRows?: pulumi.Input<boolean>;

Accept rows that are missing trailing optional columns. The missing values are treated as nulls. If false, records with missing trailing columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. Only applicable to CSV, ignored for other formats.

property allowQuotedNewlines

allowQuotedNewlines?: pulumi.Input<boolean>;

Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false.

property autodetect

autodetect?: pulumi.Input<boolean>;

Indicates if we should automatically infer the options and schema for CSV and JSON sources.

property createDisposition

createDisposition?: pulumi.Input<string>;

Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a ‘notFound’ error is returned in the job result. Creation, truncation and append actions occur as one atomic update upon job completion

property destinationEncryptionConfiguration

destinationEncryptionConfiguration?: pulumi.Input<JobLoadDestinationEncryptionConfiguration>;

Custom encryption configuration (e.g., Cloud KMS keys) Structure is documented below.

property destinationTable

destinationTable: pulumi.Input<JobLoadDestinationTable>;

The destination table. Structure is documented below.

property encoding

encoding?: pulumi.Input<string>;

The character encoding of the data. The supported values are UTF-8 or ISO-8859-1. The default value is UTF-8. BigQuery decodes the data after the raw, binary data has been split using the values of the quote and fieldDelimiter properties.

property fieldDelimiter

fieldDelimiter?: pulumi.Input<string>;

When extracting data in CSV format, this defines the delimiter to use between fields in the exported data. Default is ‘,’

property ignoreUnknownValues

ignoreUnknownValues?: pulumi.Input<boolean>;

Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false. The sourceFormat property determines what BigQuery treats as an extra value: CSV: Trailing columns JSON: Named values that don’t match any column names

property maxBadRecords

maxBadRecords?: pulumi.Input<number>;

The maximum number of bad records that BigQuery can ignore when running the job. If the number of bad records exceeds this value, an invalid error is returned in the job result. The default value is 0, which requires that all records are valid.

property nullMarker

nullMarker?: pulumi.Input<string>;

Specifies a string that represents a null value in a CSV file. The default value is the empty string. If you set this property to a custom value, BigQuery throws an error if an empty string is present for all data types except for STRING and BYTE. For STRING and BYTE columns, BigQuery interprets the empty string as an empty value.

property projectionFields

projectionFields?: pulumi.Input<pulumi.Input<string>[]>;

If sourceFormat is set to “DATASTORE_BACKUP”, indicates which entity properties to load into BigQuery from a Cloud Datastore backup. Property names are case sensitive and must be top-level properties. If no properties are specified, BigQuery loads all properties. If any named property isn’t found in the Cloud Datastore backup, an invalid error is returned in the job result.

property quote

quote?: pulumi.Input<string>;

The value that is used to quote data sections in a CSV file. BigQuery converts the string to ISO-8859-1 encoding, and then uses the first byte of the encoded string to split the data in its raw, binary state. The default value is a double-quote (‘“’). If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true.

property schemaUpdateOptions

schemaUpdateOptions?: pulumi.Input<pulumi.Input<string>[]>;

Allows the schema of the destination table to be updated as a side effect of the load job if a schema is autodetected or supplied in the job configuration. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.

property skipLeadingRows

skipLeadingRows?: pulumi.Input<number>;

The number of rows at the top of a CSV file that BigQuery will skip when loading the data. The default value is 0. This property is useful if you have header rows in the file that should be skipped. When autodetect is on, the behavior is the following: skipLeadingRows unspecified - Autodetect tries to detect headers in the first row. If they are not detected, the row is read as data. Otherwise data is read starting from the second row. skipLeadingRows is 0 - Instructs autodetect that there are no headers and data should be read starting from the first row. skipLeadingRows = N > 0 - Autodetect skips N-1 rows and tries to detect headers in row N. If headers are not detected, row N is just skipped. Otherwise row N is used to extract column names for the detected schema.

property sourceFormat

sourceFormat?: pulumi.Input<string>;

The format of the data files. For CSV files, specify “CSV”. For datastore backups, specify “DATASTORE_BACKUP”. For newline-delimited JSON, specify “NEWLINE_DELIMITED_JSON”. For Avro, specify “AVRO”. For parquet, specify “PARQUET”. For orc, specify “ORC”. The default value is CSV.

property sourceUris

sourceUris: pulumi.Input<pulumi.Input<string>[]>;

The fully-qualified URIs that point to your data in Google Cloud. For Google Cloud Storage URIs: Each URI can contain one ‘’ wildcard character and it must come after the ‘bucket’ name. Size limits related to load jobs apply to external data sources. For Google Cloud Bigtable URIs: Exactly one URI can be specified and it has be a fully specified and valid HTTPS URL for a Google Cloud Bigtable table. For Google Cloud Datastore backups: Exactly one URI can be specified. Also, the ‘’ wildcard character is not allowed.

property timePartitioning

timePartitioning?: pulumi.Input<JobLoadTimePartitioning>;

Time-based partitioning specification for the destination table. Structure is documented below.

property writeDisposition

writeDisposition?: pulumi.Input<string>;

Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a ‘duplicate’ error is returned in the job result. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion.

interface JobLoadDestinationEncryptionConfiguration

interface JobLoadDestinationEncryptionConfiguration

property kmsKeyName

kmsKeyName: pulumi.Input<string>;

Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key.

interface JobLoadDestinationTable

interface JobLoadDestinationTable

property datasetId

datasetId?: pulumi.Input<string>;

The ID of the dataset containing this model.

property projectId

projectId?: pulumi.Input<string>;

The ID of the project containing this model.

property tableId

tableId: pulumi.Input<string>;

The table. Can be specified {{table_id}} if projectId and datasetId are also set, or of the form projects/{{project}}/datasets/{{dataset_id}}/tables/{{table_id}} if not.

interface JobLoadTimePartitioning

interface JobLoadTimePartitioning

property expirationMs

expirationMs?: pulumi.Input<string>;

Number of milliseconds for which to keep the storage for a partition. A wrapper is used here because 0 is an invalid value.

property field

field?: pulumi.Input<string>;

If not set, the table is partitioned by pseudo column ‘_PARTITIONTIME’; if set, the table is partitioned by this field. The field must be a top-level TIMESTAMP or DATE field. Its mode must be NULLABLE or REQUIRED. A wrapper is used here because an empty string is an invalid value.

property type

type: pulumi.Input<string>;

The only type supported is DAY, which will generate one partition per day. Providing an empty string used to cause an error, but in OnePlatform the field will be treated as unset.

interface JobQuery

interface JobQuery

property allowLargeResults

allowLargeResults?: pulumi.Input<boolean>;

If true and query uses legacy SQL dialect, allows the query to produce arbitrarily large result tables at a slight cost in performance. Requires destinationTable to be set. For standard SQL queries, this flag is ignored and large results are always allowed. However, you must still set destinationTable when result size exceeds the allowed maximum response size.

property createDisposition

createDisposition?: pulumi.Input<string>;

Specifies whether the job is allowed to create new tables. The following values are supported: CREATE_IF_NEEDED: If the table does not exist, BigQuery creates the table. CREATE_NEVER: The table must already exist. If it does not, a ‘notFound’ error is returned in the job result. Creation, truncation and append actions occur as one atomic update upon job completion

property defaultDataset

defaultDataset?: pulumi.Input<JobQueryDefaultDataset>;

Specifies the default dataset to use for unqualified table names in the query. Note that this does not alter behavior of unqualified dataset names. Structure is documented below.

property destinationEncryptionConfiguration

destinationEncryptionConfiguration?: pulumi.Input<JobQueryDestinationEncryptionConfiguration>;

Custom encryption configuration (e.g., Cloud KMS keys) Structure is documented below.

property destinationTable

destinationTable?: pulumi.Input<JobQueryDestinationTable>;

The destination table. Structure is documented below.

property flattenResults

flattenResults?: pulumi.Input<boolean>;

If true and query uses legacy SQL dialect, flattens all nested and repeated fields in the query results. allowLargeResults must be true if this is set to false. For standard SQL queries, this flag is ignored and results are never flattened.

property maximumBillingTier

maximumBillingTier?: pulumi.Input<number>;

Limits the billing tier for this job. Queries that have resource usage beyond this tier will fail (without incurring a charge). If unspecified, this will be set to your project default.

property maximumBytesBilled

maximumBytesBilled?: pulumi.Input<string>;

Limits the bytes billed for this job. Queries that will have bytes billed beyond this limit will fail (without incurring a charge). If unspecified, this will be set to your project default.

property parameterMode

parameterMode?: pulumi.Input<string>;

Standard SQL only. Set to POSITIONAL to use positional (?) query parameters or to NAMED to use named (@myparam) query parameters in this query.

property priority

priority?: pulumi.Input<string>;

Specifies a priority for the query.

property query

query: pulumi.Input<string>;

Configures a query job. Structure is documented below.

property schemaUpdateOptions

schemaUpdateOptions?: pulumi.Input<pulumi.Input<string>[]>;

Allows the schema of the destination table to be updated as a side effect of the load job if a schema is autodetected or supplied in the job configuration. Schema update options are supported in two cases: when writeDisposition is WRITE_APPEND; when writeDisposition is WRITE_TRUNCATE and the destination table is a partition of a table, specified by partition decorators. For normal tables, WRITE_TRUNCATE will always overwrite the schema. One or more of the following values are specified: ALLOW_FIELD_ADDITION: allow adding a nullable field to the schema. ALLOW_FIELD_RELAXATION: allow relaxing a required field in the original schema to nullable.

property scriptOptions

scriptOptions?: pulumi.Input<JobQueryScriptOptions>;

Options controlling the execution of scripts. Structure is documented below.

property useLegacySql

useLegacySql?: pulumi.Input<boolean>;

Specifies whether to use BigQuery’s legacy SQL dialect for this query. The default value is true. If set to false, the query will use BigQuery’s standard SQL.

property useQueryCache

useQueryCache?: pulumi.Input<boolean>;

Whether to look for the result in the query cache. The query cache is a best-effort cache that will be flushed whenever tables in the query are modified. Moreover, the query cache is only available when a query does not have a destination table specified. The default value is true.

property userDefinedFunctionResources

userDefinedFunctionResources?: pulumi.Input<pulumi.Input<JobQueryUserDefinedFunctionResource>[]>;

Describes user-defined function resources used in the query. Structure is documented below.

property writeDisposition

writeDisposition?: pulumi.Input<string>;

Specifies the action that occurs if the destination table already exists. The following values are supported: WRITE_TRUNCATE: If the table already exists, BigQuery overwrites the table data and uses the schema from the query result. WRITE_APPEND: If the table already exists, BigQuery appends the data to the table. WRITE_EMPTY: If the table already exists and contains data, a ‘duplicate’ error is returned in the job result. Each action is atomic and only occurs if BigQuery is able to complete the job successfully. Creation, truncation and append actions occur as one atomic update upon job completion.

interface JobQueryDefaultDataset

interface JobQueryDefaultDataset

property datasetId

datasetId: pulumi.Input<string>;

The ID of the dataset containing this model.

property projectId

projectId?: pulumi.Input<string>;

The ID of the project containing this model.

interface JobQueryDestinationEncryptionConfiguration

interface JobQueryDestinationEncryptionConfiguration

property kmsKeyName

kmsKeyName: pulumi.Input<string>;

Describes the Cloud KMS encryption key that will be used to protect destination BigQuery table. The BigQuery Service Account associated with your project requires access to this encryption key.

interface JobQueryDestinationTable

interface JobQueryDestinationTable

property datasetId

datasetId?: pulumi.Input<string>;

The ID of the dataset containing this model.

property projectId

projectId?: pulumi.Input<string>;

The ID of the project containing this model.

property tableId

tableId: pulumi.Input<string>;

The table. Can be specified {{table_id}} if projectId and datasetId are also set, or of the form projects/{{project}}/datasets/{{dataset_id}}/tables/{{table_id}} if not.

interface JobQueryScriptOptions

interface JobQueryScriptOptions

property keyResultStatement

keyResultStatement?: pulumi.Input<string>;

Determines which statement in the script represents the “key result”, used to populate the schema and query results of the script job.

property statementByteBudget

statementByteBudget?: pulumi.Input<string>;

Limit on the number of bytes billed per statement. Exceeding this budget results in an error.

property statementTimeoutMs

statementTimeoutMs?: pulumi.Input<string>;

Timeout period for each statement in a script.

interface JobQueryUserDefinedFunctionResource

interface JobQueryUserDefinedFunctionResource

property inlineCode

inlineCode?: pulumi.Input<string>;

An inline resource that contains code for a user-defined function (UDF). Providing a inline code resource is equivalent to providing a URI for a file containing the same code.

property resourceUri

resourceUri?: pulumi.Input<string>;

A code resource to load from a Google Cloud Storage URI (gs://bucket/path).

interface TableEncryptionConfiguration

interface TableEncryptionConfiguration

property kmsKeyName

kmsKeyName: pulumi.Input<string>;

The self link or full name of a key which should be used to encrypt this table. Note that the default bigquery service account will need to have encrypt/decrypt permissions on this key - you may want to see the gcp.bigquery.getDefaultServiceAccount datasource and the gcp.kms.CryptoKeyIAMBinding resource.

interface TableExternalDataConfiguration

interface TableExternalDataConfiguration

property autodetect

autodetect: pulumi.Input<boolean>;
  • Let BigQuery try to autodetect the schema and format of the table.

property compression

compression?: pulumi.Input<string>;

The compression type of the data source. Valid values are “NONE” or “GZIP”.

property csvOptions

csvOptions?: pulumi.Input<TableExternalDataConfigurationCsvOptions>;

Additional properties to set if sourceFormat is set to “CSV”. Structure is documented below.

property googleSheetsOptions

googleSheetsOptions?: pulumi.Input<TableExternalDataConfigurationGoogleSheetsOptions>;

Additional options if sourceFormat is set to “GOOGLE_SHEETS”. Structure is documented below.

property hivePartitioningOptions

hivePartitioningOptions?: pulumi.Input<TableExternalDataConfigurationHivePartitioningOptions>;

When set, configures hive partitioning support. Not all storage formats support hive partitioning – requesting hive partitioning on an unsupported format will lead to an error, as will providing an invalid specification.

property ignoreUnknownValues

ignoreUnknownValues?: pulumi.Input<boolean>;

Indicates if BigQuery should allow extra values that are not represented in the table schema. If true, the extra values are ignored. If false, records with extra columns are treated as bad records, and if there are too many bad records, an invalid error is returned in the job result. The default value is false.

property maxBadRecords

maxBadRecords?: pulumi.Input<number>;

The maximum number of bad records that BigQuery can ignore when reading data.

property sourceFormat

sourceFormat: pulumi.Input<string>;

The data format. Supported values are: “CSV”, “GOOGLE_SHEETS”, “NEWLINE_DELIMITED_JSON”, “AVRO”, “PARQUET”, and “DATSTORE_BACKUP”. To use “GOOGLE_SHEETS” the scopes must include “https://www.googleapis.com/auth/drive.readonly".

property sourceUris

sourceUris: pulumi.Input<pulumi.Input<string>[]>;

A list of the fully-qualified URIs that point to your data in Google Cloud.

interface TableExternalDataConfigurationCsvOptions

interface TableExternalDataConfigurationCsvOptions

property allowJaggedRows

allowJaggedRows?: pulumi.Input<boolean>;

Indicates if BigQuery should accept rows that are missing trailing optional columns.

property allowQuotedNewlines

allowQuotedNewlines?: pulumi.Input<boolean>;

Indicates if BigQuery should allow quoted data sections that contain newline characters in a CSV file. The default value is false.

property encoding

encoding?: pulumi.Input<string>;

The character encoding of the data. The supported values are UTF-8 or ISO-8859-1.

property fieldDelimiter

fieldDelimiter?: pulumi.Input<string>;

The separator for fields in a CSV file.

property quote

quote: pulumi.Input<string>;

The value that is used to quote data sections in a CSV file. If your data does not contain quoted sections, set the property value to an empty string. If your data contains quoted newline characters, you must also set the allowQuotedNewlines property to true. The API-side default is ", specified in the provider escaped as \". Due to limitations with default values, this value is required to be explicitly set.

property skipLeadingRows

skipLeadingRows?: pulumi.Input<number>;

The number of rows at the top of the sheet that BigQuery will skip when reading the data. At least one of range or skipLeadingRows must be set.

interface TableExternalDataConfigurationGoogleSheetsOptions

interface TableExternalDataConfigurationGoogleSheetsOptions

property range

range?: pulumi.Input<string>;

Information required to partition based on ranges. Structure is documented below.

property skipLeadingRows

skipLeadingRows?: pulumi.Input<number>;

The number of rows at the top of the sheet that BigQuery will skip when reading the data. At least one of range or skipLeadingRows must be set.

interface TableExternalDataConfigurationHivePartitioningOptions

interface TableExternalDataConfigurationHivePartitioningOptions

property mode

mode?: pulumi.Input<string>;

When set, what mode of hive partitioning to use when reading data. The following modes are supported. * AUTO: automatically infer partition key name(s) and type(s). * STRINGS: automatically infer partition key name(s). All types are Not all storage formats support hive partitioning. Requesting hive partitioning on an unsupported format will lead to an error. Currently supported formats are: JSON, CSV, ORC, Avro and Parquet. * CUSTOM: when set to CUSTOM, you must encode the partition key schema within the sourceUriPrefix by setting sourceUriPrefix to gs://bucket/path_to_table/{key1:TYPE1}/{key2:TYPE2}/{key3:TYPE3}.

property sourceUriPrefix

sourceUriPrefix?: pulumi.Input<string>;

When hive partition detection is requested, a common for all source uris must be required. The prefix must end immediately before the partition key encoding begins. For example, consider files following this data layout. gs://bucket/path_to_table/dt=2019-06-01/country=USA/id=7/file.avro gs://bucket/path_to_table/dt=2019-05-31/country=CA/id=3/file.avro When hive partitioning is requested with either AUTO or STRINGS detection, the common prefix can be either of gs://bucket/path_to_table or gs://bucket/path_to_table/. Note that when mode is set to CUSTOM, you must encode the partition key schema within the sourceUriPrefix by setting sourceUriPrefix to gs://bucket/path_to_table/{key1:TYPE1}/{key2:TYPE2}/{key3:TYPE3}.

interface TableRangePartitioning

interface TableRangePartitioning

property field

field: pulumi.Input<string>;

The field used to determine how to create a range-based partition.

property range

range: pulumi.Input<TableRangePartitioningRange>;

Information required to partition based on ranges. Structure is documented below.

interface TableRangePartitioningRange

interface TableRangePartitioningRange

property end

end: pulumi.Input<number>;

End of the range partitioning, exclusive.

property interval

interval: pulumi.Input<number>;

The width of each range within the partition.

property start

start: pulumi.Input<number>;

Start of the range partitioning, inclusive.

interface TableTimePartitioning

interface TableTimePartitioning

property expirationMs

expirationMs?: pulumi.Input<number>;

Number of milliseconds for which to keep the storage for a partition.

property field

field?: pulumi.Input<string>;

The field used to determine how to create a range-based partition.

property requirePartitionFilter

requirePartitionFilter?: pulumi.Input<boolean>;

If set to true, queries over this table require a partition filter that can be used for partition elimination to be specified.

property type

type: pulumi.Input<string>;

The only type supported is DAY, which will generate one partition per day based on data loading time.

interface TableView

interface TableView

property query

query: pulumi.Input<string>;

A query that BigQuery executes when the view is referenced.

property useLegacySql

useLegacySql?: pulumi.Input<boolean>;

Specifies whether to use BigQuery’s legacy SQL for this view. The default value is true. If set to false, the view will use BigQuery’s standard SQL.

namespace bigtable

interface GCPolicyMaxAge

interface GCPolicyMaxAge

property days

days: pulumi.Input<number>;

Number of days before applying GC policy.

interface GCPolicyMaxVersion

interface GCPolicyMaxVersion

property number

number: pulumi.Input<number>;

Number of version before applying the GC policy.

interface InstanceCluster

interface InstanceCluster

property clusterId

clusterId: pulumi.Input<string>;

The ID of the Cloud Bigtable cluster.

property numNodes

numNodes?: pulumi.Input<number>;

The number of nodes in your Cloud Bigtable cluster. Required, with a minimum of 1 for a PRODUCTION instance. Must be left unset for a DEVELOPMENT instance.

property storageType

storageType?: pulumi.Input<string>;

The storage type to use. One of "SSD" or "HDD". Defaults to "SSD".

property zone

zone: pulumi.Input<string>;

The zone to create the Cloud Bigtable cluster in. Each cluster must have a different zone in the same region. Zones that support Bigtable instances are noted on the Cloud Bigtable locations page.

interface InstanceIamBindingCondition

interface InstanceIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface InstanceIamMemberCondition

interface InstanceIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface TableColumnFamily

interface TableColumnFamily

property family

family: pulumi.Input<string>;

The name of the column family.

namespace billing

interface AccountIamBindingCondition

interface AccountIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface AccountIamMemberCondition

interface AccountIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface BudgetAllUpdatesRule

interface BudgetAllUpdatesRule

property pubsubTopic

pubsubTopic: pulumi.Input<string>;

The name of the Cloud Pub/Sub topic where budget related messages will be published, in the form projects/{project_id}/topics/{topic_id}. Updates are sent at regular intervals to the topic.

property schemaVersion

schemaVersion?: pulumi.Input<string>;

The schema version of the notification. Only “1.0” is accepted. It represents the JSON schema as defined in https://cloud.google.com/billing/docs/how-to/budgets#notification_format.

interface BudgetAmount

interface BudgetAmount

property specifiedAmount

specifiedAmount: pulumi.Input<BudgetAmountSpecifiedAmount>;

A specified amount to use as the budget. currencyCode is optional. If specified, it must match the currency of the billing account. The currencyCode is provided on output. Structure is documented below.

interface BudgetAmountSpecifiedAmount

interface BudgetAmountSpecifiedAmount

property currencyCode

currencyCode?: pulumi.Input<string>;

The 3-letter currency code defined in ISO 4217.

property nanos

nanos?: pulumi.Input<number>;

Number of nano (10^-9) units of the amount. The value must be between -999,999,999 and +999,999,999 inclusive. If units is positive, nanos must be positive or zero. If units is zero, nanos can be positive, zero, or negative. If units is negative, nanos must be negative or zero. For example $-1.75 is represented as units=-1 and nanos=-750,000,000.

property units

units?: pulumi.Input<string>;

The whole units of the amount. For example if currencyCode is “USD”, then 1 unit is one US dollar.

interface BudgetBudgetFilter

interface BudgetBudgetFilter

property creditTypesTreatment

creditTypesTreatment?: pulumi.Input<string>;

Specifies how credits should be treated when determining spend for threshold calculations.

property projects

projects?: pulumi.Input<pulumi.Input<string>[]>;

A set of projects of the form projects/{project_id}, specifying that usage from only this set of projects should be included in the budget. If omitted, the report will include all usage for the billing account, regardless of which project the usage occurred on. Only zero or one project can be specified currently.

property services

services?: pulumi.Input<pulumi.Input<string>[]>;

A set of services of the form services/{service_id}, specifying that usage from only this set of services should be included in the budget. If omitted, the report will include usage for all the services. The service names are available through the Catalog API: https://cloud.google.com/billing/v1/how-tos/catalog-api.

interface BudgetThresholdRule

interface BudgetThresholdRule

property spendBasis

spendBasis?: pulumi.Input<string>;

The type of basis used to determine if spend has passed the threshold.

property thresholdPercent

thresholdPercent: pulumi.Input<number>;

Send an alert when this threshold is exceeded. This is a 1.0-based percentage, so 0.5 = 50%. Must be >= 0.

namespace binaryauthorization

interface AttestorAttestationAuthorityNote

interface AttestorAttestationAuthorityNote

property delegationServiceAccountEmail

delegationServiceAccountEmail?: pulumi.Input<string>;

- This field will contain the service account email address that this Attestor will use as the principal when querying Container Analysis. Attestor administrators must grant this service account the IAM role needed to read attestations from the noteReference in Container Analysis (containeranalysis.notes.occurrences.viewer). This email address is fixed for the lifetime of the Attestor, but callers should not make any other assumptions about the service account email; future versions may use an email based on a different naming pattern.

property noteReference

noteReference: pulumi.Input<string>;

The resource name of a ATTESTATION_AUTHORITY Note, created by the user. If the Note is in a different project from the Attestor, it should be specified in the format projects/*&#47;notes/* (or the legacy providers/*&#47;notes/*). This field may not be updated. An attestation by this attestor is stored as a Container Analysis ATTESTATION_AUTHORITY Occurrence that names a container image and that links to this Note.

property publicKeys

publicKeys?: pulumi.Input<pulumi.Input<AttestorAttestationAuthorityNotePublicKey>[]>;

Public keys that verify attestations signed by this attestor. This field may be updated. If this field is non-empty, one of the specified public keys must verify that an attestation was signed by this attestor for the image specified in the admission request. If this field is empty, this attestor always returns that no valid attestations exist. Structure is documented below.

interface AttestorAttestationAuthorityNotePublicKey

interface AttestorAttestationAuthorityNotePublicKey

property asciiArmoredPgpPublicKey

asciiArmoredPgpPublicKey?: pulumi.Input<string>;

ASCII-armored representation of a PGP public key, as the entire output by the command gpg --export --armor foo@example.com (either LF or CRLF line endings). When using this field, id should be left blank. The BinAuthz API handlers will calculate the ID and fill it in automatically. BinAuthz computes this ID as the OpenPGP RFC4880 V4 fingerprint, represented as upper-case hex. If id is provided by the caller, it will be overwritten by the API-calculated ID.

property comment

comment?: pulumi.Input<string>;

A descriptive comment. This field may be updated.

property id

id?: pulumi.Input<string>;

The ID of this public key. Signatures verified by BinAuthz must include the ID of the public key that can be used to verify them, and that ID must match the contents of this field exactly. Additional restrictions on this field can be imposed based on which public key type is encapsulated. See the documentation on publicKey cases below for details.

property pkixPublicKey

pkixPublicKey?: pulumi.Input<AttestorAttestationAuthorityNotePublicKeyPkixPublicKey>;

A raw PKIX SubjectPublicKeyInfo format public key. NOTE: id may be explicitly provided by the caller when using this type of public key, but it MUST be a valid RFC3986 URI. If id is left blank, a default one will be computed based on the digest of the DER encoding of the public key. Structure is documented below.

interface AttestorAttestationAuthorityNotePublicKeyPkixPublicKey

interface AttestorAttestationAuthorityNotePublicKeyPkixPublicKey

property publicKeyPem

publicKeyPem?: pulumi.Input<string>;

A PEM-encoded public key, as described in https://tools.ietf.org/html/rfc7468#section-13

property signatureAlgorithm

signatureAlgorithm?: pulumi.Input<string>;

The signature algorithm used to verify a message against a signature using this key. These signature algorithm must match the structure and any object identifiers encoded in publicKeyPem (i.e. this algorithm must match that of the public key).

interface AttestorIamBindingCondition

interface AttestorIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface AttestorIamMemberCondition

interface AttestorIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface PolicyAdmissionWhitelistPattern

interface PolicyAdmissionWhitelistPattern

property namePattern

namePattern: pulumi.Input<string>;

An image name pattern to whitelist, in the form registry/path/to/image. This supports a trailing * as a wildcard, but this is allowed only in text after the registry/ part.

interface PolicyClusterAdmissionRule

interface PolicyClusterAdmissionRule

property cluster

cluster: pulumi.Input<string>;

The identifier for this object. Format specified above.

property enforcementMode

enforcementMode: pulumi.Input<string>;

The action when a pod creation is denied by the admission rule.

property evaluationMode

evaluationMode: pulumi.Input<string>;

How this admission rule will be evaluated.

property requireAttestationsBies

requireAttestationsBies?: pulumi.Input<pulumi.Input<string>[]>;

The resource names of the attestors that must attest to a container image. If the attestor is in a different project from the policy, it should be specified in the format projects/*&#47;attestors/*. Each attestor must exist before a policy can reference it. To add an attestor to a policy the principal issuing the policy change request must be able to read the attestor resource. Note: this field must be non-empty when the evaluationMode field specifies REQUIRE_ATTESTATION, otherwise it must be empty.

interface PolicyDefaultAdmissionRule

interface PolicyDefaultAdmissionRule

property enforcementMode

enforcementMode: pulumi.Input<string>;

The action when a pod creation is denied by the admission rule.

property evaluationMode

evaluationMode: pulumi.Input<string>;

How this admission rule will be evaluated.

property requireAttestationsBies

requireAttestationsBies?: pulumi.Input<pulumi.Input<string>[]>;

The resource names of the attestors that must attest to a container image. If the attestor is in a different project from the policy, it should be specified in the format projects/*&#47;attestors/*. Each attestor must exist before a policy can reference it. To add an attestor to a policy the principal issuing the policy change request must be able to read the attestor resource. Note: this field must be non-empty when the evaluationMode field specifies REQUIRE_ATTESTATION, otherwise it must be empty.

namespace cloudbuild

interface TriggerBuild

interface TriggerBuild

property images

images?: pulumi.Input<pulumi.Input<string>[]>;

A list of images to be pushed upon the successful completion of all build steps. The images are pushed using the builder service account’s credentials. The digests of the pushed images will be stored in the Build resource’s results field. If any of the images fail to be pushed, the build status is marked FAILURE.

property steps

steps: pulumi.Input<pulumi.Input<TriggerBuildStep>[]>;

The operations to be performed on the workspace. Structure is documented below.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

Tags for annotation of a Build. These are not docker tags.

property timeout

timeout?: pulumi.Input<string>;

Time limit for executing this build step. If not defined, the step has no time limit and will be allowed to continue to run until either it completes or the build itself times out.

interface TriggerBuildStep

interface TriggerBuildStep

property args

args?: pulumi.Input<pulumi.Input<string>[]>;

A list of arguments that will be presented to the step when it is started. If the image used to run the step’s container has an entrypoint, the args are used as arguments to that entrypoint. If the image does not define an entrypoint, the first element in args is used as the entrypoint, and the remainder will be used as arguments.

property dir

dir?: pulumi.Input<string>;

Working directory to use when running this step’s container. If this value is a relative path, it is relative to the build’s working directory. If this value is absolute, it may be outside the build’s working directory, in which case the contents of the path may not be persisted across build step executions, unless a volume for that path is specified. If the build specifies a RepoSource with dir and a step with a dir, which specifies an absolute path, the RepoSource dir is ignored for the step’s execution.

property entrypoint

entrypoint?: pulumi.Input<string>;

Entrypoint to be used instead of the build step image’s default entrypoint. If unset, the image’s default entrypoint is used

property envs

envs?: pulumi.Input<pulumi.Input<string>[]>;

A list of environment variable definitions to be used when running a step. The elements are of the form “KEY=VALUE” for the environment variable “KEY” being given the value “VALUE”.

property id

id?: pulumi.Input<string>;

Unique identifier for this build step, used in waitFor to reference this build step as a dependency.

property name

name: pulumi.Input<string>;

Name of the volume to mount. Volume names must be unique per build step and must be valid names for Docker volumes. Each named volume must be used by at least two build steps.

property secretEnvs

secretEnvs?: pulumi.Input<pulumi.Input<string>[]>;

A list of environment variables which are encrypted using a Cloud Key Management Service crypto key. These values must be specified in the build’s Secret.

property timeout

timeout?: pulumi.Input<string>;

Time limit for executing this build step. If not defined, the step has no time limit and will be allowed to continue to run until either it completes or the build itself times out.

property timing

timing?: pulumi.Input<string>;

Output only. Stores timing information for executing this build step.

property volumes

volumes?: pulumi.Input<pulumi.Input<TriggerBuildStepVolume>[]>;

List of volumes to mount into the build step. Each volume is created as an empty volume prior to execution of the build step. Upon completion of the build, volumes and their contents are discarded. Using a named volume in only one step is not valid as it is indicative of a build request with an incorrect configuration. Structure is documented below.

property waitFors

waitFors?: pulumi.Input<pulumi.Input<string>[]>;

The ID(s) of the step(s) that this build step depends on. This build step will not start until all the build steps in waitFor have completed successfully. If waitFor is empty, this build step will start when all previous build steps in the Build.Steps list have completed successfully.

interface TriggerBuildStepVolume

interface TriggerBuildStepVolume

property name

name: pulumi.Input<string>;

Name of the volume to mount. Volume names must be unique per build step and must be valid names for Docker volumes. Each named volume must be used by at least two build steps.

property path

path: pulumi.Input<string>;

Path at which to mount the volume. Paths must be absolute and cannot conflict with other volume paths on the same build step or with certain reserved volume paths.

interface TriggerGithub

interface TriggerGithub

property name

name?: pulumi.Input<string>;

Name of the volume to mount. Volume names must be unique per build step and must be valid names for Docker volumes. Each named volume must be used by at least two build steps.

property owner

owner?: pulumi.Input<string>;

Owner of the repository. For example: The owner for https://github.com/googlecloudplatform/cloud-builders is “googlecloudplatform”.

property pullRequest

pullRequest?: pulumi.Input<TriggerGithubPullRequest>;

filter to match changes in pull requests. Specify only one of pullRequest or push. Structure is documented below.

property push

push?: pulumi.Input<TriggerGithubPush>;

filter to match changes in refs, like branches or tags. Specify only one of pullRequest or push. Structure is documented below.

interface TriggerGithubPullRequest

interface TriggerGithubPullRequest

property branch

branch: pulumi.Input<string>;

Regex of branches to match. Specify only one of branch or tag.

property commentControl

commentControl?: pulumi.Input<string>;

Whether to block builds on a “/gcbrun” comment from a repository owner or collaborator.

interface TriggerGithubPush

interface TriggerGithubPush

property branch

branch?: pulumi.Input<string>;

Regex of branches to match. Specify only one of branch or tag.

property tag

tag?: pulumi.Input<string>;

Regex of tags to match. Specify only one of branch or tag.

interface TriggerTriggerTemplate

interface TriggerTriggerTemplate

property branchName

branchName?: pulumi.Input<string>;

Name of the branch to build. Exactly one a of branch name, tag, or commit SHA must be provided. This field is a regular expression.

property commitSha

commitSha?: pulumi.Input<string>;

Explicit commit SHA to build. Exactly one of a branch name, tag, or commit SHA must be provided.

property dir

dir?: pulumi.Input<string>;

Working directory to use when running this step’s container. If this value is a relative path, it is relative to the build’s working directory. If this value is absolute, it may be outside the build’s working directory, in which case the contents of the path may not be persisted across build step executions, unless a volume for that path is specified. If the build specifies a RepoSource with dir and a step with a dir, which specifies an absolute path, the RepoSource dir is ignored for the step’s execution.

property projectId

projectId?: pulumi.Input<string>;

ID of the project that owns the Cloud Source Repository. If omitted, the project ID requesting the build is assumed.

property repoName

repoName?: pulumi.Input<string>;

Name of the Cloud Source Repository. If omitted, the name “default” is assumed.

property tagName

tagName?: pulumi.Input<string>;

Name of the tag to build. Exactly one of a branch name, tag, or commit SHA must be provided. This field is a regular expression.

namespace cloudfunctions

interface FunctionEventTrigger

interface FunctionEventTrigger

property eventType

eventType: pulumi.Input<string>;

The type of event to observe. For example: "google.storage.object.finalize". See the documentation on calling Cloud Functions for a full reference of accepted triggers.

property failurePolicy

failurePolicy?: pulumi.Input<FunctionEventTriggerFailurePolicy>;

Specifies policy for failed executions. Structure is documented below.

property resource

resource: pulumi.Input<string>;

Required. The name or partial URI of the resource from which to observe events. For example, "myBucket" or "projects/my-project/topics/my-topic"

interface FunctionEventTriggerFailurePolicy

interface FunctionEventTriggerFailurePolicy

property retry

retry: pulumi.Input<boolean>;

Whether the function should be retried on failure. Defaults to false.

interface FunctionIamBindingCondition

interface FunctionIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface FunctionIamMemberCondition

interface FunctionIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface FunctionSourceRepository

interface FunctionSourceRepository

property deployedUrl

deployedUrl?: pulumi.Input<string>;

property url

url: pulumi.Input<string>;

The URL pointing to the hosted repository where the function is defined. There are supported Cloud Source Repository URLs in the following formats:

namespace cloudrun

interface DomainMappingMetadata

interface DomainMappingMetadata

property annotations

annotations?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: http://kubernetes.io/docs/user-guide/annotations

property generation

generation?: pulumi.Input<number>;

- A sequence number representing a specific generation of the desired state.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels

property namespace

namespace: pulumi.Input<string>;

In Cloud Run the namespace must be equal to either the project ID or project number.

property resourceVersion

resourceVersion?: pulumi.Input<string>;

- An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

selfLink?: pulumi.Input<string>;

- SelfLink is a URL representing this object.

property uid

uid?: pulumi.Input<string>;

- UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations. More info: http://kubernetes.io/docs/user-guide/identifiers#uids

interface DomainMappingSpec

interface DomainMappingSpec

property certificateMode

certificateMode?: pulumi.Input<string>;

The mode of the certificate.

property forceOverride

forceOverride?: pulumi.Input<boolean>;

If set, the mapping will override any mapping set before this spec was set. It is recommended that the user leaves this empty to receive an error warning about a potential conflict and only set it once the respective UI has given such a warning.

property routeName

routeName: pulumi.Input<string>;

The name of the Cloud Run Service that this DomainMapping applies to. The route must exist.

interface DomainMappingStatus

interface DomainMappingStatus

property conditions

conditions?: pulumi.Input<pulumi.Input<DomainMappingStatusCondition>[]>;

property mappedRouteName

mappedRouteName?: pulumi.Input<string>;

property observedGeneration

observedGeneration?: pulumi.Input<number>;

property resourceRecords

resourceRecords?: pulumi.Input<pulumi.Input<DomainMappingStatusResourceRecord>[]>;

interface DomainMappingStatusCondition

interface DomainMappingStatusCondition

property message

message?: pulumi.Input<string>;

property reason

reason?: pulumi.Input<string>;

property status

status?: pulumi.Input<string>;

property type

type?: pulumi.Input<string>;

interface DomainMappingStatusResourceRecord

interface DomainMappingStatusResourceRecord

property name

name?: pulumi.Input<string>;

Name should be a verified domain

property rrdata

rrdata?: pulumi.Input<string>;

property type

type?: pulumi.Input<string>;

interface IamBindingCondition

interface IamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface IamMemberCondition

interface IamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface ServiceMetadata

interface ServiceMetadata

property annotations

annotations?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: http://kubernetes.io/docs/user-guide/annotations

property generation

generation?: pulumi.Input<number>;

- A sequence number representing a specific generation of the desired state.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels

property namespace

namespace?: pulumi.Input<string>;

In Cloud Run the namespace must be equal to either the project ID or project number.

property resourceVersion

resourceVersion?: pulumi.Input<string>;

- An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

selfLink?: pulumi.Input<string>;

- SelfLink is a URL representing this object.

property uid

uid?: pulumi.Input<string>;

- UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations. More info: http://kubernetes.io/docs/user-guide/identifiers#uids

interface ServiceStatus

interface ServiceStatus

property conditions

conditions?: pulumi.Input<pulumi.Input<ServiceStatusCondition>[]>;

property latestCreatedRevisionName

latestCreatedRevisionName?: pulumi.Input<string>;

property latestReadyRevisionName

latestReadyRevisionName?: pulumi.Input<string>;

property observedGeneration

observedGeneration?: pulumi.Input<number>;

property url

url?: pulumi.Input<string>;

interface ServiceStatusCondition

interface ServiceStatusCondition

property message

message?: pulumi.Input<string>;

property reason

reason?: pulumi.Input<string>;

property status

status?: pulumi.Input<string>;

property type

type?: pulumi.Input<string>;

interface ServiceTemplate

interface ServiceTemplate

property metadata

metadata?: pulumi.Input<ServiceTemplateMetadata>;

Metadata associated with this Service, including name, namespace, labels, and annotations. Structure is documented below.

property spec

spec?: pulumi.Input<ServiceTemplateSpec>;

RevisionSpec holds the desired state of the Revision (from the client). Structure is documented below.

interface ServiceTemplateMetadata

interface ServiceTemplateMetadata

property annotations

annotations?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Annotations is a key value map stored with a resource that may be set by external tools to store and retrieve arbitrary metadata. More info: http://kubernetes.io/docs/user-guide/annotations

property generation

generation?: pulumi.Input<number>;

- A sequence number representing a specific generation of the desired state.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Map of string keys and values that can be used to organize and categorize (scope and select) objects. May match selectors of replication controllers and routes. More info: http://kubernetes.io/docs/user-guide/labels

property name

name?: pulumi.Input<string>;

Name of the environment variable.

property namespace

namespace?: pulumi.Input<string>;

In Cloud Run the namespace must be equal to either the project ID or project number.

property resourceVersion

resourceVersion?: pulumi.Input<string>;

- An opaque value that represents the internal version of this object that can be used by clients to determine when objects have changed. May be used for optimistic concurrency, change detection, and the watch operation on a resource or set of resources. They may only be valid for a particular resource or set of resources. More info: https://git.k8s.io/community/contributors/devel/api-conventions.md#concurrency-control-and-consistency

selfLink?: pulumi.Input<string>;

- SelfLink is a URL representing this object.

property uid

uid?: pulumi.Input<string>;

- UID is a unique id generated by the server on successful creation of a resource and is not allowed to change on PUT operations. More info: http://kubernetes.io/docs/user-guide/identifiers#uids

interface ServiceTemplateSpec

interface ServiceTemplateSpec

property containerConcurrency

containerConcurrency?: pulumi.Input<number>;

ContainerConcurrency specifies the maximum allowed in-flight (concurrent) requests per container of the Revision. Values are: - 0 thread-safe, the system should manage the max concurrency. This is the default value. - 1 not-thread-safe. Single concurrency - 2-N thread-safe, max concurrency of N

property containers

containers?: pulumi.Input<pulumi.Input<ServiceTemplateSpecContainer>[]>;

Container defines the unit of execution for this Revision. In the context of a Revision, we disallow a number of the fields of this Container, including: name, ports, and volumeMounts. The runtime contract is documented here: https://github.com/knative/serving/blob/master/docs/runtime-contract.md Structure is documented below.

property serviceAccountName

serviceAccountName?: pulumi.Input<string>;

Email address of the IAM service account associated with the revision of the service. The service account represents the identity of the running revision, and determines what permissions the revision has. If not provided, the revision will use the project’s default service account.

property servingState

DEPRECATED Not supported by Cloud Run fully managed
servingState?: pulumi.Input<string>;

- ServingState holds a value describing the state the resources are in for this Revision. It is expected that the system will manipulate this based on routability and load.

interface ServiceTemplateSpecContainer

interface ServiceTemplateSpecContainer

property args

args?: pulumi.Input<pulumi.Input<string>[]>;

Arguments to the entrypoint. The docker image’s CMD is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container’s environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

property commands

commands?: pulumi.Input<pulumi.Input<string>[]>;

Entrypoint array. Not executed within a shell. The docker image’s ENTRYPOINT is used if this is not provided. Variable references $(VAR_NAME) are expanded using the container’s environment. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. More info: https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/#running-a-command-in-a-shell

property envFroms

DEPRECATED Not supported by Cloud Run fully managed
envFroms?: pulumi.Input<pulumi.Input<ServiceTemplateSpecContainerEnvFrom>[]>;

- (Optional, Deprecated) List of sources to populate environment variables in the container. All invalid keys will be reported as an event when the container is starting. When a key exists in multiple sources, the value associated with the last source will take precedence. Values defined by an Env with a duplicate key will take precedence. Structure is documented below.

property envs

envs?: pulumi.Input<pulumi.Input<ServiceTemplateSpecContainerEnv>[]>;

List of environment variables to set in the container. Structure is documented below.

property image

image: pulumi.Input<string>;

Docker image name. This is most often a reference to a container located in the container registry, such as gcr.io/cloudrun/hello More info: https://kubernetes.io/docs/concepts/containers/images

property resources

resources?: pulumi.Input<ServiceTemplateSpecContainerResources>;

Compute Resources required by this container. Used to set values such as max memory More info: https://kubernetes.io/docs/concepts/storage/persistent-volumes#resources Structure is documented below.

property workingDir

DEPRECATED Not supported by Cloud Run fully managed
workingDir?: pulumi.Input<string>;

- (Optional, Deprecated) Container’s working directory. If not specified, the container runtime’s default will be used, which might be configured in the container image.

interface ServiceTemplateSpecContainerEnv

interface ServiceTemplateSpecContainerEnv

property name

name?: pulumi.Input<string>;

Name of the environment variable.

property value

value?: pulumi.Input<string>;

Variable references $(VAR_NAME) are expanded using the previous defined environment variables in the container and any route environment variables. If a variable cannot be resolved, the reference in the input string will be unchanged. The $(VAR_NAME) syntax can be escaped with a double $$, ie: $$(VAR_NAME). Escaped references will never be expanded, regardless of whether the variable exists or not. Defaults to “”.

interface ServiceTemplateSpecContainerEnvFrom

interface ServiceTemplateSpecContainerEnvFrom

property configMapRef

configMapRef?: pulumi.Input<ServiceTemplateSpecContainerEnvFromConfigMapRef>;

The ConfigMap to select from. Structure is documented below.

property prefix

prefix?: pulumi.Input<string>;

An optional identifier to prepend to each key in the ConfigMap.

property secretRef

secretRef?: pulumi.Input<ServiceTemplateSpecContainerEnvFromSecretRef>;

The Secret to select from. Structure is documented below.

interface ServiceTemplateSpecContainerEnvFromConfigMapRef

interface ServiceTemplateSpecContainerEnvFromConfigMapRef

property localObjectReference

localObjectReference?: pulumi.Input<ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference>;

The Secret to select from. Structure is documented below.

property optional

optional?: pulumi.Input<boolean>;

Specify whether the Secret must be defined

interface ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference

interface ServiceTemplateSpecContainerEnvFromConfigMapRefLocalObjectReference

property name

name: pulumi.Input<string>;

Name of the environment variable.

interface ServiceTemplateSpecContainerEnvFromSecretRef

interface ServiceTemplateSpecContainerEnvFromSecretRef

property localObjectReference

localObjectReference?: pulumi.Input<ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference>;

The Secret to select from. Structure is documented below.

property optional

optional?: pulumi.Input<boolean>;

Specify whether the Secret must be defined

interface ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference

interface ServiceTemplateSpecContainerEnvFromSecretRefLocalObjectReference

property name

name: pulumi.Input<string>;

Name of the environment variable.

interface ServiceTemplateSpecContainerResources

interface ServiceTemplateSpecContainerResources

property limits

limits?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Limits describes the maximum amount of compute resources allowed. The values of the map is string form of the ‘quantity’ k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go

property requests

requests?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Requests describes the minimum amount of compute resources required. If Requests is omitted for a container, it defaults to Limits if that is explicitly specified, otherwise to an implementation-defined value. The values of the map is string form of the ‘quantity’ k8s type: https://github.com/kubernetes/kubernetes/blob/master/staging/src/k8s.io/apimachinery/pkg/api/resource/quantity.go

interface ServiceTraffic

interface ServiceTraffic

property latestRevision

latestRevision?: pulumi.Input<boolean>;

LatestRevision may be optionally provided to indicate that the latest ready Revision of the Configuration should be used for this traffic target. When provided LatestRevision must be true if RevisionName is empty; it must be false when RevisionName is non-empty.

property percent

percent: pulumi.Input<number>;

Percent specifies percent of the traffic to this Revision or Configuration.

property revisionName

revisionName?: pulumi.Input<string>;

RevisionName of a specific revision to which to send this portion of traffic.

namespace cloudscheduler

interface JobAppEngineHttpTarget

interface JobAppEngineHttpTarget

property appEngineRouting

appEngineRouting?: pulumi.Input<JobAppEngineHttpTargetAppEngineRouting>;

App Engine Routing setting for the job. Structure is documented below.

property body

body?: pulumi.Input<string>;

HTTP request body. A request body is allowed only if the HTTP method is POST, PUT, or PATCH. It is an error to set body on a job with an incompatible HttpMethod.

property headers

headers?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

This map contains the header field names and values. Repeated headers are not supported, but a header value can contain commas.

property httpMethod

httpMethod?: pulumi.Input<string>;

Which HTTP method to use for the request.

property relativeUri

relativeUri: pulumi.Input<string>;

The relative URI. The relative URL must begin with “/” and must be a valid HTTP relative URL. It can contain a path, query string arguments, and # fragments. If the relative URL is empty, then the root path “/” will be used. No spaces are allowed, and the maximum length allowed is 2083 characters

interface JobAppEngineHttpTargetAppEngineRouting

interface JobAppEngineHttpTargetAppEngineRouting

property instance

instance?: pulumi.Input<string>;

App instance. By default, the job is sent to an instance which is available when the job is attempted.

property service

service?: pulumi.Input<string>;

App service. By default, the job is sent to the service which is the default service when the job is attempted.

property version

version?: pulumi.Input<string>;

App version. By default, the job is sent to the version which is the default version when the job is attempted.

interface JobHttpTarget

interface JobHttpTarget

property body

body?: pulumi.Input<string>;

HTTP request body. A request body is allowed only if the HTTP method is POST, PUT, or PATCH. It is an error to set body on a job with an incompatible HttpMethod.

property headers

headers?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

This map contains the header field names and values. Repeated headers are not supported, but a header value can contain commas.

property httpMethod

httpMethod?: pulumi.Input<string>;

Which HTTP method to use for the request.

property oauthToken

oauthToken?: pulumi.Input<JobHttpTargetOauthToken>;

Contains information needed for generating an OAuth token. This type of authorization should be used when sending requests to a GCP endpoint. Structure is documented below.

property oidcToken

oidcToken?: pulumi.Input<JobHttpTargetOidcToken>;

Contains information needed for generating an OpenID Connect token. This type of authorization should be used when sending requests to third party endpoints or Cloud Run. Structure is documented below.

property uri

uri: pulumi.Input<string>;

The full URI path that the request will be sent to.

interface JobHttpTargetOauthToken

interface JobHttpTargetOauthToken

property scope

scope?: pulumi.Input<string>;

OAuth scope to be used for generating OAuth access token. If not specified, “https://www.googleapis.com/auth/cloud-platform" will be used.

property serviceAccountEmail

serviceAccountEmail: pulumi.Input<string>;

Service account email to be used for generating OAuth token. The service account must be within the same project as the job.

interface JobHttpTargetOidcToken

interface JobHttpTargetOidcToken

property audience

audience?: pulumi.Input<string>;

Audience to be used when generating OIDC token. If not specified, the URI specified in target will be used.

property serviceAccountEmail

serviceAccountEmail: pulumi.Input<string>;

Service account email to be used for generating OAuth token. The service account must be within the same project as the job.

interface JobPubsubTarget

interface JobPubsubTarget

property attributes

attributes?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Attributes for PubsubMessage. Pubsub message must contain either non-empty data, or at least one attribute.

property data

data?: pulumi.Input<string>;

The message payload for PubsubMessage. Pubsub message must contain either non-empty data, or at least one attribute.

property topicName

topicName: pulumi.Input<string>;

The full resource name for the Cloud Pub/Sub topic to which messages will be published when a job is delivered. ~>NOTE: The topic name must be in the same format as required by PubSub’s PublishRequest.name, e.g. projects/my-project/topics/my-topic.

interface JobRetryConfig

interface JobRetryConfig

property maxBackoffDuration

maxBackoffDuration?: pulumi.Input<string>;

The maximum amount of time to wait before retrying a job after it fails. A duration in seconds with up to nine fractional digits, terminated by ’s’.

property maxDoublings

maxDoublings?: pulumi.Input<number>;

The time between retries will double maxDoublings times. A job’s retry interval starts at minBackoffDuration, then doubles maxDoublings times, then increases linearly, and finally retries retries at intervals of maxBackoffDuration up to retryCount times.

property maxRetryDuration

maxRetryDuration?: pulumi.Input<string>;

The time limit for retrying a failed job, measured from time when an execution was first attempted. If specified with retryCount, the job will be retried until both limits are reached. A duration in seconds with up to nine fractional digits, terminated by ’s’.

property minBackoffDuration

minBackoffDuration?: pulumi.Input<string>;

The minimum amount of time to wait before retrying a job after it fails. A duration in seconds with up to nine fractional digits, terminated by ’s’.

property retryCount

retryCount?: pulumi.Input<number>;

The number of attempts that the system will make to run a job using the exponential backoff procedure described by maxDoublings. Values greater than 5 and negative values are not allowed.

namespace cloudtasks

interface QueueAppEngineRoutingOverride

interface QueueAppEngineRoutingOverride

property host

host?: pulumi.Input<string>;

- The host that the task is sent to.

property instance

instance?: pulumi.Input<string>;

App instance. By default, the task is sent to an instance which is available when the task is attempted.

property service

service?: pulumi.Input<string>;

App service. By default, the task is sent to the service which is the default service when the task is attempted.

property version

version?: pulumi.Input<string>;

App version. By default, the task is sent to the version which is the default version when the task is attempted.

interface QueueRateLimits

interface QueueRateLimits

property maxBurstSize

maxBurstSize?: pulumi.Input<number>;

- The max burst size. Max burst size limits how fast tasks in queue are processed when many tasks are in the queue and the rate is high. This field allows the queue to have a high rate so processing starts shortly after a task is enqueued, but still limits resource usage when many tasks are enqueued in a short period of time.

property maxConcurrentDispatches

maxConcurrentDispatches?: pulumi.Input<number>;

The maximum number of concurrent tasks that Cloud Tasks allows to be dispatched for this queue. After this threshold has been reached, Cloud Tasks stops dispatching tasks until the number of concurrent requests decreases.

property maxDispatchesPerSecond

maxDispatchesPerSecond?: pulumi.Input<number>;

The maximum rate at which tasks are dispatched from this queue. If unspecified when the queue is created, Cloud Tasks will pick the default.

interface QueueRetryConfig

interface QueueRetryConfig

property maxAttempts

maxAttempts?: pulumi.Input<number>;

Number of attempts per task. Cloud Tasks will attempt the task maxAttempts times (that is, if the first attempt fails, then there will be maxAttempts - 1 retries). Must be >= -1. If unspecified when the queue is created, Cloud Tasks will pick the default. -1 indicates unlimited attempts.

property maxBackoff

maxBackoff?: pulumi.Input<string>;

A task will be scheduled for retry between minBackoff and maxBackoff duration after it fails, if the queue’s RetryConfig specifies that the task should be retried.

property maxDoublings

maxDoublings?: pulumi.Input<number>;

The time between retries will double maxDoublings times. A task’s retry interval starts at minBackoff, then doubles maxDoublings times, then increases linearly, and finally retries retries at intervals of maxBackoff up to maxAttempts times.

property maxRetryDuration

maxRetryDuration?: pulumi.Input<string>;

If positive, maxRetryDuration specifies the time limit for retrying a failed task, measured from when the task was first attempted. Once maxRetryDuration time has passed and the task has been attempted maxAttempts times, no further attempts will be made and the task will be deleted. If zero, then the task age is unlimited.

property minBackoff

minBackoff?: pulumi.Input<string>;

A task will be scheduled for retry between minBackoff and maxBackoff duration after it fails, if the queue’s RetryConfig specifies that the task should be retried.

namespace composer

interface EnvironmentConfig

interface EnvironmentConfig

property airflowUri

airflowUri?: pulumi.Input<string>;

property dagGcsPrefix

dagGcsPrefix?: pulumi.Input<string>;

property gkeCluster

gkeCluster?: pulumi.Input<string>;

property nodeConfig

nodeConfig?: pulumi.Input<EnvironmentConfigNodeConfig>;

The configuration used for the Kubernetes Engine cluster. Structure is documented below.

property nodeCount

nodeCount?: pulumi.Input<number>;

The number of nodes in the Kubernetes Engine cluster that will be used to run this environment.

property privateEnvironmentConfig

privateEnvironmentConfig?: pulumi.Input<EnvironmentConfigPrivateEnvironmentConfig>;

The configuration used for the Private IP Cloud Composer environment. Structure is documented below.

property softwareConfig

softwareConfig?: pulumi.Input<EnvironmentConfigSoftwareConfig>;

The configuration settings for software inside the environment. Structure is documented below.

property webServerNetworkAccessControl

webServerNetworkAccessControl?: pulumi.Input<EnvironmentConfigWebServerNetworkAccessControl>;

The network-level access control policy for the Airflow web server. If unspecified, no network-level access restrictions will be applied.

interface EnvironmentConfigNodeConfig

interface EnvironmentConfigNodeConfig

property diskSizeGb

diskSizeGb?: pulumi.Input<number>;

The disk size in GB used for node VMs. Minimum size is 20GB. If unspecified, defaults to 100GB. Cannot be updated.

property ipAllocationPolicy

ipAllocationPolicy?: pulumi.Input<EnvironmentConfigNodeConfigIpAllocationPolicy>;

Configuration for controlling how IPs are allocated in the GKE cluster. Structure is documented below. Cannot be updated.

property machineType

machineType?: pulumi.Input<string>;

The Compute Engine machine type used for cluster instances, specified as a name or relative resource name. For example: “projects/{project}/zones/{zone}/machineTypes/{machineType}”. Must belong to the enclosing environment’s project and region/zone.

property network

network?: pulumi.Input<string>;

The Compute Engine network to be used for machine communications, specified as a self-link, relative resource name (e.g. “projects/{project}/global/networks/{network}”), by name.

property oauthScopes

oauthScopes?: pulumi.Input<pulumi.Input<string>[]>;

The set of Google API scopes to be made available on all node VMs. Cannot be updated. If empty, defaults to ["https://www.googleapis.com/auth/cloud-platform"]

property serviceAccount

serviceAccount?: pulumi.Input<string>;

The Google Cloud Platform Service Account to be used by the node VMs. If a service account is not specified, the “default” Compute Engine service account is used. Cannot be updated. If given, note that the service account must have roles/composer.worker for any GCP resources created under the Cloud Composer Environment.

property subnetwork

subnetwork?: pulumi.Input<string>;

The Compute Engine subnetwork to be used for machine communications, , specified as a self-link, relative resource name (e.g. “projects/{project}/regions/{region}/subnetworks/{subnetwork}”), or by name. If subnetwork is provided, network must also be provided and the subnetwork must belong to the enclosing environment’s project and region.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

The list of instance tags applied to all node VMs. Tags are used to identify valid sources or targets for network firewalls. Each tag within the list must comply with RFC1035. Cannot be updated.

property zone

zone: pulumi.Input<string>;

The Compute Engine zone in which to deploy the VMs running the Apache Airflow software, specified as the zone name or relative resource name (e.g. “projects/{project}/zones/{zone}”). Must belong to the enclosing environment’s project and region.

interface EnvironmentConfigNodeConfigIpAllocationPolicy

interface EnvironmentConfigNodeConfigIpAllocationPolicy

property clusterIpv4CidrBlock

clusterIpv4CidrBlock?: pulumi.Input<string>;

The IP address range used to allocate IP addresses to pods in the cluster. Set to blank to have GKE choose a range with the default size. Set to /netmask (e.g. /14) to have GKE choose a range with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use. Specify either clusterSecondaryRangeName or clusterIpv4CidrBlock but not both.

property clusterSecondaryRangeName

clusterSecondaryRangeName?: pulumi.Input<string>;

The name of the cluster’s secondary range used to allocate IP addresses to pods. Specify either clusterSecondaryRangeName or clusterIpv4CidrBlock but not both. This field is applicable only when useIpAliases is true.

property servicesIpv4CidrBlock

servicesIpv4CidrBlock?: pulumi.Input<string>;

The IP address range used to allocate IP addresses in this cluster. Set to blank to have GKE choose a range with the default size. Set to /netmask (e.g. /14) to have GKE choose a range with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use. Specify either servicesSecondaryRangeName or servicesIpv4CidrBlock but not both.

property servicesSecondaryRangeName

servicesSecondaryRangeName?: pulumi.Input<string>;

The name of the services’ secondary range used to allocate IP addresses to the cluster. Specify either servicesSecondaryRangeName or servicesIpv4CidrBlock but not both. This field is applicable only when useIpAliases is true.

property useIpAliases

useIpAliases: pulumi.Input<boolean>;

Whether or not to enable Alias IPs in the GKE cluster. If true, a VPC-native cluster is created. Defaults to true if the ipAllocationBlock is present in config.

interface EnvironmentConfigPrivateEnvironmentConfig

interface EnvironmentConfigPrivateEnvironmentConfig

property cloudSqlIpv4CidrBlock

cloudSqlIpv4CidrBlock?: pulumi.Input<string>;

The CIDR block from which IP range in tenant project will be reserved for Cloud SQL. Needs to be disjoint from webServerIpv4CidrBlock

property enablePrivateEndpoint

enablePrivateEndpoint?: pulumi.Input<boolean>;

- If true, access to the public endpoint of the GKE cluster is denied.

property masterIpv4CidrBlock

masterIpv4CidrBlock?: pulumi.Input<string>;

The IP range in CIDR notation to use for the hosted master network. This range is used for assigning internal IP addresses to the cluster master or set of masters and to the internal load balancer virtual IP. This range must not overlap with any other ranges in use within the cluster’s network. If left blank, the default value of ‘172.16.0.0/28’ is used.

property webServerIpv4CidrBlock

webServerIpv4CidrBlock?: pulumi.Input<string>;

The CIDR block from which IP range for web server will be reserved. Needs to be disjoint from masterIpv4CidrBlock and cloudSqlIpv4CidrBlock.

interface EnvironmentConfigSoftwareConfig

interface EnvironmentConfigSoftwareConfig

property airflowConfigOverrides

airflowConfigOverrides?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

- (Optional) Apache Airflow configuration properties to override. Property keys contain the section and property names, separated by a hyphen, for example “core-dags_are_paused_at_creation”.

property envVariables

envVariables?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Additional environment variables to provide to the Apache Airflow scheduler, worker, and webserver processes. Environment variable names must match the regular expression [a-zA-Z_][a-zA-Z0-9_]*. They cannot specify Apache Airflow software configuration overrides (they cannot match the regular expression AIRFLOW__[A-Z0-9_]+__[A-Z0-9_]+), and they cannot match any of the following reserved names:

AIRFLOW_HOME
C_FORCE_ROOT
CONTAINER_NAME
DAGS_FOLDER
GCP_PROJECT
GCS_BUCKET
GKE_CLUSTER_NAME
SQL_DATABASE
SQL_INSTANCE
SQL_PASSWORD
SQL_PROJECT
SQL_REGION
SQL_USER

property imageVersion

imageVersion?: pulumi.Input<string>;

- The version of the software running in the environment. This encapsulates both the version of Cloud Composer functionality and the version of Apache Airflow. It must match the regular expression composer-[0-9]+\.[0-9]+(\.[0-9]+)?-airflow-[0-9]+\.[0-9]+(\.[0-9]+.*)?. The Cloud Composer portion of the version is a semantic version. The portion of the image version following ‘airflow-’ is an official Apache Airflow repository release name. See documentation for allowed release names.

property pypiPackages

pypiPackages?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Custom Python Package Index (PyPI) packages to be installed in the environment. Keys refer to the lowercase package name (e.g. “numpy”). Values are the lowercase extras and version specifier (e.g. “==1.12.0”, “[devel,gcp_api]“, “[devel]>=1.8.2, <1.9.2”). To specify a package without pinning it to a version specifier, use the empty string as the value.

property pythonVersion

pythonVersion?: pulumi.Input<string>;

- The major version of Python used to run the Apache Airflow scheduler, worker, and webserver processes. Can be set to ‘2’ or ‘3’. If not specified, the default is ‘2’. Cannot be updated.

interface EnvironmentConfigWebServerNetworkAccessControl

interface EnvironmentConfigWebServerNetworkAccessControl

property allowedIpRanges

allowedIpRanges?: pulumi.Input<pulumi.Input<EnvironmentConfigWebServerNetworkAccessControlAllowedIpRange>[]>;

- A collection of allowed IP ranges with descriptions. Structure is documented below.

interface EnvironmentConfigWebServerNetworkAccessControlAllowedIpRange

interface EnvironmentConfigWebServerNetworkAccessControlAllowedIpRange

property description

description?: pulumi.Input<string>;

A description of this ip range.

property value

value: pulumi.Input<string>;

IP address or range, defined using CIDR notation, of requests that this rule applies to. Examples: 192.168.1.1 or 192.168.0.0/16 or 2001:db8::/32 or 2001:0db8:0000:0042:0000:8a2e:0370:7334. IP range prefixes should be properly truncated. For example, 1.2.3.4/24 should be truncated to 1.2.3.0/24. Similarly, for IPv6, 2001:db8::1/32 should be truncated to 2001:db8::/32.

namespace compute

interface AutoscalarAutoscalingPolicy

interface AutoscalarAutoscalingPolicy

property cooldownPeriod

cooldownPeriod?: pulumi.Input<number>;

The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.

property cpuUtilization

cpuUtilization?: pulumi.Input<AutoscalarAutoscalingPolicyCpuUtilization>;

Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group. Structure is documented below.

property loadBalancingUtilization

loadBalancingUtilization?: pulumi.Input<AutoscalarAutoscalingPolicyLoadBalancingUtilization>;

Configuration parameters of autoscaling based on a load balancer. Structure is documented below.

property maxReplicas

maxReplicas: pulumi.Input<number>;

The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.

property metrics

metrics?: pulumi.Input<pulumi.Input<AutoscalarAutoscalingPolicyMetric>[]>;

Configuration parameters of autoscaling based on a custom metric. Structure is documented below.

property minReplicas

minReplicas: pulumi.Input<number>;

The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.

interface AutoscalarAutoscalingPolicyCpuUtilization

interface AutoscalarAutoscalingPolicyCpuUtilization

property target

target: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

interface AutoscalarAutoscalingPolicyLoadBalancingUtilization

interface AutoscalarAutoscalingPolicyLoadBalancingUtilization

property target

target: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

interface AutoscalarAutoscalingPolicyMetric

interface AutoscalarAutoscalingPolicyMetric

property filter

filter?: pulumi.Input<string>;

A filter string to be used as the filter string for a Stackdriver Monitoring TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data. You can only use the AND operator for joining selectors. You can only use direct equality comparison operator (=) without any functions for each selector. You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels. If the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling. If not specified, the type defaults to gce_instance. You should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gceInstance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value.

property name

name: pulumi.Input<string>;

The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values. The metric must have a value type of INT64 or DOUBLE.

property singleInstanceAssignment

singleInstanceAssignment?: pulumi.Input<number>;

If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. The autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing. For example, a good metric to use with the target is pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances. A bad example would be a metric exporting an average or median latency, since this value can’t include a chunk assignable to a single instance, it could be better used with utilizationTarget instead.

property target

target?: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

property type

type?: pulumi.Input<string>;

Defines how target utilization value is expressed for a Stackdriver Monitoring metric.

interface AutoscalerAutoscalingPolicy

interface AutoscalerAutoscalingPolicy

property cooldownPeriod

cooldownPeriod?: pulumi.Input<number>;

The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.

property cpuUtilization

cpuUtilization?: pulumi.Input<AutoscalerAutoscalingPolicyCpuUtilization>;

Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group. Structure is documented below.

property loadBalancingUtilization

loadBalancingUtilization?: pulumi.Input<AutoscalerAutoscalingPolicyLoadBalancingUtilization>;

Configuration parameters of autoscaling based on a load balancer. Structure is documented below.

property maxReplicas

maxReplicas: pulumi.Input<number>;

The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.

property metrics

metrics?: pulumi.Input<pulumi.Input<AutoscalerAutoscalingPolicyMetric>[]>;

Configuration parameters of autoscaling based on a custom metric. Structure is documented below.

property minReplicas

minReplicas: pulumi.Input<number>;

The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.

interface AutoscalerAutoscalingPolicyCpuUtilization

interface AutoscalerAutoscalingPolicyCpuUtilization

property target

target: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

interface AutoscalerAutoscalingPolicyLoadBalancingUtilization

interface AutoscalerAutoscalingPolicyLoadBalancingUtilization

property target

target: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

interface AutoscalerAutoscalingPolicyMetric

interface AutoscalerAutoscalingPolicyMetric

property filter

filter?: pulumi.Input<string>;

A filter string to be used as the filter string for a Stackdriver Monitoring TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data. You can only use the AND operator for joining selectors. You can only use direct equality comparison operator (=) without any functions for each selector. You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels. If the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling. If not specified, the type defaults to gce_instance. You should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gceInstance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value.

property name

name: pulumi.Input<string>;

The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values. The metric must have a value type of INT64 or DOUBLE.

property singleInstanceAssignment

singleInstanceAssignment?: pulumi.Input<number>;

If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. The autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing. For example, a good metric to use with the target is pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances. A bad example would be a metric exporting an average or median latency, since this value can’t include a chunk assignable to a single instance, it could be better used with utilizationTarget instead.

property target

target?: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

property type

type?: pulumi.Input<string>;

Defines how target utilization value is expressed for a Stackdriver Monitoring metric.

interface BackendBucketCdnPolicy

interface BackendBucketCdnPolicy

property signedUrlCacheMaxAgeSec

signedUrlCacheMaxAgeSec: pulumi.Input<number>;

Maximum number of seconds the response to a signed URL request will be considered fresh. After this time period, the response will be revalidated before being served. When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a “Cache-Control: public, max-age=[TTL]” header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.

interface BackendServiceBackend

interface BackendServiceBackend

property balancingMode

balancingMode?: pulumi.Input<string>;

Specifies the balancing mode for this backend. For global HTTP(S) or TCP/SSL load balancing, the default is UTILIZATION. Valid values are UTILIZATION, RATE (for HTTP(S)) and CONNECTION (for TCP/SSL).

property capacityScaler

capacityScaler?: pulumi.Input<number>;

A multiplier applied to the group’s maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). Default value is 1, which means the group will serve up to 100% of its configured capacity (depending on balancingMode). A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].

property description

description?: pulumi.Input<string>;

An optional description of this resource. Provide this property when you create the resource.

property group

group: pulumi.Input<string>;

The fully-qualified URL of an Instance Group or Network Endpoint Group resource. In case of instance group this defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource. For Network Endpoint Groups this defines list of endpoints. All endpoints of Network Endpoint Group must be hosted on instances located in the same zone as the Network Endpoint Group. Backend services cannot mix Instance Group and Network Endpoint Group backends. Note that you must specify an Instance Group or Network Endpoint Group resource using the fully-qualified URL, rather than a partial URL.

property maxConnections

maxConnections?: pulumi.Input<number>;

The maximum number of connections to the backend cluster. Defaults to 1024.

property maxConnectionsPerEndpoint

maxConnectionsPerEndpoint?: pulumi.Input<number>;

The max number of simultaneous connections that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerEndpoint must be set.

property maxConnectionsPerInstance

maxConnectionsPerInstance?: pulumi.Input<number>;

The max number of simultaneous connections that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.

property maxRate

maxRate?: pulumi.Input<number>;

The max requests per second (RPS) of the group. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. For RATE mode, either maxRate or one of maxRatePerInstance or maxRatePerEndpoint, as appropriate for group type, must be set.

property maxRatePerEndpoint

maxRatePerEndpoint?: pulumi.Input<number>;

The max requests per second (RPS) that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerEndpoint must be set.

property maxRatePerInstance

maxRatePerInstance?: pulumi.Input<number>;

The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set.

property maxUtilization

maxUtilization?: pulumi.Input<number>;

Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. The default is 0.8. Valid range is [0.0, 1.0].

interface BackendServiceCdnPolicy

interface BackendServiceCdnPolicy

property cacheKeyPolicy

cacheKeyPolicy?: pulumi.Input<BackendServiceCdnPolicyCacheKeyPolicy>;

The CacheKeyPolicy for this CdnPolicy. Structure is documented below.

property signedUrlCacheMaxAgeSec

signedUrlCacheMaxAgeSec?: pulumi.Input<number>;

Maximum number of seconds the response to a signed URL request will be considered fresh, defaults to 1hr (3600s). After this time period, the response will be revalidated before being served. When serving responses to signed URL requests, Cloud CDN will internally behave as though all responses from this backend had a “Cache-Control: public, max-age=[TTL]” header, regardless of any existing Cache-Control header. The actual headers served in responses will not be altered.

interface BackendServiceCdnPolicyCacheKeyPolicy

interface BackendServiceCdnPolicyCacheKeyPolicy

property includeHost

includeHost?: pulumi.Input<boolean>;

If true requests to different hosts will be cached separately.

property includeProtocol

includeProtocol?: pulumi.Input<boolean>;

If true, http and https requests will be cached separately.

property includeQueryString

includeQueryString?: pulumi.Input<boolean>;

If true, include query string parameters in the cache key according to queryStringWhitelist and query_string_blacklist. If neither is set, the entire query string will be included. If false, the query string will be excluded from the cache key entirely.

property queryStringBlacklists

queryStringBlacklists?: pulumi.Input<pulumi.Input<string>[]>;

Names of query string parameters to exclude in cache keys. All other parameters will be included. Either specify queryStringWhitelist or query_string_blacklist, not both. ‘&’ and ‘=’ will be percent encoded and not treated as delimiters.

property queryStringWhitelists

queryStringWhitelists?: pulumi.Input<pulumi.Input<string>[]>;

Names of query string parameters to include in cache keys. All other parameters will be excluded. Either specify queryStringWhitelist or query_string_blacklist, not both. ‘&’ and ‘=’ will be percent encoded and not treated as delimiters.

interface BackendServiceCircuitBreakers

interface BackendServiceCircuitBreakers

property connectTimeout

connectTimeout?: pulumi.Input<BackendServiceCircuitBreakersConnectTimeout>;

The timeout for new network connections to hosts. Structure is documented below.

property maxConnections

maxConnections?: pulumi.Input<number>;

The maximum number of connections to the backend cluster. Defaults to 1024.

property maxPendingRequests

maxPendingRequests?: pulumi.Input<number>;

The maximum number of pending requests to the backend cluster. Defaults to 1024.

property maxRequests

maxRequests?: pulumi.Input<number>;

The maximum number of parallel requests to the backend cluster. Defaults to 1024.

property maxRequestsPerConnection

maxRequestsPerConnection?: pulumi.Input<number>;

Maximum requests for a single backend connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.

property maxRetries

maxRetries?: pulumi.Input<number>;

The maximum number of parallel retries to the backend cluster. Defaults to 3.

interface BackendServiceCircuitBreakersConnectTimeout

interface BackendServiceCircuitBreakersConnectTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface BackendServiceConsistentHash

interface BackendServiceConsistentHash

property httpCookie

httpCookie?: pulumi.Input<BackendServiceConsistentHashHttpCookie>;

Hash is based on HTTP Cookie. This field describes a HTTP cookie that will be used as the hash key for the consistent hash load balancer. If the cookie is not present, it will be generated. This field is applicable if the sessionAffinity is set to HTTP_COOKIE. Structure is documented below.

property httpHeaderName

httpHeaderName?: pulumi.Input<string>;

The hash based on the value of the specified header field. This field is applicable if the sessionAffinity is set to HEADER_FIELD.

property minimumRingSize

minimumRingSize?: pulumi.Input<number>;

The minimum number of virtual nodes to use for the hash ring. Larger ring sizes result in more granular load distributions. If the number of hosts in the load balancing pool is larger than the ring size, each host will be assigned a single virtual node. Defaults to 1024.

interface BackendServiceConsistentHashHttpCookie

interface BackendServiceConsistentHashHttpCookie

property name

name?: pulumi.Input<string>;

Name of the cookie.

property path

path?: pulumi.Input<string>;

Path to set for the cookie.

property ttl

ttl?: pulumi.Input<BackendServiceConsistentHashHttpCookieTtl>;

Lifetime of the cookie. Structure is documented below.

interface BackendServiceConsistentHashHttpCookieTtl

interface BackendServiceConsistentHashHttpCookieTtl

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface BackendServiceIap

interface BackendServiceIap

property oauth2ClientId

oauth2ClientId: pulumi.Input<string>;

OAuth2 Client ID for IAP

property oauth2ClientSecret

oauth2ClientSecret: pulumi.Input<string>;

OAuth2 Client Secret for IAP Note: This property is sensitive and will not be displayed in the plan.

property oauth2ClientSecretSha256

oauth2ClientSecretSha256?: pulumi.Input<string>;

- OAuth2 Client Secret SHA-256 for IAP Note: This property is sensitive and will not be displayed in the plan.

interface BackendServiceLogConfig

interface BackendServiceLogConfig

property enable

enable?: pulumi.Input<boolean>;

Whether to enable logging for the load balancer traffic served by this backend service.

property sampleRate

sampleRate?: pulumi.Input<number>;

This field can only be specified if logging is enabled for this backend service. The value of the field must be in [0, 1]. This configures the sampling rate of requests to the load balancer where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported. The default value is 1.0.

interface BackendServiceOutlierDetection

interface BackendServiceOutlierDetection

property baseEjectionTime

baseEjectionTime?: pulumi.Input<BackendServiceOutlierDetectionBaseEjectionTime>;

The base time that a host is ejected for. The real time is equal to the base time multiplied by the number of times the host has been ejected. Defaults to 30000ms or 30s. Structure is documented below.

property consecutiveErrors

consecutiveErrors?: pulumi.Input<number>;

Number of errors before a host is ejected from the connection pool. When the backend host is accessed over HTTP, a 5xx return code qualifies as an error. Defaults to 5.

property consecutiveGatewayFailure

consecutiveGatewayFailure?: pulumi.Input<number>;

The number of consecutive gateway failures (502, 503, 504 status or connection errors that are mapped to one of those status codes) before a consecutive gateway failure ejection occurs. Defaults to 5.

property enforcingConsecutiveErrors

enforcingConsecutiveErrors?: pulumi.Input<number>;

The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.

property enforcingConsecutiveGatewayFailure

enforcingConsecutiveGatewayFailure?: pulumi.Input<number>;

The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive gateway failures. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 0.

property enforcingSuccessRate

enforcingSuccessRate?: pulumi.Input<number>;

The percentage chance that a host will be actually ejected when an outlier status is detected through success rate statistics. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.

property interval

interval?: pulumi.Input<BackendServiceOutlierDetectionInterval>;

Time interval between ejection sweep analysis. This can result in both new ejections as well as hosts being returned to service. Defaults to 10 seconds. Structure is documented below.

property maxEjectionPercent

maxEjectionPercent?: pulumi.Input<number>;

Maximum percentage of hosts in the load balancing pool for the backend service that can be ejected. Defaults to 10%.

property successRateMinimumHosts

successRateMinimumHosts?: pulumi.Input<number>;

The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. Defaults to 5.

property successRateRequestVolume

successRateRequestVolume?: pulumi.Input<number>;

The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. Defaults to 100.

property successRateStdevFactor

successRateStdevFactor?: pulumi.Input<number>;

This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided by a thousand to get a double. That is, if the desired factor is 1.9, the runtime value should be 1900. Defaults to 1900.

interface BackendServiceOutlierDetectionBaseEjectionTime

interface BackendServiceOutlierDetectionBaseEjectionTime

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface BackendServiceOutlierDetectionInterval

interface BackendServiceOutlierDetectionInterval

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface DiskDiskEncryptionKey

interface DiskDiskEncryptionKey
kmsKeySelfLink?: pulumi.Input<string>;

The self link of the encryption key used to encrypt the disk. Also called KmsKeyName in the cloud console. Your project’s Compute Engine System service account (service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com) must have roles/cloudkms.cryptoKeyEncrypterDecrypter to use this feature. See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys

property rawKey

rawKey?: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.

property sha256

sha256?: pulumi.Input<string>;

- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.

interface DiskSourceImageEncryptionKey

interface DiskSourceImageEncryptionKey
kmsKeySelfLink?: pulumi.Input<string>;

The self link of the encryption key used to encrypt the disk. Also called KmsKeyName in the cloud console. Your project’s Compute Engine System service account (service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com) must have roles/cloudkms.cryptoKeyEncrypterDecrypter to use this feature. See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys

property rawKey

rawKey?: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.

property sha256

sha256?: pulumi.Input<string>;

- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.

interface DiskSourceSnapshotEncryptionKey

interface DiskSourceSnapshotEncryptionKey
kmsKeySelfLink?: pulumi.Input<string>;

The self link of the encryption key used to encrypt the disk. Also called KmsKeyName in the cloud console. Your project’s Compute Engine System service account (service-{{PROJECT_NUMBER}}@compute-system.iam.gserviceaccount.com) must have roles/cloudkms.cryptoKeyEncrypterDecrypter to use this feature. See https://cloud.google.com/compute/docs/disks/customer-managed-encryption#encrypt_a_new_persistent_disk_with_your_own_keys

property rawKey

rawKey?: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.

property sha256

sha256?: pulumi.Input<string>;

- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.

interface ExternalVpnGatewayInterface

interface ExternalVpnGatewayInterface

property id

id?: pulumi.Input<number>;

The numberic ID for this interface. Allowed values are based on the redundancy type of this external VPN gateway * 0 - SINGLE_IP_INTERNALLY_REDUNDANT * 0, 1 - TWO_IPS_REDUNDANCY * 0, 1, 2, 3 - FOUR_IPS_REDUNDANCY

property ipAddress

ipAddress?: pulumi.Input<string>;

IP address of the interface in the external VPN gateway. Only IPv4 is supported. This IP address can be either from your on-premise gateway or another Cloud provider’s VPN gateway, it cannot be an IP address from Google Compute Engine.

interface FirewallAllow

interface FirewallAllow

property ports

ports?: pulumi.Input<pulumi.Input<string>[]>;

An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [“22”], [“80”,“443”], and [“12345-12349”].

property protocol

protocol: pulumi.Input<string>;

The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp, ipip), or the IP protocol number.

interface FirewallDeny

interface FirewallDeny

property ports

ports?: pulumi.Input<pulumi.Input<string>[]>;

An optional list of ports to which this rule applies. This field is only applicable for UDP or TCP protocol. Each entry must be either an integer or a range. If not specified, this rule applies to connections through any port. Example inputs include: [“22”], [“80”,“443”], and [“12345-12349”].

property protocol

protocol: pulumi.Input<string>;

The IP protocol to which this rule applies. The protocol type is required when creating a firewall rule. This value can either be one of the following well known protocol strings (tcp, udp, icmp, esp, ah, sctp, ipip), or the IP protocol number.

interface GlobalForwardingRuleMetadataFilter

interface GlobalForwardingRuleMetadataFilter

property filterLabels

filterLabels: pulumi.Input<pulumi.Input<GlobalForwardingRuleMetadataFilterFilterLabel>[]>;

The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries. Structure is documented below.

property filterMatchCriteria

filterMatchCriteria: pulumi.Input<string>;

Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. MATCH_ANY - At least one of the filterLabels must have a matching label in the provided metadata. MATCH_ALL - All filterLabels must have matching labels in the provided metadata.

interface GlobalForwardingRuleMetadataFilterFilterLabel

interface GlobalForwardingRuleMetadataFilterFilterLabel

property name

name: pulumi.Input<string>;

Name of the metadata label. The length must be between 1 and 1024 characters, inclusive.

property value

value: pulumi.Input<string>;

The value that the label must match. The value has a maximum length of 1024 characters.

interface HaVpnGatewayVpnInterface

interface HaVpnGatewayVpnInterface

property id

id?: pulumi.Input<number>;

an identifier for the resource with format projects/{{project}}/regions/{{region}}/vpnGateways/{{name}}

property ipAddress

ipAddress?: pulumi.Input<string>;

interface HealthCheckHttp2HealthCheck

interface HealthCheckHttp2HealthCheck

property host

host?: pulumi.Input<string>;

The value of the host header in the HTTP2 health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property requestPath

requestPath?: pulumi.Input<string>;

The request path of the HTTP2 health check request. The default value is /.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface HealthCheckHttpHealthCheck

interface HealthCheckHttpHealthCheck

property host

host?: pulumi.Input<string>;

The value of the host header in the HTTP2 health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property requestPath

requestPath?: pulumi.Input<string>;

The request path of the HTTP2 health check request. The default value is /.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface HealthCheckHttpsHealthCheck

interface HealthCheckHttpsHealthCheck

property host

host?: pulumi.Input<string>;

The value of the host header in the HTTP2 health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property requestPath

requestPath?: pulumi.Input<string>;

The request path of the HTTP2 health check request. The default value is /.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface HealthCheckLogConfig

interface HealthCheckLogConfig

property enable

enable?: pulumi.Input<boolean>;

Indicates whether or not to export logs. This is false by default, which means no health check logging will be done.

interface HealthCheckSslHealthCheck

interface HealthCheckSslHealthCheck

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property request

request?: pulumi.Input<string>;

The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface HealthCheckTcpHealthCheck

interface HealthCheckTcpHealthCheck

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property request

request?: pulumi.Input<string>;

The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface ImageGuestOsFeature

interface ImageGuestOsFeature

property type

type: pulumi.Input<string>;

The type of supported feature. Read Enabling guest operating system features to see a list of available options.

interface ImageRawDisk

interface ImageRawDisk

property containerType

containerType?: pulumi.Input<string>;

The format used to encode and transmit the block device, which should be TAR. This is just a container and transmission format and not a runtime format. Provided by the client when the disk image is created.

property sha1

sha1?: pulumi.Input<string>;

An optional SHA1 checksum of the disk image before unpackaging. This is provided by the client when the disk image is created.

property source

source: pulumi.Input<string>;

The full Google Cloud Storage URL where disk storage is stored You must provide either this property or the sourceDisk property but not both.

interface InstanceAttachedDisk

interface InstanceAttachedDisk

property deviceName

deviceName?: pulumi.Input<string>;

Name with which the attached disk will be accessible under /dev/disk/by-id/google-*

property diskEncryptionKeyRaw

diskEncryptionKeyRaw?: pulumi.Input<string>;

A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kmsKeySelfLink and diskEncryptionKeyRaw may be set.

property diskEncryptionKeySha256

diskEncryptionKeySha256?: pulumi.Input<string>;
kmsKeySelfLink?: pulumi.Input<string>;

The selfLink of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kmsKeySelfLink and diskEncryptionKeyRaw may be set.

property mode

mode?: pulumi.Input<string>;

Either “READ_ONLY” or “READ_WRITE”, defaults to “READ_WRITE” If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.

property source

source: pulumi.Input<string>;

The name or selfLink of the disk to attach to this instance.

interface InstanceBootDisk

interface InstanceBootDisk

property autoDelete

autoDelete?: pulumi.Input<boolean>;

Whether the disk will be auto-deleted when the instance is deleted. Defaults to true.

property deviceName

deviceName?: pulumi.Input<string>;

Name with which the attached disk will be accessible under /dev/disk/by-id/google-*

property diskEncryptionKeyRaw

diskEncryptionKeyRaw?: pulumi.Input<string>;

A 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to encrypt this disk. Only one of kmsKeySelfLink and diskEncryptionKeyRaw may be set.

property diskEncryptionKeySha256

diskEncryptionKeySha256?: pulumi.Input<string>;

property initializeParams

initializeParams?: pulumi.Input<InstanceBootDiskInitializeParams>;

Parameters for a new disk that will be created alongside the new instance. Either initializeParams or source must be set. Structure is documented below.

kmsKeySelfLink?: pulumi.Input<string>;

The selfLink of the encryption key that is stored in Google Cloud KMS to encrypt this disk. Only one of kmsKeySelfLink and diskEncryptionKeyRaw may be set.

property mode

mode?: pulumi.Input<string>;

Either “READ_ONLY” or “READ_WRITE”, defaults to “READ_WRITE” If you have a persistent disk with data that you want to share between multiple instances, detach it from any read-write instances and attach it to one or more instances in read-only mode.

property source

source?: pulumi.Input<string>;

The name or selfLink of the disk to attach to this instance.

interface InstanceBootDiskInitializeParams

interface InstanceBootDiskInitializeParams

property image

image?: pulumi.Input<string>;

The image from which to initialize this disk. This can be one of: the image’s selfLink, projects/{project}/global/images/{image}, projects/{project}/global/images/family/{family}, global/images/{image}, global/images/family/{family}, family/{family}, {project}/{family}, {project}/{image}, {family}, or {image}. If referred by family, the images names must include the family name. If they don’t, use the gcp.compute.Image data source. For instance, the image centos-6-v20180104 includes its family name centos-6. These images can be referred by family name here.

property labels

labels?: pulumi.Input<{[key: string]: any}>;

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

property size

size?: pulumi.Input<number>;

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

property type

type?: pulumi.Input<string>;

The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.

interface InstanceFromTemplateAttachedDisk

interface InstanceFromTemplateAttachedDisk

property deviceName

deviceName?: pulumi.Input<string>;

property diskEncryptionKeyRaw

diskEncryptionKeyRaw?: pulumi.Input<string>;

property diskEncryptionKeySha256

diskEncryptionKeySha256?: pulumi.Input<string>;
kmsKeySelfLink?: pulumi.Input<string>;

property mode

mode?: pulumi.Input<string>;

property source

source: pulumi.Input<string>;

interface InstanceFromTemplateBootDisk

interface InstanceFromTemplateBootDisk

property autoDelete

autoDelete?: pulumi.Input<boolean>;

property deviceName

deviceName?: pulumi.Input<string>;

property diskEncryptionKeyRaw

diskEncryptionKeyRaw?: pulumi.Input<string>;

property diskEncryptionKeySha256

diskEncryptionKeySha256?: pulumi.Input<string>;

property initializeParams

initializeParams?: pulumi.Input<InstanceFromTemplateBootDiskInitializeParams>;
kmsKeySelfLink?: pulumi.Input<string>;

property mode

mode?: pulumi.Input<string>;

property source

source?: pulumi.Input<string>;

interface InstanceFromTemplateBootDiskInitializeParams

interface InstanceFromTemplateBootDiskInitializeParams

property image

image?: pulumi.Input<string>;

property labels

labels?: pulumi.Input<{[key: string]: any}>;

property size

size?: pulumi.Input<number>;

property type

type?: pulumi.Input<string>;

interface InstanceFromTemplateGuestAccelerator

interface InstanceFromTemplateGuestAccelerator

property count

count: pulumi.Input<number>;

property type

type: pulumi.Input<string>;

interface InstanceFromTemplateNetworkInterface

interface InstanceFromTemplateNetworkInterface

property accessConfigs

accessConfigs?: pulumi.Input<pulumi.Input<InstanceFromTemplateNetworkInterfaceAccessConfig>[]>;

property aliasIpRanges

aliasIpRanges?: pulumi.Input<pulumi.Input<InstanceFromTemplateNetworkInterfaceAliasIpRange>[]>;

property name

name?: pulumi.Input<string>;

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

property network

network?: pulumi.Input<string>;

property networkIp

networkIp?: pulumi.Input<string>;

property subnetwork

subnetwork?: pulumi.Input<string>;

property subnetworkProject

subnetworkProject?: pulumi.Input<string>;

interface InstanceFromTemplateNetworkInterfaceAccessConfig

interface InstanceFromTemplateNetworkInterfaceAccessConfig

property natIp

natIp?: pulumi.Input<string>;

property networkTier

networkTier?: pulumi.Input<string>;

property publicPtrDomainName

publicPtrDomainName?: pulumi.Input<string>;

interface InstanceFromTemplateNetworkInterfaceAliasIpRange

interface InstanceFromTemplateNetworkInterfaceAliasIpRange

property ipCidrRange

ipCidrRange: pulumi.Input<string>;

property subnetworkRangeName

subnetworkRangeName?: pulumi.Input<string>;

interface InstanceFromTemplateScheduling

interface InstanceFromTemplateScheduling

property automaticRestart

automaticRestart?: pulumi.Input<boolean>;

property nodeAffinities

nodeAffinities?: pulumi.Input<pulumi.Input<InstanceFromTemplateSchedulingNodeAffinity>[]>;

property onHostMaintenance

onHostMaintenance?: pulumi.Input<string>;

property preemptible

preemptible?: pulumi.Input<boolean>;

interface InstanceFromTemplateSchedulingNodeAffinity

interface InstanceFromTemplateSchedulingNodeAffinity

property key

key: pulumi.Input<string>;

property operator

operator: pulumi.Input<string>;

property values

values: pulumi.Input<pulumi.Input<string>[]>;

interface InstanceFromTemplateScratchDisk

interface InstanceFromTemplateScratchDisk

property interface

interface: pulumi.Input<string>;

interface InstanceFromTemplateServiceAccount

interface InstanceFromTemplateServiceAccount

property email

email?: pulumi.Input<string>;

property scopes

scopes: pulumi.Input<pulumi.Input<string>[]>;

interface InstanceFromTemplateShieldedInstanceConfig

interface InstanceFromTemplateShieldedInstanceConfig

property enableIntegrityMonitoring

enableIntegrityMonitoring?: pulumi.Input<boolean>;

property enableSecureBoot

enableSecureBoot?: pulumi.Input<boolean>;

property enableVtpm

enableVtpm?: pulumi.Input<boolean>;

interface InstanceGroupManagerAutoHealingPolicies

interface InstanceGroupManagerAutoHealingPolicies

property healthCheck

healthCheck: pulumi.Input<string>;

The health check resource that signals autohealing.

property initialDelaySec

initialDelaySec: pulumi.Input<number>;

The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. Between 0 and 3600.

interface InstanceGroupManagerNamedPort

interface InstanceGroupManagerNamedPort

property name

name: pulumi.Input<string>;
  • Version name.

property port

port: pulumi.Input<number>;

The port number.


interface InstanceGroupManagerStatefulDisk

interface InstanceGroupManagerStatefulDisk

property deleteRule

deleteRule?: pulumi.Input<string>;

, A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER detatch the disk when the VM is deleted, but not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group. The default is NEVER.

property deviceName

deviceName: pulumi.Input<string>;

, The device name of the disk to be attached.

interface InstanceGroupManagerUpdatePolicy

interface InstanceGroupManagerUpdatePolicy

property maxSurgeFixed

maxSurgeFixed?: pulumi.Input<number>;

, The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with maxSurgePercent. If neither is set, defaults to 1

property maxSurgePercent

maxSurgePercent?: pulumi.Input<number>;

, The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with maxSurgeFixed.

property maxUnavailableFixed

maxUnavailableFixed?: pulumi.Input<number>;

, The maximum number of instances that can be unavailable during the update process. Conflicts with maxUnavailablePercent. If neither is set, defaults to 1

property maxUnavailablePercent

maxUnavailablePercent?: pulumi.Input<number>;

, The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with maxUnavailableFixed.

property minReadySec

minReadySec?: pulumi.Input<number>;

, Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600]


property minimalAction

minimalAction: pulumi.Input<string>;
  • Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a RESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.

property type

type: pulumi.Input<string>;
  • The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).

interface InstanceGroupManagerVersion

interface InstanceGroupManagerVersion

property instanceTemplate

instanceTemplate: pulumi.Input<string>;
  • The full URL to an instance template from which all new instances of this version will be created.

property name

name?: pulumi.Input<string>;
  • Version name.

property targetSize

targetSize?: pulumi.Input<InstanceGroupManagerVersionTargetSize>;
  • The number of instances calculated as a fixed number or a percentage depending on the settings. Structure is documented below.

interface InstanceGroupManagerVersionTargetSize

interface InstanceGroupManagerVersionTargetSize

property fixed

fixed?: pulumi.Input<number>;

, The number of instances which are managed for this version. Conflicts with percent.

property percent

percent?: pulumi.Input<number>;

, The number of instances (calculated as percentage) which are managed for this version. Conflicts with fixed. Note that when using percent, rounding will be in favor of explicitly set targetSize values; a managed instance group with 2 instances and 2 versions, one of which has a target_size.percent of 60 will create 2 instances of that version.

interface InstanceGroupNamedPort

interface InstanceGroupNamedPort

property name

name: pulumi.Input<string>;

The name which the port will be mapped to.

property port

port: pulumi.Input<number>;

The port number to map the name to.

interface InstanceGuestAccelerator

interface InstanceGuestAccelerator

property count

count: pulumi.Input<number>;

The number of the guest accelerator cards exposed to this instance.

property type

type: pulumi.Input<string>;

The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.

interface InstanceIAMBindingCondition

interface InstanceIAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface InstanceIAMMemberCondition

interface InstanceIAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface InstanceNetworkInterface

interface InstanceNetworkInterface

property accessConfigs

accessConfigs?: pulumi.Input<pulumi.Input<InstanceNetworkInterfaceAccessConfig>[]>;

Access configurations, i.e. IPs via which this instance can be accessed via the Internet. Omit to ensure that the instance is not accessible from the Internet. If omitted, ssh will not work unless this provider can send traffic to the instance’s network (e.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below.

property aliasIpRanges

aliasIpRanges?: pulumi.Input<pulumi.Input<InstanceNetworkInterfaceAliasIpRange>[]>;

An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.

property name

name?: pulumi.Input<string>;

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

property network

network?: pulumi.Input<string>;

The name or selfLink of the network to attach this interface to. Either network or subnetwork must be provided.

property networkIp

networkIp?: pulumi.Input<string>;

The private IP address to assign to the instance. If empty, the address will be automatically assigned.

property subnetwork

subnetwork?: pulumi.Input<string>;

The name or selfLink of the subnetwork to attach this interface to. The subnetwork must exist in the same region this instance will be created in. Either network or subnetwork must be provided.

property subnetworkProject

subnetworkProject?: pulumi.Input<string>;

The project in which the subnetwork belongs. If the subnetwork is a self_link, this field is ignored in favor of the project defined in the subnetwork self_link. If the subnetwork is a name and this field is not provided, the provider project is used.

interface InstanceNetworkInterfaceAccessConfig

interface InstanceNetworkInterfaceAccessConfig

property natIp

natIp?: pulumi.Input<string>;

The IP address that will be 1:1 mapped to the instance’s network ip. If not given, one will be generated.

property networkTier

networkTier?: pulumi.Input<string>;

The [networking tier][network-tier] used for configuring this instance. This field can take the following values: PREMIUM or STANDARD. If this field is not specified, it is assumed to be PREMIUM.

property publicPtrDomainName

publicPtrDomainName?: pulumi.Input<string>;

The DNS domain name for the public PTR record. To set this field on an instance, you must be verified as the owner of the domain. See the docs for how to become verified as a domain owner.

interface InstanceNetworkInterfaceAliasIpRange

interface InstanceNetworkInterfaceAliasIpRange

property ipCidrRange

ipCidrRange: pulumi.Input<string>;

The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. This range may be a single IP address (e.g. 10.2.3.4), a netmask (e.g. /24) or a CIDR format string (e.g. 10.1.2.0/24).

property subnetworkRangeName

subnetworkRangeName?: pulumi.Input<string>;

The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.

interface InstanceScheduling

interface InstanceScheduling

property automaticRestart

automaticRestart?: pulumi.Input<boolean>;

Specifies if the instance should be restarted if it was terminated by Compute Engine (not a user). Defaults to true.

property nodeAffinities

nodeAffinities?: pulumi.Input<pulumi.Input<InstanceSchedulingNodeAffinity>[]>;

Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.

property onHostMaintenance

onHostMaintenance?: pulumi.Input<string>;

Describes maintenance behavior for the instance. Can be MIGRATE or TERMINATE, for more info, read here.

property preemptible

preemptible?: pulumi.Input<boolean>;

Specifies if the instance is preemptible. If this field is set to true, then automaticRestart must be set to false. Defaults to false.

interface InstanceSchedulingNodeAffinity

interface InstanceSchedulingNodeAffinity

property key

key: pulumi.Input<string>;

The key for the node affinity label.

property operator

operator: pulumi.Input<string>;

The operator. Can be IN for node-affinities or NOT_IN for anti-affinities.

property values

values: pulumi.Input<pulumi.Input<string>[]>;

interface InstanceScratchDisk

interface InstanceScratchDisk

property interface

interface: pulumi.Input<string>;

The disk interface to use for attaching this disk; either SCSI or NVME.

interface InstanceServiceAccount

interface InstanceServiceAccount

property email

email?: pulumi.Input<string>;

The service account e-mail address. If not given, the default Google Compute Engine service account is used. Note: allowStoppingForUpdate must be set to true or your instance must have a desiredStatus of TERMINATED in order to update this field.

property scopes

scopes: pulumi.Input<pulumi.Input<string>[]>;

A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope. See a complete list of scopes here. Note: allowStoppingForUpdate must be set to true or your instance must have a desiredStatus of TERMINATED in order to update this field.

interface InstanceShieldedInstanceConfig

interface InstanceShieldedInstanceConfig

property enableIntegrityMonitoring

enableIntegrityMonitoring?: pulumi.Input<boolean>;

– Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.

property enableSecureBoot

enableSecureBoot?: pulumi.Input<boolean>;

– Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.

property enableVtpm

enableVtpm?: pulumi.Input<boolean>;

– Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.

interface InstanceTemplateDisk

interface InstanceTemplateDisk

property autoDelete

autoDelete?: pulumi.Input<boolean>;

Whether or not the disk should be auto-deleted. This defaults to true.

property boot

boot?: pulumi.Input<boolean>;

Indicates that this is a boot disk.

property deviceName

deviceName?: pulumi.Input<string>;

A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance. If not specified, the server chooses a default device name to apply to this disk.

property diskEncryptionKey

diskEncryptionKey?: pulumi.Input<InstanceTemplateDiskDiskEncryptionKey>;

Encrypts or decrypts a disk using a customer-supplied encryption key.

property diskName

diskName?: pulumi.Input<string>;

Name of the disk. When not provided, this defaults to the name of the instance.

property diskSizeGb

diskSizeGb?: pulumi.Input<number>;

The size of the image in gigabytes. If not specified, it will inherit the size of its base image. For SCRATCH disks, the size must be exactly 375GB.

property diskType

diskType?: pulumi.Input<string>;

The GCE disk type. Can be either "pd-ssd", "local-ssd", or "pd-standard".

property interface

interface?: pulumi.Input<string>;

Specifies the disk interface to use for attaching this disk.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

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

property mode

mode?: pulumi.Input<string>;

The mode in which to attach this disk, either READ_WRITE or READ_ONLY. If you are attaching or creating a boot disk, this must read-write mode.

property source

source?: pulumi.Input<string>;

The name (not self_link) of the disk (such as those managed by gcp.compute.Disk) to attach. > Note: Either source or sourceImage is required when creating a new instance except for when creating a local SSD. Check the API docs for details.

property sourceImage

sourceImage?: pulumi.Input<string>;

The image from which to initialize this disk. This can be one of: the image’s selfLink, projects/{project}/global/images/{image}, projects/{project}/global/images/family/{family}, global/images/{image}, global/images/family/{family}, family/{family}, {project}/{family}, {project}/{image}, {family}, or {image}. > Note: Either source or sourceImage is required when creating a new instance except for when creating a local SSD. Check the API docs for details.

property type

type?: pulumi.Input<string>;

The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.

interface InstanceTemplateDiskDiskEncryptionKey

interface InstanceTemplateDiskDiskEncryptionKey
kmsKeySelfLink: pulumi.Input<string>;

The self link of the encryption key that is stored in Google Cloud KMS

interface InstanceTemplateGuestAccelerator

interface InstanceTemplateGuestAccelerator

property count

count: pulumi.Input<number>;

The number of the guest accelerator cards exposed to this instance.

property type

type: pulumi.Input<string>;

The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.

interface InstanceTemplateNetworkInterface

interface InstanceTemplateNetworkInterface

property accessConfigs

accessConfigs?: pulumi.Input<pulumi.Input<InstanceTemplateNetworkInterfaceAccessConfig>[]>;

Access configurations, i.e. IPs via which this instance can be accessed via the Internet. Omit to ensure that the instance is not accessible from the Internet (this means that ssh provisioners will not work unless you can send traffic to the instance’s network (e.g. via tunnel or because it is running on another cloud instance on that network). This block can be repeated multiple times. Structure documented below.

property aliasIpRanges

aliasIpRanges?: pulumi.Input<pulumi.Input<InstanceTemplateNetworkInterfaceAliasIpRange>[]>;

An array of alias IP ranges for this network interface. Can only be specified for network interfaces on subnet-mode networks. Structure documented below.

property name

name?: pulumi.Input<string>;

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

property network

network?: pulumi.Input<string>;

The name or selfLink of the network to attach this interface to. Use network attribute for Legacy or Auto subnetted networks and subnetwork for custom subnetted networks.

property networkIp

networkIp?: pulumi.Input<string>;

The private IP address to assign to the instance. If empty, the address will be automatically assigned.

property subnetwork

subnetwork?: pulumi.Input<string>;

the name of the subnetwork to attach this interface to. The subnetwork must exist in the same region this instance will be created in. Either network or subnetwork must be provided.

property subnetworkProject

subnetworkProject?: pulumi.Input<string>;

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

interface InstanceTemplateNetworkInterfaceAccessConfig

interface InstanceTemplateNetworkInterfaceAccessConfig

property natIp

natIp?: pulumi.Input<string>;

The IP address that will be 1:1 mapped to the instance’s network ip. If not given, one will be generated.

property networkTier

networkTier?: pulumi.Input<string>;

The [networking tier][network-tier] used for configuring this instance template. This field can take the following values: PREMIUM or STANDARD. If this field is not specified, it is assumed to be PREMIUM.

property publicPtrDomainName

publicPtrDomainName?: pulumi.Input<string>;

interface InstanceTemplateNetworkInterfaceAliasIpRange

interface InstanceTemplateNetworkInterfaceAliasIpRange

property ipCidrRange

ipCidrRange: pulumi.Input<string>;

The IP CIDR range represented by this alias IP range. This IP CIDR range must belong to the specified subnetwork and cannot contain IP addresses reserved by system or used by other network interfaces. At the time of writing only a netmask (e.g. /24) may be supplied, with a CIDR format resulting in an API error.

property subnetworkRangeName

subnetworkRangeName?: pulumi.Input<string>;

The subnetwork secondary range name specifying the secondary range from which to allocate the IP CIDR range for this alias IP range. If left unspecified, the primary range of the subnetwork will be used.

interface InstanceTemplateScheduling

interface InstanceTemplateScheduling

property automaticRestart

automaticRestart?: pulumi.Input<boolean>;

Specifies whether the instance should be automatically restarted if it is terminated by Compute Engine (not terminated by a user). This defaults to true.

property nodeAffinities

nodeAffinities?: pulumi.Input<pulumi.Input<InstanceTemplateSchedulingNodeAffinity>[]>;

Specifies node affinities or anti-affinities to determine which sole-tenant nodes your instances and managed instance groups will use as host systems. Read more on sole-tenant node creation here. Structure documented below.

property onHostMaintenance

onHostMaintenance?: pulumi.Input<string>;

Defines the maintenance behavior for this instance.

property preemptible

preemptible?: pulumi.Input<boolean>;

Allows instance to be preempted. This defaults to false. Read more on this here.

interface InstanceTemplateSchedulingNodeAffinity

interface InstanceTemplateSchedulingNodeAffinity

property key

key: pulumi.Input<string>;

The key for the node affinity label.

property operator

operator: pulumi.Input<string>;

The operator. Can be IN for node-affinities or NOT_IN for anti-affinities.

property values

values: pulumi.Input<pulumi.Input<string>[]>;

interface InstanceTemplateServiceAccount

interface InstanceTemplateServiceAccount

property email

email?: pulumi.Input<string>;

The service account e-mail address. If not given, the default Google Compute Engine service account is used.

property scopes

scopes: pulumi.Input<pulumi.Input<string>[]>;

A list of service scopes. Both OAuth2 URLs and gcloud short names are supported. To allow full access to all Cloud APIs, use the cloud-platform scope. See a complete list of scopes here.

interface InstanceTemplateShieldedInstanceConfig

interface InstanceTemplateShieldedInstanceConfig

property enableIntegrityMonitoring

enableIntegrityMonitoring?: pulumi.Input<boolean>;

– Compare the most recent boot measurements to the integrity policy baseline and return a pair of pass/fail results depending on whether they match or not. Defaults to true.

property enableSecureBoot

enableSecureBoot?: pulumi.Input<boolean>;

– Verify the digital signature of all boot components, and halt the boot process if signature verification fails. Defaults to false.

property enableVtpm

enableVtpm?: pulumi.Input<boolean>;

– Use a virtualized trusted platform module, which is a specialized computer chip you can use to encrypt objects like keys and certificates. Defaults to true.

interface InterconnectAttachmentPrivateInterconnectInfo

interface InterconnectAttachmentPrivateInterconnectInfo

property tag8021q

tag8021q?: pulumi.Input<number>;

interface ManagedSslCertificateManaged

interface ManagedSslCertificateManaged

property domains

domains: pulumi.Input<pulumi.Input<string>[]>;

Domains for which a managed SSL certificate will be valid. Currently, there can be up to 100 domains in this list.

interface MangedSslCertificateManaged

interface MangedSslCertificateManaged

property domains

domains: pulumi.Input<pulumi.Input<string>[]>;

interface NodeGroupAutoscalingPolicy

interface NodeGroupAutoscalingPolicy

property maxNodes

maxNodes?: pulumi.Input<number>;

Maximum size of the node group. Set to a value less than or equal to 100 and greater than or equal to min-nodes.

property minNodes

minNodes?: pulumi.Input<number>;

Minimum size of the node group. Must be less than or equal to max-nodes. The default value is 0.

property mode

mode?: pulumi.Input<string>;

The autoscaling mode. Set to one of the following: - OFF: Disables the autoscaler. - ON: Enables scaling in and scaling out. - ONLY_SCALE_OUT: Enables only scaling out. You must use this mode if your node groups are configured to restart their hosted VMs on minimal servers.

interface NodeTemplateNodeTypeFlexibility

interface NodeTemplateNodeTypeFlexibility

property cpus

cpus?: pulumi.Input<string>;

Number of virtual CPUs to use.

property localSsd

localSsd?: pulumi.Input<string>;

- Use local SSD

property memory

memory?: pulumi.Input<string>;

Physical memory available to the node, defined in MB.

interface NodeTemplateServerBinding

interface NodeTemplateServerBinding

property type

type: pulumi.Input<string>;

Type of server binding policy. If RESTART_NODE_ON_ANY_SERVER, nodes using this template will restart on any physical server following a maintenance event. If RESTART_NODE_ON_MINIMAL_SERVER, nodes using this template will restart on the same physical server following a maintenance event, instead of being live migrated to or restarted on a new physical server. This option may be useful if you are using software licenses tied to the underlying server characteristics such as physical sockets or cores, to avoid the need for additional licenses when maintenance occurs. However, VMs on such nodes will experience outages while maintenance is applied.

interface PacketMirroringCollectorIlb

interface PacketMirroringCollectorIlb

property url

url: pulumi.Input<string>;

The URL of the instances where this rule should be active.

interface PacketMirroringFilter

interface PacketMirroringFilter

property cidrRanges

cidrRanges?: pulumi.Input<pulumi.Input<string>[]>;

IP CIDR ranges that apply as a filter on the source (ingress) or destination (egress) IP in the IP header. Only IPv4 is supported.

property ipProtocols

ipProtocols?: pulumi.Input<pulumi.Input<string>[]>;

Protocols that apply as a filter on mirrored traffic.

interface PacketMirroringMirroredResources

interface PacketMirroringMirroredResources

property instances

instances?: pulumi.Input<pulumi.Input<PacketMirroringMirroredResourcesInstance>[]>;

All the listed instances will be mirrored. Specify at most 50. Structure is documented below.

property subnetworks

subnetworks?: pulumi.Input<pulumi.Input<PacketMirroringMirroredResourcesSubnetwork>[]>;

All instances in one of these subnetworks will be mirrored. Structure is documented below.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

All instances with these tags will be mirrored.

interface PacketMirroringMirroredResourcesInstance

interface PacketMirroringMirroredResourcesInstance

property url

url: pulumi.Input<string>;

The URL of the instances where this rule should be active.

interface PacketMirroringMirroredResourcesSubnetwork

interface PacketMirroringMirroredResourcesSubnetwork

property url

url: pulumi.Input<string>;

The URL of the instances where this rule should be active.

interface PacketMirroringNetwork

interface PacketMirroringNetwork

property url

url: pulumi.Input<string>;

The URL of the instances where this rule should be active.

interface PerInstanceConfigPreservedState

interface PerInstanceConfigPreservedState

property disks

disks?: pulumi.Input<pulumi.Input<PerInstanceConfigPreservedStateDisk>[]>;

Stateful disks for the instance. Structure is documented below.

property metadata

metadata?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Preserved metadata defined for this instance. This is a list of key->value pairs.

interface PerInstanceConfigPreservedStateDisk

interface PerInstanceConfigPreservedStateDisk

property deleteRule

deleteRule?: pulumi.Input<string>;

A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER detatch the disk when the VM is deleted, but not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group.

property deviceName

deviceName: pulumi.Input<string>;

A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance.

property mode

mode?: pulumi.Input<string>;

The mode of the disk.

property source

source: pulumi.Input<string>;

The URI of an existing persistent disk to attach under the specified device-name in the format projects/project-id/zones/zone/disks/disk-name.

interface RegionAutoscalerAutoscalingPolicy

interface RegionAutoscalerAutoscalingPolicy

property cooldownPeriod

cooldownPeriod?: pulumi.Input<number>;

The number of seconds that the autoscaler should wait before it starts collecting information from a new instance. This prevents the autoscaler from collecting information when the instance is initializing, during which the collected usage would not be reliable. The default time autoscaler waits is 60 seconds. Virtual machine initialization times might vary because of numerous factors. We recommend that you test how long an instance may take to initialize. To do this, create an instance and time the startup process.

property cpuUtilization

cpuUtilization?: pulumi.Input<RegionAutoscalerAutoscalingPolicyCpuUtilization>;

Defines the CPU utilization policy that allows the autoscaler to scale based on the average CPU utilization of a managed instance group. Structure is documented below.

property loadBalancingUtilization

loadBalancingUtilization?: pulumi.Input<RegionAutoscalerAutoscalingPolicyLoadBalancingUtilization>;

Configuration parameters of autoscaling based on a load balancer. Structure is documented below.

property maxReplicas

maxReplicas: pulumi.Input<number>;

The maximum number of instances that the autoscaler can scale up to. This is required when creating or updating an autoscaler. The maximum number of replicas should not be lower than minimal number of replicas.

property metrics

metrics?: pulumi.Input<pulumi.Input<RegionAutoscalerAutoscalingPolicyMetric>[]>;

Configuration parameters of autoscaling based on a custom metric. Structure is documented below.

property minReplicas

minReplicas: pulumi.Input<number>;

The minimum number of replicas that the autoscaler can scale down to. This cannot be less than 0. If not provided, autoscaler will choose a default value depending on maximum number of instances allowed.

interface RegionAutoscalerAutoscalingPolicyCpuUtilization

interface RegionAutoscalerAutoscalingPolicyCpuUtilization

property target

target: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

interface RegionAutoscalerAutoscalingPolicyLoadBalancingUtilization

interface RegionAutoscalerAutoscalingPolicyLoadBalancingUtilization

property target

target: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

interface RegionAutoscalerAutoscalingPolicyMetric

interface RegionAutoscalerAutoscalingPolicyMetric

property filter

filter?: pulumi.Input<string>;

A filter string to be used as the filter string for a Stackdriver Monitoring TimeSeries.list API call. This filter is used to select a specific TimeSeries for the purpose of autoscaling and to determine whether the metric is exporting per-instance or per-group data. You can only use the AND operator for joining selectors. You can only use direct equality comparison operator (=) without any functions for each selector. You can specify the metric in both the filter string and in the metric field. However, if specified in both places, the metric must be identical. The monitored resource type determines what kind of values are expected for the metric. If it is a gce_instance, the autoscaler expects the metric to include a separate TimeSeries for each instance in a group. In such a case, you cannot filter on resource labels. If the resource type is any other value, the autoscaler expects this metric to contain values that apply to the entire autoscaled instance group and resource label filtering can be performed to point autoscaler at the correct TimeSeries to scale upon. This is called a per-group metric for the purpose of autoscaling. If not specified, the type defaults to gce_instance. You should provide a filter that is selective enough to pick just one TimeSeries for the autoscaled group or for each of the instances (if you are using gceInstance resource type). If multiple TimeSeries are returned upon the query execution, the autoscaler will sum their respective values to obtain its scaling value.

property name

name: pulumi.Input<string>;

The identifier (type) of the Stackdriver Monitoring metric. The metric cannot have negative values. The metric must have a value type of INT64 or DOUBLE.

property singleInstanceAssignment

singleInstanceAssignment?: pulumi.Input<number>;

If scaling is based on a per-group metric value that represents the total amount of work to be done or resource usage, set this value to an amount assigned for a single instance of the scaled group. The autoscaler will keep the number of instances proportional to the value of this metric, the metric itself should not change value due to group resizing. For example, a good metric to use with the target is pubsub.googleapis.com/subscription/num_undelivered_messages or a custom metric exporting the total number of requests coming to your instances. A bad example would be a metric exporting an average or median latency, since this value can’t include a chunk assignable to a single instance, it could be better used with utilizationTarget instead.

property target

target?: pulumi.Input<number>;

Fraction of backend capacity utilization (set in HTTP(s) load balancing configuration) that autoscaler should maintain. Must be a positive float value. If not defined, the default is 0.8.

property type

type?: pulumi.Input<string>;

Defines how target utilization value is expressed for a Stackdriver Monitoring metric.

interface RegionBackendServiceBackend

interface RegionBackendServiceBackend

property balancingMode

balancingMode?: pulumi.Input<string>;

Specifies the balancing mode for this backend.

property capacityScaler

capacityScaler?: pulumi.Input<number>;

A multiplier applied to the group’s maximum servicing capacity (based on UTILIZATION, RATE or CONNECTION). ~>NOTE: This field cannot be set for INTERNAL region backend services (default loadBalancingScheme), but is required for non-INTERNAL backend service. The total capacityScaler for all backends must be non-zero. A setting of 0 means the group is completely drained, offering 0% of its available Capacity. Valid range is [0.0,1.0].

property description

description?: pulumi.Input<string>;

An optional description of this resource. Provide this property when you create the resource.

property failover

failover?: pulumi.Input<boolean>;

This field designates whether this is a failover backend. More than one failover backend can be configured for a given RegionBackendService.

property group

group: pulumi.Input<string>;

The fully-qualified URL of an Instance Group or Network Endpoint Group resource. In case of instance group this defines the list of instances that serve traffic. Member virtual machine instances from each instance group must live in the same zone as the instance group itself. No two backends in a backend service are allowed to use same Instance Group resource. For Network Endpoint Groups this defines list of endpoints. All endpoints of Network Endpoint Group must be hosted on instances located in the same zone as the Network Endpoint Group. Backend services cannot mix Instance Group and Network Endpoint Group backends. When the loadBalancingScheme is INTERNAL, only instance groups are supported. Note that you must specify an Instance Group or Network Endpoint Group resource using the fully-qualified URL, rather than a partial URL.

property maxConnections

maxConnections?: pulumi.Input<number>;

The maximum number of connections to the backend cluster. Defaults to 1024.

property maxConnectionsPerEndpoint

maxConnectionsPerEndpoint?: pulumi.Input<number>;

The max number of simultaneous connections that a single backend network endpoint can handle. Cannot be set for INTERNAL backend services. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerEndpoint must be set.

property maxConnectionsPerInstance

maxConnectionsPerInstance?: pulumi.Input<number>;

The max number of simultaneous connections that a single backend instance can handle. Cannot be set for INTERNAL backend services. This is used to calculate the capacity of the group. Can be used in either CONNECTION or UTILIZATION balancing modes. For CONNECTION mode, either maxConnections or maxConnectionsPerInstance must be set.

property maxRate

maxRate?: pulumi.Input<number>;

The max requests per second (RPS) of the group. Cannot be set for INTERNAL backend services. Can be used with either RATE or UTILIZATION balancing modes, but required if RATE mode. Either maxRate or one of maxRatePerInstance or maxRatePerEndpoint, as appropriate for group type, must be set.

property maxRatePerEndpoint

maxRatePerEndpoint?: pulumi.Input<number>;

The max requests per second (RPS) that a single backend network endpoint can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerEndpoint must be set. Cannot be set for INTERNAL backend services.

property maxRatePerInstance

maxRatePerInstance?: pulumi.Input<number>;

The max requests per second (RPS) that a single backend instance can handle. This is used to calculate the capacity of the group. Can be used in either balancing mode. For RATE mode, either maxRate or maxRatePerInstance must be set. Cannot be set for INTERNAL backend services.

property maxUtilization

maxUtilization?: pulumi.Input<number>;

Used when balancingMode is UTILIZATION. This ratio defines the CPU utilization target for the group. Valid range is [0.0, 1.0]. Cannot be set for INTERNAL backend services.

interface RegionBackendServiceCircuitBreakers

interface RegionBackendServiceCircuitBreakers

property connectTimeout

connectTimeout?: pulumi.Input<RegionBackendServiceCircuitBreakersConnectTimeout>;

The timeout for new network connections to hosts. Structure is documented below.

property maxConnections

maxConnections?: pulumi.Input<number>;

The maximum number of connections to the backend cluster. Defaults to 1024.

property maxPendingRequests

maxPendingRequests?: pulumi.Input<number>;

The maximum number of pending requests to the backend cluster. Defaults to 1024.

property maxRequests

maxRequests?: pulumi.Input<number>;

The maximum number of parallel requests to the backend cluster. Defaults to 1024.

property maxRequestsPerConnection

maxRequestsPerConnection?: pulumi.Input<number>;

Maximum requests for a single backend connection. This parameter is respected by both the HTTP/1.1 and HTTP/2 implementations. If not specified, there is no limit. Setting this parameter to 1 will effectively disable keep alive.

property maxRetries

maxRetries?: pulumi.Input<number>;

The maximum number of parallel retries to the backend cluster. Defaults to 3.

interface RegionBackendServiceCircuitBreakersConnectTimeout

interface RegionBackendServiceCircuitBreakersConnectTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionBackendServiceConsistentHash

interface RegionBackendServiceConsistentHash

property httpCookie

httpCookie?: pulumi.Input<RegionBackendServiceConsistentHashHttpCookie>;

Hash is based on HTTP Cookie. This field describes a HTTP cookie that will be used as the hash key for the consistent hash load balancer. If the cookie is not present, it will be generated. This field is applicable if the sessionAffinity is set to HTTP_COOKIE. Structure is documented below.

property httpHeaderName

httpHeaderName?: pulumi.Input<string>;

The hash based on the value of the specified header field. This field is applicable if the sessionAffinity is set to HEADER_FIELD.

property minimumRingSize

minimumRingSize?: pulumi.Input<number>;

The minimum number of virtual nodes to use for the hash ring. Larger ring sizes result in more granular load distributions. If the number of hosts in the load balancing pool is larger than the ring size, each host will be assigned a single virtual node. Defaults to 1024.

interface RegionBackendServiceConsistentHashHttpCookie

interface RegionBackendServiceConsistentHashHttpCookie

property name

name?: pulumi.Input<string>;

Name of the cookie.

property path

path?: pulumi.Input<string>;

Path to set for the cookie.

property ttl

ttl?: pulumi.Input<RegionBackendServiceConsistentHashHttpCookieTtl>;

Lifetime of the cookie. Structure is documented below.

interface RegionBackendServiceConsistentHashHttpCookieTtl

interface RegionBackendServiceConsistentHashHttpCookieTtl

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionBackendServiceFailoverPolicy

interface RegionBackendServiceFailoverPolicy

property disableConnectionDrainOnFailover

disableConnectionDrainOnFailover?: pulumi.Input<boolean>;

On failover or failback, this field indicates whether connection drain will be honored. Setting this to true has the following effect: connections to the old active pool are not drained. Connections to the new active pool use the timeout of 10 min (currently fixed). Setting to false has the following effect: both old and new connections will have a drain timeout of 10 min. This can be set to true only if the protocol is TCP. The default is false.

property dropTrafficIfUnhealthy

dropTrafficIfUnhealthy?: pulumi.Input<boolean>;

This option is used only when no healthy VMs are detected in the primary and backup instance groups. When set to true, traffic is dropped. When set to false, new connections are sent across all VMs in the primary group. The default is false.

property failoverRatio

failoverRatio?: pulumi.Input<number>;

The value of the field must be in [0, 1]. If the ratio of the healthy VMs in the primary backend is at or below this number, traffic arriving at the load-balanced IP will be directed to the failover backend. In case where ‘failoverRatio’ is not set or all the VMs in the backup backend are unhealthy, the traffic will be directed back to the primary backend in the “force” mode, where traffic will be spread to the healthy VMs with the best effort, or to all VMs when no VM is healthy. This field is only used with l4 load balancing.

interface RegionBackendServiceLogConfig

interface RegionBackendServiceLogConfig

property enable

enable?: pulumi.Input<boolean>;

Whether to enable logging for the load balancer traffic served by this backend service.

property sampleRate

sampleRate?: pulumi.Input<number>;

This field can only be specified if logging is enabled for this backend service. The value of the field must be in [0, 1]. This configures the sampling rate of requests to the load balancer where 1.0 means all logged requests are reported and 0.0 means no logged requests are reported. The default value is 1.0.

interface RegionBackendServiceOutlierDetection

interface RegionBackendServiceOutlierDetection

property baseEjectionTime

baseEjectionTime?: pulumi.Input<RegionBackendServiceOutlierDetectionBaseEjectionTime>;

The base time that a host is ejected for. The real time is equal to the base time multiplied by the number of times the host has been ejected. Defaults to 30000ms or 30s. Structure is documented below.

property consecutiveErrors

consecutiveErrors?: pulumi.Input<number>;

Number of errors before a host is ejected from the connection pool. When the backend host is accessed over HTTP, a 5xx return code qualifies as an error. Defaults to 5.

property consecutiveGatewayFailure

consecutiveGatewayFailure?: pulumi.Input<number>;

The number of consecutive gateway failures (502, 503, 504 status or connection errors that are mapped to one of those status codes) before a consecutive gateway failure ejection occurs. Defaults to 5.

property enforcingConsecutiveErrors

enforcingConsecutiveErrors?: pulumi.Input<number>;

The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive 5xx. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.

property enforcingConsecutiveGatewayFailure

enforcingConsecutiveGatewayFailure?: pulumi.Input<number>;

The percentage chance that a host will be actually ejected when an outlier status is detected through consecutive gateway failures. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 0.

property enforcingSuccessRate

enforcingSuccessRate?: pulumi.Input<number>;

The percentage chance that a host will be actually ejected when an outlier status is detected through success rate statistics. This setting can be used to disable ejection or to ramp it up slowly. Defaults to 100.

property interval

interval?: pulumi.Input<RegionBackendServiceOutlierDetectionInterval>;

Time interval between ejection sweep analysis. This can result in both new ejections as well as hosts being returned to service. Defaults to 10 seconds. Structure is documented below.

property maxEjectionPercent

maxEjectionPercent?: pulumi.Input<number>;

Maximum percentage of hosts in the load balancing pool for the backend service that can be ejected. Defaults to 10%.

property successRateMinimumHosts

successRateMinimumHosts?: pulumi.Input<number>;

The number of hosts in a cluster that must have enough request volume to detect success rate outliers. If the number of hosts is less than this setting, outlier detection via success rate statistics is not performed for any host in the cluster. Defaults to 5.

property successRateRequestVolume

successRateRequestVolume?: pulumi.Input<number>;

The minimum number of total requests that must be collected in one interval (as defined by the interval duration above) to include this host in success rate based outlier detection. If the volume is lower than this setting, outlier detection via success rate statistics is not performed for that host. Defaults to 100.

property successRateStdevFactor

successRateStdevFactor?: pulumi.Input<number>;

This factor is used to determine the ejection threshold for success rate outlier ejection. The ejection threshold is the difference between the mean success rate, and the product of this factor and the standard deviation of the mean success rate: mean - (stdev * success_rate_stdev_factor). This factor is divided by a thousand to get a double. That is, if the desired factor is 1.9, the runtime value should be 1900. Defaults to 1900.

interface RegionBackendServiceOutlierDetectionBaseEjectionTime

interface RegionBackendServiceOutlierDetectionBaseEjectionTime

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionBackendServiceOutlierDetectionInterval

interface RegionBackendServiceOutlierDetectionInterval

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<number>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionDiskDiskEncryptionKey

interface RegionDiskDiskEncryptionKey

property kmsKeyName

kmsKeyName?: pulumi.Input<string>;

The name of the encryption key that is stored in Google Cloud KMS.

property rawKey

rawKey?: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.

property sha256

sha256?: pulumi.Input<string>;

- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.

interface RegionDiskSourceSnapshotEncryptionKey

interface RegionDiskSourceSnapshotEncryptionKey

property kmsKeyName

kmsKeyName?: pulumi.Input<string>;

The name of the encryption key that is stored in Google Cloud KMS.

property rawKey

rawKey?: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource.

property sha256

sha256?: pulumi.Input<string>;

- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.

interface RegionHealthCheckHttp2HealthCheck

interface RegionHealthCheckHttp2HealthCheck

property host

host?: pulumi.Input<string>;

The value of the host header in the HTTP2 health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property requestPath

requestPath?: pulumi.Input<string>;

The request path of the HTTP2 health check request. The default value is /.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface RegionHealthCheckHttpHealthCheck

interface RegionHealthCheckHttpHealthCheck

property host

host?: pulumi.Input<string>;

The value of the host header in the HTTP2 health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property requestPath

requestPath?: pulumi.Input<string>;

The request path of the HTTP2 health check request. The default value is /.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface RegionHealthCheckHttpsHealthCheck

interface RegionHealthCheckHttpsHealthCheck

property host

host?: pulumi.Input<string>;

The value of the host header in the HTTP2 health check request. If left empty (default value), the public IP on behalf of which this health check is performed will be used.

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property requestPath

requestPath?: pulumi.Input<string>;

The request path of the HTTP2 health check request. The default value is /.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface RegionHealthCheckLogConfig

interface RegionHealthCheckLogConfig

property enable

enable?: pulumi.Input<boolean>;

Indicates whether or not to export logs. This is false by default, which means no health check logging will be done.

interface RegionHealthCheckSslHealthCheck

interface RegionHealthCheckSslHealthCheck

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property request

request?: pulumi.Input<string>;

The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface RegionHealthCheckTcpHealthCheck

interface RegionHealthCheckTcpHealthCheck

property port

port?: pulumi.Input<number>;

The TCP port number for the HTTP2 health check request. The default value is 443.

property portName

portName?: pulumi.Input<string>;

Port name as defined in InstanceGroup#NamedPort#name. If both port and portName are defined, port takes precedence.

property portSpecification

portSpecification?: pulumi.Input<string>;

Specifies how port is selected for health checking, can be one of the following values: * USE_FIXED_PORT: The port number in port is used for health checking. * USE_NAMED_PORT: The portName is used for health checking. * USE_SERVING_PORT: For NetworkEndpointGroup, the port specified for each network endpoint is used for health checking. For other backends, the port or named port specified in the Backend Service is used for health checking. If not specified, HTTP2 health check follows behavior specified in port and portName fields.

property proxyHeader

proxyHeader?: pulumi.Input<string>;

Specifies the type of proxy header to append before sending data to the backend.

property request

request?: pulumi.Input<string>;

The application data to send once the SSL connection has been established (default value is empty). If both request and response are empty, the connection establishment alone will indicate health. The request data can only be ASCII.

property response

response?: pulumi.Input<string>;

The bytes to match against the beginning of the response data. If left empty (the default value), any response will indicate health. The response data can only be ASCII.

interface RegionInstanceGroupManagerAutoHealingPolicies

interface RegionInstanceGroupManagerAutoHealingPolicies

property healthCheck

healthCheck: pulumi.Input<string>;

The health check resource that signals autohealing.

property initialDelaySec

initialDelaySec: pulumi.Input<number>;

The number of seconds that the managed instance group waits before it applies autohealing policies to new instances or recently recreated instances. Between 0 and 3600.

interface RegionInstanceGroupManagerNamedPort

interface RegionInstanceGroupManagerNamedPort

property name

name: pulumi.Input<string>;
  • Version name.

property port

port: pulumi.Input<number>;

The port number.


interface RegionInstanceGroupManagerStatefulDisk

interface RegionInstanceGroupManagerStatefulDisk

property deleteRule

deleteRule?: pulumi.Input<string>;

, A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER detatch the disk when the VM is deleted, but not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group. The default is NEVER.

property deviceName

deviceName: pulumi.Input<string>;

, The device name of the disk to be attached.

interface RegionInstanceGroupManagerUpdatePolicy

interface RegionInstanceGroupManagerUpdatePolicy

property instanceRedistributionType

instanceRedistributionType?: pulumi.Input<string>;
  • The instance redistribution policy for regional managed instance groups. Valid values are: "PROACTIVE", "NONE". If PROACTIVE (default), the group attempts to maintain an even distribution of VM instances across zones in the region. If NONE, proactive redistribution is disabled.

property maxSurgeFixed

maxSurgeFixed?: pulumi.Input<number>;

, The maximum number of instances that can be created above the specified targetSize during the update process. Conflicts with maxSurgePercent. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of maxUnavailableFixed or maxSurgeFixed must be greater than 0.

property maxSurgePercent

maxSurgePercent?: pulumi.Input<number>;

, The maximum number of instances(calculated as percentage) that can be created above the specified targetSize during the update process. Conflicts with maxSurgeFixed. Percent value is only allowed for regional managed instance groups with size at least 10.

property maxUnavailableFixed

maxUnavailableFixed?: pulumi.Input<number>;

, The maximum number of instances that can be unavailable during the update process. Conflicts with maxUnavailablePercent. It has to be either 0 or at least equal to the number of zones. If fixed values are used, at least one of maxUnavailableFixed or maxSurgeFixed must be greater than 0.

property maxUnavailablePercent

maxUnavailablePercent?: pulumi.Input<number>;

, The maximum number of instances(calculated as percentage) that can be unavailable during the update process. Conflicts with maxUnavailableFixed. Percent value is only allowed for regional managed instance groups with size at least 10.

property minReadySec

minReadySec?: pulumi.Input<number>;

, Minimum number of seconds to wait for after a newly created instance becomes available. This value must be from range [0, 3600]


property minimalAction

minimalAction: pulumi.Input<string>;
  • Minimal action to be taken on an instance. You can specify either RESTART to restart existing instances or REPLACE to delete and create new instances from the target template. If you specify a RESTART, the Updater will attempt to perform that action only. However, if the Updater determines that the minimal action you specify is not enough to perform the update, it might perform a more disruptive action.

property type

type: pulumi.Input<string>;
  • The type of update process. You can specify either PROACTIVE so that the instance group manager proactively executes actions in order to bring instances to their target versions or OPPORTUNISTIC so that no action is proactively executed but the update will be performed as part of other actions (for example, resizes or recreateInstances calls).

interface RegionInstanceGroupManagerVersion

interface RegionInstanceGroupManagerVersion

property instanceTemplate

instanceTemplate: pulumi.Input<string>;
  • The full URL to an instance template from which all new instances of this version will be created.

property name

name?: pulumi.Input<string>;
  • Version name.

property targetSize

targetSize?: pulumi.Input<RegionInstanceGroupManagerVersionTargetSize>;
  • The number of instances calculated as a fixed number or a percentage depending on the settings. Structure is documented below.

interface RegionInstanceGroupManagerVersionTargetSize

interface RegionInstanceGroupManagerVersionTargetSize

property fixed

fixed?: pulumi.Input<number>;

, The number of instances which are managed for this version. Conflicts with percent.

property percent

percent?: pulumi.Input<number>;

, The number of instances (calculated as percentage) which are managed for this version. Conflicts with fixed. Note that when using percent, rounding will be in favor of explicitly set targetSize values; a managed instance group with 2 instances and 2 versions, one of which has a target_size.percent of 60 will create 2 instances of that version.

interface RegionPerInstanceConfigPreservedState

interface RegionPerInstanceConfigPreservedState

property disks

disks?: pulumi.Input<pulumi.Input<RegionPerInstanceConfigPreservedStateDisk>[]>;

Stateful disks for the instance. Structure is documented below.

property metadata

metadata?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Preserved metadata defined for this instance. This is a list of key->value pairs.

interface RegionPerInstanceConfigPreservedStateDisk

interface RegionPerInstanceConfigPreservedStateDisk

property deleteRule

deleteRule?: pulumi.Input<string>;

A value that prescribes what should happen to the stateful disk when the VM instance is deleted. The available options are NEVER and ON_PERMANENT_INSTANCE_DELETION. NEVER detatch the disk when the VM is deleted, but not delete the disk. ON_PERMANENT_INSTANCE_DELETION will delete the stateful disk when the VM is permanently deleted from the instance group.

property deviceName

deviceName: pulumi.Input<string>;

A unique device name that is reflected into the /dev/ tree of a Linux operating system running within the instance.

property mode

mode?: pulumi.Input<string>;

The mode of the disk.

property source

source: pulumi.Input<string>;

The URI of an existing persistent disk to attach under the specified device-name in the format projects/project-id/zones/zone/disks/disk-name.

interface RegionUrlMapDefaultUrlRedirect

interface RegionUrlMapDefaultUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. This field is required to ensure an empty block is not set. The normal default value is false.

interface RegionUrlMapHostRule

interface RegionUrlMapHostRule

property description

description?: pulumi.Input<string>;

Description of this test case.

property hosts

hosts: pulumi.Input<pulumi.Input<string>[]>;

The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..

property pathMatcher

pathMatcher: pulumi.Input<string>;

The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL’s host portion.

interface RegionUrlMapPathMatcher

interface RegionUrlMapPathMatcher

property defaultService

defaultService: pulumi.Input<string>;

A reference to a RegionBackendService resource. This will be used if none of the pathRules defined by this PathMatcher is matched by the URL’s path portion.

property defaultUrlRedirect

defaultUrlRedirect?: pulumi.Input<RegionUrlMapPathMatcherDefaultUrlRedirect>;

When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Structure is documented below.

property description

description?: pulumi.Input<string>;

Description of this test case.

property name

name: pulumi.Input<string>;

The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.

property pathRules

pathRules?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherPathRule>[]>;

The list of path rules. Use this list instead of routeRules when routing based on simple path matching is all that’s required. The order by which path rules are specified does not matter. Matches are always done on the longest-path-first basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/* irrespective of the order in which those paths appear in this list. Within a given pathMatcher, only one of pathRules or routeRules must be set. Structure is documented below.

property routeRules

routeRules?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRule>[]>;

The list of ordered HTTP route rules. Use this list instead of pathRules when advanced route matching and routing actions are desired. The order of specifying routeRules matters: the first rule that matches will cause its specified routing action to take effect. Within a given pathMatcher, only one of pathRules or routeRules must be set. routeRules are not supported in UrlMaps intended for External load balancers. Structure is documented below.

interface RegionUrlMapPathMatcherDefaultUrlRedirect

interface RegionUrlMapPathMatcherDefaultUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. This field is required to ensure an empty block is not set. The normal default value is false.

interface RegionUrlMapPathMatcherPathRule

interface RegionUrlMapPathMatcherPathRule

property paths

paths: pulumi.Input<pulumi.Input<string>[]>;

The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.

property routeAction

routeAction?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteAction>;

In response to a matching path, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of routeAction or urlRedirect must be set. Structure is documented below.

property service

service?: pulumi.Input<string>;

A reference to expected RegionBackendService resource the given URL should be mapped to.

property urlRedirect

urlRedirect?: pulumi.Input<RegionUrlMapPathMatcherPathRuleUrlRedirect>;

When a path pattern is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Structure is documented below.

interface RegionUrlMapPathMatcherPathRuleRouteAction

interface RegionUrlMapPathMatcherPathRuleRouteAction

property corsPolicy

corsPolicy?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionCorsPolicy>;

The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing Structure is documented below.

property faultInjectionPolicy

faultInjectionPolicy?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicy>;

The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. timeout and retryPolicy will be ignored by clients that are configured with a fault_injection_policy. Structure is documented below.

property requestMirrorPolicy

requestMirrorPolicy?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionRequestMirrorPolicy>;

Specifies the policy on how requests intended for the route’s backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Structure is documented below.

property retryPolicy

retryPolicy?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionRetryPolicy>;

Specifies the retry policy associated with this route. Structure is documented below.

property timeout

timeout?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionTimeout>;

Specifies the timeout for the selected route. Timeout is computed from the time the request is has been fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries. If not specified, the default value is 15 seconds. Structure is documented below.

property urlRewrite

urlRewrite?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionUrlRewrite>;

The spec to modify the URL of the request, prior to forwarding the request to the matched service Structure is documented below.

property weightedBackendServices

weightedBackendServices?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendService>[]>;

A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non 0 number. Once a backendService is identified and before forwarding the request to the backend service, advanced routing actions like Url rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction. Structure is documented below.

interface RegionUrlMapPathMatcherPathRuleRouteActionCorsPolicy

interface RegionUrlMapPathMatcherPathRuleRouteActionCorsPolicy

property allowCredentials

allowCredentials?: pulumi.Input<boolean>;

In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This translates to the Access- Control-Allow-Credentials header. Defaults to false.

property allowHeaders

allowHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Headers header.

property allowMethods

allowMethods?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Methods header.

property allowOriginRegexes

allowOriginRegexes?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the regualar expression patterns that match allowed origins. For regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property allowOrigins

allowOrigins?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the list of origins that will be allowed to do CORS requests. An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property disabled

disabled: pulumi.Input<boolean>;

If true, specifies the CORS policy is disabled.

property exposeHeaders

exposeHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Expose-Headers header.

property maxAge

maxAge?: pulumi.Input<number>;

Specifies how long the results of a preflight request can be cached. This translates to the content for the Access-Control-Max-Age header.

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicy

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicy

property abort

abort?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort>;

The specification for how client requests are aborted as part of fault injection. Structure is documented below.

property delay

delay?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay>;

The specification for how client requests are delayed as part of fault injection, before being sent to a backend service. Structure is documented below.

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort

property httpStatus

httpStatus: pulumi.Input<number>;

The HTTP status code used to abort the request. The value must be between 200 and 599 inclusive.

property percentage

percentage: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay

property fixedDelay

fixedDelay: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay>;

Specifies the value of the fixed delay interval. Structure is documented below.

property percentage

percentage: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay

interface RegionUrlMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionUrlMapPathMatcherPathRuleRouteActionRequestMirrorPolicy

interface RegionUrlMapPathMatcherPathRuleRouteActionRequestMirrorPolicy

property backendService

backendService: pulumi.Input<string>;

The default RegionBackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

interface RegionUrlMapPathMatcherPathRuleRouteActionRetryPolicy

interface RegionUrlMapPathMatcherPathRuleRouteActionRetryPolicy

property numRetries

numRetries?: pulumi.Input<number>;

Specifies the allowed number retries. This number must be > 0.

property perTryTimeout

perTryTimeout?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout>;

Specifies a non-zero timeout per retry attempt. Structure is documented below.

property retryConditions

retryConditions?: pulumi.Input<pulumi.Input<string>[]>;

Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream: Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable

interface RegionUrlMapPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout

interface RegionUrlMapPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionUrlMapPathMatcherPathRuleRouteActionTimeout

interface RegionUrlMapPathMatcherPathRuleRouteActionTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionUrlMapPathMatcherPathRuleRouteActionUrlRewrite

interface RegionUrlMapPathMatcherPathRuleRouteActionUrlRewrite

property hostRewrite

hostRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected service, the request’s host header is replaced with contents of hostRewrite. The value must be between 1 and 255 characters.

property pathPrefixRewrite

pathPrefixRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected backend service, the matching portion of the request’s path is replaced by pathPrefixRewrite. The value must be between 1 and 1024 characters.

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendService

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendService

property backendService

backendService: pulumi.Input<string>;

The default RegionBackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

property headerAction

headerAction?: pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property weight

weight: pulumi.Input<number>;

Specifies the fraction of traffic sent to backendService, computed as weight / (sum of all weightedBackendService weights in routeAction) . The selection of a backend service is determined only for new traffic. Once a user’s request has been directed to a backendService, subsequent requests will be sent to the same backendService as determined by the BackendService’s session affinity policy. The value must be between 0 and 1000

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderAction

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

interface RegionUrlMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface RegionUrlMapPathMatcherPathRuleUrlRedirect

interface RegionUrlMapPathMatcherPathRuleUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. This field is required to ensure an empty block is not set. The normal default value is false.

interface RegionUrlMapPathMatcherRouteRule

interface RegionUrlMapPathMatcherRouteRule

property headerAction

headerAction?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property matchRules

matchRules?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleMatchRule>[]>;

The rules for determining a match. Structure is documented below.

property priority

priority: pulumi.Input<number>;

For routeRules within a given pathMatcher, priority determines the order in which load balancer will interpret routeRules. RouteRules are evaluated in order of priority, from the lowest to highest number. The priority of a rule decreases as its number increases (1, 2, 3, N+1). The first rule that matches the request is applied. You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number between 0 and 2147483647 inclusive. Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules.

property routeAction

routeAction?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteAction>;

In response to a matching path, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of routeAction or urlRedirect must be set. Structure is documented below.

property service

service?: pulumi.Input<string>;

A reference to expected RegionBackendService resource the given URL should be mapped to.

property urlRedirect

urlRedirect?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleUrlRedirect>;

When a path pattern is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Structure is documented below.

interface RegionUrlMapPathMatcherRouteRuleHeaderAction

interface RegionUrlMapPathMatcherRouteRuleHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface RegionUrlMapPathMatcherRouteRuleHeaderActionRequestHeadersToAdd

interface RegionUrlMapPathMatcherRouteRuleHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface RegionUrlMapPathMatcherRouteRuleHeaderActionResponseHeadersToAdd

interface RegionUrlMapPathMatcherRouteRuleHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface RegionUrlMapPathMatcherRouteRuleMatchRule

interface RegionUrlMapPathMatcherRouteRuleMatchRule

property fullPathMatch

fullPathMatch?: pulumi.Input<string>;

For satifying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. FullPathMatch must be between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

property headerMatches

headerMatches?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatch>[]>;

Specifies a list of header match criteria, all of which must match corresponding headers in the request. Structure is documented below.

property ignoreCase

ignoreCase?: pulumi.Input<boolean>;

Specifies that prefixMatch and fullPathMatch matches are case sensitive. Defaults to false.

property metadataFilters

metadataFilters?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilter>[]>;

Opaque filter criteria used by Loadbalancer to restrict routing configuration to a limited set xDS compliant clients. In their xDS requests to Loadbalancer, xDS clients present node metadata. If a match takes place, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels in the provided metadata. metadataFilters specified here can be overrides those specified in ForwardingRule that refers to this UrlMap. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. Structure is documented below.

property prefixMatch

prefixMatch?: pulumi.Input<string>;

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

property queryParameterMatches

queryParameterMatches?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleMatchRuleQueryParameterMatch>[]>;

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Structure is documented below.

property regexMatch

regexMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch, exactMatch and regexMatch must be set.

interface RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatch

interface RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatch

property exactMatch

exactMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch must be set.

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property invertMatch

invertMatch?: pulumi.Input<boolean>;

If set to false, the headerMatch is considered a match if the match criteria above are met. If set to true, the headerMatch is considered a match if the match criteria above are NOT met. Defaults to false.

property prefixMatch

prefixMatch?: pulumi.Input<string>;

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

property presentMatch

presentMatch?: pulumi.Input<boolean>;

Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch and regexMatch must be set.

property rangeMatch

rangeMatch?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatchRangeMatch>;

The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Structure is documented below.

property regexMatch

regexMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch, exactMatch and regexMatch must be set.

property suffixMatch

suffixMatch?: pulumi.Input<string>;

The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

interface RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatchRangeMatch

interface RegionUrlMapPathMatcherRouteRuleMatchRuleHeaderMatchRangeMatch

property rangeEnd

rangeEnd: pulumi.Input<number>;

The end of the range (exclusive).

property rangeStart

rangeStart: pulumi.Input<number>;

The start of the range (inclusive).

interface RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilter

interface RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilter

property filterLabels

filterLabels: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilterFilterLabel>[]>;

The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries. Structure is documented below.

property filterMatchCriteria

filterMatchCriteria: pulumi.Input<string>;

Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata.

interface RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilterFilterLabel

interface RegionUrlMapPathMatcherRouteRuleMatchRuleMetadataFilterFilterLabel

property name

name: pulumi.Input<string>;

The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.

property value

value: pulumi.Input<string>;

The value of the label must match the specified value. value can have a maximum length of 1024 characters.

interface RegionUrlMapPathMatcherRouteRuleMatchRuleQueryParameterMatch

interface RegionUrlMapPathMatcherRouteRuleMatchRuleQueryParameterMatch

property exactMatch

exactMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch must be set.

property name

name: pulumi.Input<string>;

The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.

property presentMatch

presentMatch?: pulumi.Input<boolean>;

Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch and regexMatch must be set.

property regexMatch

regexMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch, exactMatch and regexMatch must be set.

interface RegionUrlMapPathMatcherRouteRuleRouteAction

interface RegionUrlMapPathMatcherRouteRuleRouteAction

property corsPolicy

corsPolicy?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionCorsPolicy>;

The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing Structure is documented below.

property faultInjectionPolicy

faultInjectionPolicy?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicy>;

The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. timeout and retryPolicy will be ignored by clients that are configured with a fault_injection_policy. Structure is documented below.

property requestMirrorPolicy

requestMirrorPolicy?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionRequestMirrorPolicy>;

Specifies the policy on how requests intended for the route’s backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Structure is documented below.

property retryPolicy

retryPolicy?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionRetryPolicy>;

Specifies the retry policy associated with this route. Structure is documented below.

property timeout

timeout?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionTimeout>;

Specifies the timeout for the selected route. Timeout is computed from the time the request is has been fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries. If not specified, the default value is 15 seconds. Structure is documented below.

property urlRewrite

urlRewrite?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite>;

The spec to modify the URL of the request, prior to forwarding the request to the matched service Structure is documented below.

property weightedBackendServices

weightedBackendServices?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendService>[]>;

A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non 0 number. Once a backendService is identified and before forwarding the request to the backend service, advanced routing actions like Url rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction. Structure is documented below.

interface RegionUrlMapPathMatcherRouteRuleRouteActionCorsPolicy

interface RegionUrlMapPathMatcherRouteRuleRouteActionCorsPolicy

property allowCredentials

allowCredentials?: pulumi.Input<boolean>;

In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This translates to the Access- Control-Allow-Credentials header. Defaults to false.

property allowHeaders

allowHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Headers header.

property allowMethods

allowMethods?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Methods header.

property allowOriginRegexes

allowOriginRegexes?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the regualar expression patterns that match allowed origins. For regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property allowOrigins

allowOrigins?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the list of origins that will be allowed to do CORS requests. An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property disabled

disabled?: pulumi.Input<boolean>;

If true, specifies the CORS policy is disabled.

property exposeHeaders

exposeHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Expose-Headers header.

property maxAge

maxAge?: pulumi.Input<number>;

Specifies how long the results of a preflight request can be cached. This translates to the content for the Access-Control-Max-Age header.

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicy

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicy

property abort

abort?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyAbort>;

The specification for how client requests are aborted as part of fault injection. Structure is documented below.

property delay

delay?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelay>;

The specification for how client requests are delayed as part of fault injection, before being sent to a backend service. Structure is documented below.

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyAbort

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyAbort

property httpStatus

httpStatus?: pulumi.Input<number>;

The HTTP status code used to abort the request. The value must be between 200 and 599 inclusive.

property percentage

percentage?: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelay

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelay

property fixedDelay

fixedDelay?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelayFixedDelay>;

Specifies the value of the fixed delay interval. Structure is documented below.

property percentage

percentage?: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelayFixedDelay

interface RegionUrlMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelayFixedDelay

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionUrlMapPathMatcherRouteRuleRouteActionRequestMirrorPolicy

interface RegionUrlMapPathMatcherRouteRuleRouteActionRequestMirrorPolicy

property backendService

backendService: pulumi.Input<string>;

The default RegionBackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

interface RegionUrlMapPathMatcherRouteRuleRouteActionRetryPolicy

interface RegionUrlMapPathMatcherRouteRuleRouteActionRetryPolicy

property numRetries

numRetries: pulumi.Input<number>;

Specifies the allowed number retries. This number must be > 0.

property perTryTimeout

perTryTimeout?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionRetryPolicyPerTryTimeout>;

Specifies a non-zero timeout per retry attempt. Structure is documented below.

property retryConditions

retryConditions?: pulumi.Input<pulumi.Input<string>[]>;

Specifies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream: Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable

interface RegionUrlMapPathMatcherRouteRuleRouteActionRetryPolicyPerTryTimeout

interface RegionUrlMapPathMatcherRouteRuleRouteActionRetryPolicyPerTryTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionUrlMapPathMatcherRouteRuleRouteActionTimeout

interface RegionUrlMapPathMatcherRouteRuleRouteActionTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite

interface RegionUrlMapPathMatcherRouteRuleRouteActionUrlRewrite

property hostRewrite

hostRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected service, the request’s host header is replaced with contents of hostRewrite. The value must be between 1 and 255 characters.

property pathPrefixRewrite

pathPrefixRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected backend service, the matching portion of the request’s path is replaced by pathPrefixRewrite. The value must be between 1 and 1024 characters.

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendService

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendService

property backendService

backendService: pulumi.Input<string>;

The default RegionBackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

property headerAction

headerAction?: pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property weight

weight: pulumi.Input<number>;

Specifies the fraction of traffic sent to backendService, computed as weight / (sum of all weightedBackendService weights in routeAction) . The selection of a backend service is determined only for new traffic. Once a user’s request has been directed to a backendService, subsequent requests will be sent to the same backendService as determined by the BackendService’s session affinity policy. The value must be between 0 and 1000

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderAction

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

interface RegionUrlMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface RegionUrlMapPathMatcherRouteRuleUrlRedirect

interface RegionUrlMapPathMatcherRouteRuleUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery?: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. This field is required to ensure an empty block is not set. The normal default value is false.

interface RegionUrlMapTest

interface RegionUrlMapTest

property description

description?: pulumi.Input<string>;

Description of this test case.

property host

host: pulumi.Input<string>;

Host portion of the URL.

property path

path: pulumi.Input<string>;

Path portion of the URL.

property service

service: pulumi.Input<string>;

A reference to expected RegionBackendService resource the given URL should be mapped to.

interface ReservationSpecificReservation

interface ReservationSpecificReservation

property count

count: pulumi.Input<number>;

The number of resources that are allocated.

property inUseCount

inUseCount?: pulumi.Input<number>;

- How many instances are in use.

property instanceProperties

instanceProperties: pulumi.Input<ReservationSpecificReservationInstanceProperties>;

The instance properties for the reservation. Structure is documented below.

interface ReservationSpecificReservationInstanceProperties

interface ReservationSpecificReservationInstanceProperties

property guestAccelerators

guestAccelerators?: pulumi.Input<pulumi.Input<ReservationSpecificReservationInstancePropertiesGuestAccelerator>[]>;

Guest accelerator type and count. Structure is documented below.

property localSsds

localSsds?: pulumi.Input<pulumi.Input<ReservationSpecificReservationInstancePropertiesLocalSsd>[]>;

The amount of local ssd to reserve with each instance. This reserves disks of type local-ssd. Structure is documented below.

property machineType

machineType: pulumi.Input<string>;

The name of the machine type to reserve.

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

The minimum CPU platform for the reservation. For example, "Intel Skylake". See the CPU platform availability reference](https://cloud.google.com/compute/docs/instances/specify-min-cpu-platform#availablezones) for information on available CPU platforms.

interface ReservationSpecificReservationInstancePropertiesGuestAccelerator

interface ReservationSpecificReservationInstancePropertiesGuestAccelerator

property acceleratorCount

acceleratorCount: pulumi.Input<number>;

The number of the guest accelerator cards exposed to this instance.

property acceleratorType

acceleratorType: pulumi.Input<string>;

The full or partial URL of the accelerator type to attach to this instance. For example: projects/my-project/zones/us-central1-c/acceleratorTypes/nvidia-tesla-p100 If you are creating an instance template, specify only the accelerator name.

interface ReservationSpecificReservationInstancePropertiesLocalSsd

interface ReservationSpecificReservationInstancePropertiesLocalSsd

property diskSizeGb

diskSizeGb: pulumi.Input<number>;

The size of the disk in base-2 GB.

property interface

interface?: pulumi.Input<string>;

The disk interface to use for attaching this disk.

interface ResourcePolicyGroupPlacementPolicy

interface ResourcePolicyGroupPlacementPolicy

property availabilityDomainCount

availabilityDomainCount?: pulumi.Input<number>;

The number of availability domains instances will be spread across. If two instances are in different availability domain, they will not be put in the same low latency network

property collocation

collocation?: pulumi.Input<string>;

Collocation specifies whether to place VMs inside the same availability domain on the same low-latency network. Specify COLLOCATED to enable collocation. Can only be specified with vmCount. If compute instances are created with a COLLOCATED policy, then exactly vmCount instances must be created at the same time with the resource policy attached.

property vmCount

vmCount?: pulumi.Input<number>;

Number of vms in this placement group.

interface ResourcePolicySnapshotSchedulePolicy

interface ResourcePolicySnapshotSchedulePolicy

property retentionPolicy

retentionPolicy?: pulumi.Input<ResourcePolicySnapshotSchedulePolicyRetentionPolicy>;

Retention policy applied to snapshots created by this resource policy. Structure is documented below.

property schedule

schedule: pulumi.Input<ResourcePolicySnapshotSchedulePolicySchedule>;

Contains one of an hourlySchedule, dailySchedule, or weeklySchedule. Structure is documented below.

property snapshotProperties

snapshotProperties?: pulumi.Input<ResourcePolicySnapshotSchedulePolicySnapshotProperties>;

Properties with which the snapshots are created, such as labels. Structure is documented below.

interface ResourcePolicySnapshotSchedulePolicyRetentionPolicy

interface ResourcePolicySnapshotSchedulePolicyRetentionPolicy

property maxRetentionDays

maxRetentionDays: pulumi.Input<number>;

Maximum age of the snapshot that is allowed to be kept.

property onSourceDiskDelete

onSourceDiskDelete?: pulumi.Input<string>;

Specifies the behavior to apply to scheduled snapshots when the source disk is deleted.

interface ResourcePolicySnapshotSchedulePolicySchedule

interface ResourcePolicySnapshotSchedulePolicySchedule

property dailySchedule

dailySchedule?: pulumi.Input<ResourcePolicySnapshotSchedulePolicyScheduleDailySchedule>;

The policy will execute every nth day at the specified time. Structure is documented below.

property hourlySchedule

hourlySchedule?: pulumi.Input<ResourcePolicySnapshotSchedulePolicyScheduleHourlySchedule>;

The policy will execute every nth hour starting at the specified time. Structure is documented below.

property weeklySchedule

weeklySchedule?: pulumi.Input<ResourcePolicySnapshotSchedulePolicyScheduleWeeklySchedule>;

Allows specifying a snapshot time for each day of the week. Structure is documented below.

interface ResourcePolicySnapshotSchedulePolicyScheduleDailySchedule

interface ResourcePolicySnapshotSchedulePolicyScheduleDailySchedule

property daysInCycle

daysInCycle: pulumi.Input<number>;

The number of days between snapshots.

property startTime

startTime: pulumi.Input<string>;

Time within the window to start the operations. It must be in format “HH:MM”, where HH : [00-23] and MM : [00-00] GMT.

interface ResourcePolicySnapshotSchedulePolicyScheduleHourlySchedule

interface ResourcePolicySnapshotSchedulePolicyScheduleHourlySchedule

property hoursInCycle

hoursInCycle: pulumi.Input<number>;

The number of hours between snapshots.

property startTime

startTime: pulumi.Input<string>;

Time within the window to start the operations. It must be in format “HH:MM”, where HH : [00-23] and MM : [00-00] GMT.

interface ResourcePolicySnapshotSchedulePolicyScheduleWeeklySchedule

interface ResourcePolicySnapshotSchedulePolicyScheduleWeeklySchedule

property dayOfWeeks

dayOfWeeks: pulumi.Input<pulumi.Input<ResourcePolicySnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeek>[]>;

May contain up to seven (one for each day of the week) snapshot times. Structure is documented below.

interface ResourcePolicySnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeek

interface ResourcePolicySnapshotSchedulePolicyScheduleWeeklyScheduleDayOfWeek

property day

day: pulumi.Input<string>;

The day of the week to create the snapshot. e.g. MONDAY

property startTime

startTime: pulumi.Input<string>;

Time within the window to start the operations. It must be in format “HH:MM”, where HH : [00-23] and MM : [00-00] GMT.

interface ResourcePolicySnapshotSchedulePolicySnapshotProperties

interface ResourcePolicySnapshotSchedulePolicySnapshotProperties

property guestFlush

guestFlush?: pulumi.Input<boolean>;

Whether to perform a ‘guest aware’ snapshot.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A set of key-value pairs.

property storageLocations

storageLocations?: pulumi.Input<string>;

Cloud Storage bucket location to store the auto snapshot (regional or multi-regional)

interface RouterBgp

interface RouterBgp

property advertiseMode

advertiseMode?: pulumi.Input<string>;

User-specified flag to indicate which mode to use for advertisement.

property advertisedGroups

advertisedGroups?: pulumi.Input<pulumi.Input<string>[]>;

User-specified list of prefix groups to advertise in custom mode. This field can only be populated if advertiseMode is CUSTOM and is advertised to all peers of the router. These groups will be advertised in addition to any specified prefixes. Leave this field blank to advertise no custom groups. This enum field has the one valid value: ALL_SUBNETS

property advertisedIpRanges

advertisedIpRanges?: pulumi.Input<pulumi.Input<RouterBgpAdvertisedIpRange>[]>;

User-specified list of individual IP ranges to advertise in custom mode. This field can only be populated if advertiseMode is CUSTOM and is advertised to all peers of the router. These IP ranges will be advertised in addition to any specified groups. Leave this field blank to advertise no custom IP ranges. Structure is documented below.

property asn

asn: pulumi.Input<number>;

Local BGP Autonomous System Number (ASN). Must be an RFC6996 private ASN, either 16-bit or 32-bit. The value will be fixed for this router resource. All VPN tunnels that link to this router will have the same local ASN.

interface RouterBgpAdvertisedIpRange

interface RouterBgpAdvertisedIpRange

property description

description?: pulumi.Input<string>;

User-specified description for the IP range.

property range

range: pulumi.Input<string>;

The IP range to advertise. The value must be a CIDR-formatted string.

interface RouterNatLogConfig

interface RouterNatLogConfig

property enable

enable: pulumi.Input<boolean>;

Indicates whether or not to export logs.

property filter

filter: pulumi.Input<string>;

Specifies the desired filtering of logs on this NAT.

interface RouterNatSubnetwork

interface RouterNatSubnetwork

property name

name: pulumi.Input<string>;

Self-link of subnetwork to NAT

property secondaryIpRangeNames

secondaryIpRangeNames?: pulumi.Input<pulumi.Input<string>[]>;

List of the secondary ranges of the subnetwork that are allowed to use NAT. This can be populated only if LIST_OF_SECONDARY_IP_RANGES is one of the values in sourceIpRangesToNat

property sourceIpRangesToNats

sourceIpRangesToNats: pulumi.Input<pulumi.Input<string>[]>;

List of options for which source IPs in the subnetwork should have NAT enabled. Supported values include: ALL_IP_RANGES, LIST_OF_SECONDARY_IP_RANGES, PRIMARY_IP_RANGE.

interface RouterPeerAdvertisedIpRange

interface RouterPeerAdvertisedIpRange

property description

description?: pulumi.Input<string>;

User-specified description for the IP range.

property range

range: pulumi.Input<string>;

The IP range to advertise. The value must be a CIDR-formatted string.

interface SecurityPolicyRule

interface SecurityPolicyRule

property action

action: pulumi.Input<string>;

Action to take when match matches the request. Valid values: * “allow” : allow access to target * “deny(status)” : deny access to target, returns the HTTP response code specified (valid values are 403, 404 and 502)

property description

description?: pulumi.Input<string>;

An optional description of this rule. Max size is 64.

property match

match: pulumi.Input<SecurityPolicyRuleMatch>;

A match condition that incoming traffic is evaluated against. If it evaluates to true, the corresponding action is enforced. Structure is documented below.

property preview

preview?: pulumi.Input<boolean>;

When set to true, the action specified above is not enforced. Stackdriver logs for requests that trigger a preview action are annotated as such.

property priority

priority: pulumi.Input<number>;

An unique positive integer indicating the priority of evaluation for a rule. Rules are evaluated from highest priority (lowest numerically) to lowest priority (highest numerically) in order.

interface SecurityPolicyRuleMatch

interface SecurityPolicyRuleMatch

property config

config?: pulumi.Input<SecurityPolicyRuleMatchConfig>;

The configuration options available when specifying versionedExpr. This field must be specified if versionedExpr is specified and cannot be specified if versionedExpr is not specified. Structure is documented below.

property expr

expr?: pulumi.Input<SecurityPolicyRuleMatchExpr>;

User defined CEVAL expression. A CEVAL expression is used to specify match criteria such as origin.ip, source.region_code and contents in the request header. Structure is documented below.

property versionedExpr

versionedExpr?: pulumi.Input<string>;

Predefined rule expression. If this field is specified, config must also be specified. Available options: * SRC_IPS_V1: Must specify the corresponding srcIpRanges field in config.

interface SecurityPolicyRuleMatchConfig

interface SecurityPolicyRuleMatchConfig

property srcIpRanges

srcIpRanges: pulumi.Input<pulumi.Input<string>[]>;

Set of IP addresses or ranges (IPV4 or IPV6) in CIDR notation to match against inbound traffic. There is a limit of 5 IP ranges per rule. A value of ‘*’ matches all IPs (can be used to override the default behavior).

interface SecurityPolicyRuleMatchExpr

interface SecurityPolicyRuleMatchExpr

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax. The application context of the containing message determines which well-known feature set of CEL is supported.

interface SecurityScanConfigAuthentication

interface SecurityScanConfigAuthentication

property customAccount

customAccount?: pulumi.Input<SecurityScanConfigAuthenticationCustomAccount>;

Describes authentication configuration that uses a custom account. Structure is documented below.

property googleAccount

googleAccount?: pulumi.Input<SecurityScanConfigAuthenticationGoogleAccount>;

Describes authentication configuration that uses a Google account. Structure is documented below.

interface SecurityScanConfigAuthenticationCustomAccount

interface SecurityScanConfigAuthenticationCustomAccount

property loginUrl

loginUrl: pulumi.Input<string>;

The login form URL of the website.

property password

password: pulumi.Input<string>;

The password of the custom account. The credential is stored encrypted in GCP. Note: This property is sensitive and will not be displayed in the plan.

property username

username: pulumi.Input<string>;

The user name of the custom account.

interface SecurityScanConfigAuthenticationGoogleAccount

interface SecurityScanConfigAuthenticationGoogleAccount

property password

password: pulumi.Input<string>;

The password of the custom account. The credential is stored encrypted in GCP. Note: This property is sensitive and will not be displayed in the plan.

property username

username: pulumi.Input<string>;

The user name of the custom account.

interface SecurityScanConfigSchedule

interface SecurityScanConfigSchedule

property intervalDurationDays

intervalDurationDays: pulumi.Input<number>;

The duration of time between executions in days

property scheduleTime

scheduleTime?: pulumi.Input<string>;

A timestamp indicates when the next run will be scheduled. The value is refreshed by the server after each run. If unspecified, it will default to current server time, which means the scan will be scheduled to start immediately.

interface SnapshotSnapshotEncryptionKey

interface SnapshotSnapshotEncryptionKey

property rawKey

rawKey: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource. Note: This property is sensitive and will not be displayed in the plan.

property sha256

sha256?: pulumi.Input<string>;

- The RFC 4648 base64 encoded SHA-256 hash of the customer-supplied encryption key that protects this resource.

interface SnapshotSourceDiskEncryptionKey

interface SnapshotSourceDiskEncryptionKey

property rawKey

rawKey?: pulumi.Input<string>;

Specifies a 256-bit customer-supplied encryption key, encoded in RFC 4648 base64 to either encrypt or decrypt this resource. Note: This property is sensitive and will not be displayed in the plan.

interface SubnetworkIAMBindingCondition

interface SubnetworkIAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface SubnetworkIAMMemberCondition

interface SubnetworkIAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface SubnetworkLogConfig

interface SubnetworkLogConfig

property aggregationInterval

aggregationInterval?: pulumi.Input<string>;

Can only be specified if VPC flow logging for this subnetwork is enabled. Toggles the aggregation interval for collecting flow logs. Increasing the interval time will reduce the amount of generated flow logs for long lasting connections. Default is an interval of 5 seconds per connection. Possible values are INTERVAL_5_SEC, INTERVAL_30_SEC, INTERVAL_1_MIN, INTERVAL_5_MIN, INTERVAL_10_MIN, INTERVAL_15_MIN

property flowSampling

flowSampling?: pulumi.Input<number>;

Can only be specified if VPC flow logging for this subnetwork is enabled. The value of the field must be in [0, 1]. Set the sampling rate of VPC flow logs within the subnetwork where 1.0 means all collected logs are reported and 0.0 means no logs are reported. Default is 0.5 which means half of all collected logs are reported.

property metadata

metadata?: pulumi.Input<string>;

Can only be specified if VPC flow logging for this subnetwork is enabled. Configures whether metadata fields should be added to the reported VPC flow logs.

interface SubnetworkSecondaryIpRange

interface SubnetworkSecondaryIpRange

property ipCidrRange

ipCidrRange: pulumi.Input<string>;

The range of IP addresses belonging to this subnetwork secondary range. Provide this property when you create the subnetwork. Ranges must be unique and non-overlapping with all primary and secondary IP ranges within a network. Only IPv4 is supported.

property rangeName

rangeName: pulumi.Input<string>;

The name associated with this subnetwork secondary range, used when adding an alias IP range to a VM instance. The name must be 1-63 characters long, and comply with RFC1035. The name must be unique within the subnetwork.

interface URLMapDefaultUrlRedirect

interface URLMapDefaultUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false. This field is required to ensure an empty block is not set. The normal default value is false.

interface URLMapHeaderAction

interface URLMapHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface URLMapHeaderActionRequestHeadersToAdd

interface URLMapHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapHeaderActionResponseHeadersToAdd

interface URLMapHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapHostRule

interface URLMapHostRule

property description

description?: pulumi.Input<string>;

Description of this test case.

property hosts

hosts: pulumi.Input<pulumi.Input<string>[]>;

The list of host patterns to match. They must be valid hostnames, except * will match any string of ([a-z0-9-.]*). In that case, * must be the first character and must be followed in the pattern by either - or ..

property pathMatcher

pathMatcher: pulumi.Input<string>;

The name of the PathMatcher to use to match the path portion of the URL if the hostRule matches the URL’s host portion.

interface URLMapPathMatcher

interface URLMapPathMatcher

property defaultService

defaultService?: pulumi.Input<string>;

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

property defaultUrlRedirect

defaultUrlRedirect?: pulumi.Input<URLMapPathMatcherDefaultUrlRedirect>;

When none of the specified hostRules match, the request is redirected to a URL specified by defaultUrlRedirect. If defaultUrlRedirect is specified, defaultService or defaultRouteAction must not be set. Structure is documented below.

property description

description?: pulumi.Input<string>;

Description of this test case.

property headerAction

headerAction?: pulumi.Input<URLMapPathMatcherHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property name

name: pulumi.Input<string>;

The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.

property pathRules

pathRules?: pulumi.Input<pulumi.Input<URLMapPathMatcherPathRule>[]>;

The list of path rules. Use this list instead of routeRules when routing based on simple path matching is all that’s required. The order by which path rules are specified does not matter. Matches are always done on the longest-path-first basis. For example: a pathRule with a path /a/b/c/* will match before /a/b/* irrespective of the order in which those paths appear in this list. Within a given pathMatcher, only one of pathRules or routeRules must be set. Structure is documented below.

property routeRules

routeRules?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRule>[]>;

The list of ordered HTTP route rules. Use this list instead of pathRules when advanced route matching and routing actions are desired. The order of specifying routeRules matters: the first rule that matches will cause its specified routing action to take effect. Within a given pathMatcher, only one of pathRules or routeRules must be set. routeRules are not supported in UrlMaps intended for External load balancers. Structure is documented below.

interface URLMapPathMatcherDefaultUrlRedirect

interface URLMapPathMatcherDefaultUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false. This field is required to ensure an empty block is not set. The normal default value is false.

interface URLMapPathMatcherHeaderAction

interface URLMapPathMatcherHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface URLMapPathMatcherHeaderActionRequestHeadersToAdd

interface URLMapPathMatcherHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherHeaderActionResponseHeadersToAdd

interface URLMapPathMatcherHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherPathRule

interface URLMapPathMatcherPathRule

property paths

paths: pulumi.Input<pulumi.Input<string>[]>;

The list of path patterns to match. Each must start with / and the only place a * is allowed is at the end following a /. The string fed to the path matcher does not include any text after the first ? or #, and those chars are not allowed here.

property routeAction

routeAction?: pulumi.Input<URLMapPathMatcherPathRuleRouteAction>;

In response to a matching matchRule, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of routeAction or urlRedirect must be set. Structure is documented below.

property service

service?: pulumi.Input<string>;

The backend service or backend bucket link that should be matched by this test.

property urlRedirect

urlRedirect?: pulumi.Input<URLMapPathMatcherPathRuleUrlRedirect>;

When this rule is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Structure is documented below.

interface URLMapPathMatcherPathRuleRouteAction

interface URLMapPathMatcherPathRuleRouteAction

property corsPolicy

corsPolicy?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionCorsPolicy>;

The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing Structure is documented below.

property faultInjectionPolicy

faultInjectionPolicy?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicy>;

The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. timeout and retryPolicy will be ignored by clients that are configured with a fault_injection_policy. Structure is documented below.

property requestMirrorPolicy

requestMirrorPolicy?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionRequestMirrorPolicy>;

Specifies the policy on how requests intended for the route’s backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Structure is documented below.

property retryPolicy

retryPolicy?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionRetryPolicy>;

Specifies the retry policy associated with this route. Structure is documented below.

property timeout

timeout?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionTimeout>;

Specifies the timeout for the selected route. Timeout is computed from the time the request is has been fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries. If not specified, the default value is 15 seconds. Structure is documented below.

property urlRewrite

urlRewrite?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionUrlRewrite>;

The spec to modify the URL of the request, prior to forwarding the request to the matched service Structure is documented below.

property weightedBackendServices

weightedBackendServices?: pulumi.Input<pulumi.Input<URLMapPathMatcherPathRuleRouteActionWeightedBackendService>[]>;

A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non 0 number. Once a backendService is identified and before forwarding the request to the backend service, advanced routing actions like Url rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction. Structure is documented below.

interface URLMapPathMatcherPathRuleRouteActionCorsPolicy

interface URLMapPathMatcherPathRuleRouteActionCorsPolicy

property allowCredentials

allowCredentials?: pulumi.Input<boolean>;

In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This translates to the Access- Control-Allow-Credentials header. Defaults to false.

property allowHeaders

allowHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Headers header.

property allowMethods

allowMethods?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Methods header.

property allowOriginRegexes

allowOriginRegexes?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the regualar expression patterns that match allowed origins. For regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property allowOrigins

allowOrigins?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the list of origins that will be allowed to do CORS requests. An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property disabled

disabled: pulumi.Input<boolean>;

If true, specifies the CORS policy is disabled. which indicates that the CORS policy is in effect. Defaults to false.

property exposeHeaders

exposeHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Expose-Headers header.

property maxAge

maxAge?: pulumi.Input<number>;

Specifies how long the results of a preflight request can be cached. This translates to the content for the Access-Control-Max-Age header.

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicy

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicy

property abort

abort?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort>;

The specification for how client requests are aborted as part of fault injection. Structure is documented below.

property delay

delay?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay>;

The specification for how client requests are delayed as part of fault injection, before being sent to a backend service. Structure is documented below.

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyAbort

property httpStatus

httpStatus: pulumi.Input<number>;

The HTTP status code used to abort the request. The value must be between 200 and 599 inclusive.

property percentage

percentage: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelay

property fixedDelay

fixedDelay: pulumi.Input<URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay>;

Specifies the value of the fixed delay interval. Structure is documented below.

property percentage

percentage: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay

interface URLMapPathMatcherPathRuleRouteActionFaultInjectionPolicyDelayFixedDelay

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface URLMapPathMatcherPathRuleRouteActionRequestMirrorPolicy

interface URLMapPathMatcherPathRuleRouteActionRequestMirrorPolicy

property backendService

backendService: pulumi.Input<string>;

The default BackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

interface URLMapPathMatcherPathRuleRouteActionRetryPolicy

interface URLMapPathMatcherPathRuleRouteActionRetryPolicy

property numRetries

numRetries?: pulumi.Input<number>;

Specifies the allowed number retries. This number must be > 0.

property perTryTimeout

perTryTimeout?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout>;

Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route. Structure is documented below.

property retryConditions

retryConditions?: pulumi.Input<pulumi.Input<string>[]>;

Specfies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream: Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable

interface URLMapPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout

interface URLMapPathMatcherPathRuleRouteActionRetryPolicyPerTryTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface URLMapPathMatcherPathRuleRouteActionTimeout

interface URLMapPathMatcherPathRuleRouteActionTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface URLMapPathMatcherPathRuleRouteActionUrlRewrite

interface URLMapPathMatcherPathRuleRouteActionUrlRewrite

property hostRewrite

hostRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected service, the request’s host header is replaced with contents of hostRewrite. The value must be between 1 and 255 characters.

property pathPrefixRewrite

pathPrefixRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected backend service, the matching portion of the request’s path is replaced by pathPrefixRewrite. The value must be between 1 and 1024 characters.

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendService

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendService

property backendService

backendService: pulumi.Input<string>;

The default BackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

property headerAction

headerAction?: pulumi.Input<URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property weight

weight: pulumi.Input<number>;

Specifies the fraction of traffic sent to backendService, computed as weight / (sum of all weightedBackendService weights in routeAction) . The selection of a backend service is determined only for new traffic. Once a user’s request has been directed to a backendService, subsequent requests will be sent to the same backendService as determined by the BackendService’s session affinity policy. The value must be between 0 and 1000

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderAction

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

interface URLMapPathMatcherPathRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherPathRuleUrlRedirect

interface URLMapPathMatcherPathRuleUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false. This field is required to ensure an empty block is not set. The normal default value is false.

interface URLMapPathMatcherRouteRule

interface URLMapPathMatcherRouteRule

property headerAction

headerAction?: pulumi.Input<URLMapPathMatcherRouteRuleHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property matchRules

matchRules?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleMatchRule>[]>;

The rules for determining a match. Structure is documented below.

property priority

priority: pulumi.Input<number>;

For routeRules within a given pathMatcher, priority determines the order in which load balancer will interpret routeRules. RouteRules are evaluated in order of priority, from the lowest to highest number. The priority of a rule decreases as its number increases (1, 2, 3, N+1). The first rule that matches the request is applied. You cannot configure two or more routeRules with the same priority. Priority for each rule must be set to a number between 0 and 2147483647 inclusive. Priority numbers can have gaps, which enable you to add or remove rules in the future without affecting the rest of the rules. For example, 1, 2, 3, 4, 5, 9, 12, 16 is a valid series of priority numbers to which you could add rules numbered from 6 to 8, 10 to 11, and 13 to 15 in the future without any impact on existing rules.

property routeAction

routeAction?: pulumi.Input<URLMapPathMatcherRouteRuleRouteAction>;

In response to a matching matchRule, the load balancer performs advanced routing actions like URL rewrites, header transformations, etc. prior to forwarding the request to the selected backend. If routeAction specifies any weightedBackendServices, service must not be set. Conversely if service is set, routeAction cannot contain any weightedBackendServices. Only one of routeAction or urlRedirect must be set. Structure is documented below.

property service

service?: pulumi.Input<string>;

The backend service or backend bucket link that should be matched by this test.

property urlRedirect

urlRedirect?: pulumi.Input<URLMapPathMatcherRouteRuleUrlRedirect>;

When this rule is matched, the request is redirected to a URL specified by urlRedirect. If urlRedirect is specified, service or routeAction must not be set. Structure is documented below.

interface URLMapPathMatcherRouteRuleHeaderAction

interface URLMapPathMatcherRouteRuleHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface URLMapPathMatcherRouteRuleHeaderActionRequestHeadersToAdd

interface URLMapPathMatcherRouteRuleHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherRouteRuleHeaderActionResponseHeadersToAdd

interface URLMapPathMatcherRouteRuleHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherRouteRuleMatchRule

interface URLMapPathMatcherRouteRuleMatchRule

property fullPathMatch

fullPathMatch?: pulumi.Input<string>;

For satifying the matchRule condition, the path of the request must exactly match the value specified in fullPathMatch after removing any query parameters and anchor that may be part of the original URL. FullPathMatch must be between 1 and 1024 characters. Only one of prefixMatch, fullPathMatch or regexMatch must be specified.

property headerMatches

headerMatches?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleMatchRuleHeaderMatch>[]>;

Specifies a list of header match criteria, all of which must match corresponding headers in the request. Structure is documented below.

property ignoreCase

ignoreCase?: pulumi.Input<boolean>;

Specifies that prefixMatch and fullPathMatch matches are case sensitive. Defaults to false.

property metadataFilters

metadataFilters?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleMatchRuleMetadataFilter>[]>;

Opaque filter criteria used by Loadbalancer to restrict routing configuration to a limited set xDS compliant clients. In their xDS requests to Loadbalancer, xDS clients present node metadata. If a match takes place, the relevant routing configuration is made available to those proxies. For each metadataFilter in this list, if its filterMatchCriteria is set to MATCH_ANY, at least one of the filterLabels must match the corresponding label provided in the metadata. If its filterMatchCriteria is set to MATCH_ALL, then all of its filterLabels must match with corresponding labels in the provided metadata. metadataFilters specified here can be overrides those specified in ForwardingRule that refers to this UrlMap. metadataFilters only applies to Loadbalancers that have their loadBalancingScheme set to INTERNAL_SELF_MANAGED. Structure is documented below.

property prefixMatch

prefixMatch?: pulumi.Input<string>;

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

property queryParameterMatches

queryParameterMatches?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatch>[]>;

Specifies a list of query parameter match criteria, all of which must match corresponding query parameters in the request. Structure is documented below.

property regexMatch

regexMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch, exactMatch and regexMatch must be set.

interface URLMapPathMatcherRouteRuleMatchRuleHeaderMatch

interface URLMapPathMatcherRouteRuleMatchRuleHeaderMatch

property exactMatch

exactMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch must be set.

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property invertMatch

invertMatch?: pulumi.Input<boolean>;

If set to false, the headerMatch is considered a match if the match criteria above are met. If set to true, the headerMatch is considered a match if the match criteria above are NOT met. Defaults to false.

property prefixMatch

prefixMatch?: pulumi.Input<string>;

The value of the header must start with the contents of prefixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

property presentMatch

presentMatch?: pulumi.Input<boolean>;

Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch and regexMatch must be set.

property rangeMatch

rangeMatch?: pulumi.Input<URLMapPathMatcherRouteRuleMatchRuleHeaderMatchRangeMatch>;

The header value must be an integer and its value must be in the range specified in rangeMatch. If the header does not contain an integer, number or is empty, the match fails. For example for a range [-5, 0] - -3 will match. - 0 will not match. - 0.25 will not match. - -3someString will not match. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set. Structure is documented below.

property regexMatch

regexMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch, exactMatch and regexMatch must be set.

property suffixMatch

suffixMatch?: pulumi.Input<string>;

The value of the header must end with the contents of suffixMatch. Only one of exactMatch, prefixMatch, suffixMatch, regexMatch, presentMatch or rangeMatch must be set.

interface URLMapPathMatcherRouteRuleMatchRuleHeaderMatchRangeMatch

interface URLMapPathMatcherRouteRuleMatchRuleHeaderMatchRangeMatch

property rangeEnd

rangeEnd: pulumi.Input<number>;

The end of the range (exclusive).

property rangeStart

rangeStart: pulumi.Input<number>;

The start of the range (inclusive).

interface URLMapPathMatcherRouteRuleMatchRuleMetadataFilter

interface URLMapPathMatcherRouteRuleMatchRuleMetadataFilter

property filterLabels

filterLabels: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleMatchRuleMetadataFilterFilterLabel>[]>;

The list of label value pairs that must match labels in the provided metadata based on filterMatchCriteria This list must not be empty and can have at the most 64 entries. Structure is documented below.

property filterMatchCriteria

filterMatchCriteria: pulumi.Input<string>;

Specifies how individual filterLabel matches within the list of filterLabels contribute towards the overall metadataFilter match. Supported values are: - MATCH_ANY: At least one of the filterLabels must have a matching label in the provided metadata. - MATCH_ALL: All filterLabels must have matching labels in the provided metadata.

interface URLMapPathMatcherRouteRuleMatchRuleMetadataFilterFilterLabel

interface URLMapPathMatcherRouteRuleMatchRuleMetadataFilterFilterLabel

property name

name: pulumi.Input<string>;

The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.

property value

value: pulumi.Input<string>;

The value of the label must match the specified value. value can have a maximum length of 1024 characters.

interface URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatch

interface URLMapPathMatcherRouteRuleMatchRuleQueryParameterMatch

property exactMatch

exactMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter exactly matches the contents of exactMatch. Only one of presentMatch, exactMatch and regexMatch must be set.

property name

name: pulumi.Input<string>;

The name of the query parameter to match. The query parameter must exist in the request, in the absence of which the request match fails.

property presentMatch

presentMatch?: pulumi.Input<boolean>;

Specifies that the queryParameterMatch matches if the request contains the query parameter, irrespective of whether the parameter has a value or not. Only one of presentMatch, exactMatch and regexMatch must be set.

property regexMatch

regexMatch?: pulumi.Input<string>;

The queryParameterMatch matches if the value of the parameter matches the regular expression specified by regexMatch. For the regular expression grammar, please see en.cppreference.com/w/cpp/regex/ecmascript Only one of presentMatch, exactMatch and regexMatch must be set.

interface URLMapPathMatcherRouteRuleRouteAction

interface URLMapPathMatcherRouteRuleRouteAction

property corsPolicy

corsPolicy?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionCorsPolicy>;

The specification for allowing client side cross-origin requests. Please see W3C Recommendation for Cross Origin Resource Sharing Structure is documented below.

property faultInjectionPolicy

faultInjectionPolicy?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicy>;

The specification for fault injection introduced into traffic to test the resiliency of clients to backend service failure. As part of fault injection, when clients send requests to a backend service, delays can be introduced by Loadbalancer on a percentage of requests before sending those request to the backend service. Similarly requests from clients can be aborted by the Loadbalancer for a percentage of requests. timeout and retryPolicy will be ignored by clients that are configured with a fault_injection_policy. Structure is documented below.

property requestMirrorPolicy

requestMirrorPolicy?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionRequestMirrorPolicy>;

Specifies the policy on how requests intended for the route’s backends are shadowed to a separate mirrored backend service. Loadbalancer does not wait for responses from the shadow service. Prior to sending traffic to the shadow service, the host / authority header is suffixed with -shadow. Structure is documented below.

property retryPolicy

retryPolicy?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionRetryPolicy>;

Specifies the retry policy associated with this route. Structure is documented below.

property timeout

timeout?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionTimeout>;

Specifies the timeout for the selected route. Timeout is computed from the time the request is has been fully processed (i.e. end-of-stream) up until the response has been completely processed. Timeout includes all retries. If not specified, the default value is 15 seconds. Structure is documented below.

property urlRewrite

urlRewrite?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionUrlRewrite>;

The spec to modify the URL of the request, prior to forwarding the request to the matched service Structure is documented below.

property weightedBackendServices

weightedBackendServices?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleRouteActionWeightedBackendService>[]>;

A list of weighted backend services to send traffic to when a route match occurs. The weights determine the fraction of traffic that flows to their corresponding backend service. If all traffic needs to go to a single backend service, there must be one weightedBackendService with weight set to a non 0 number. Once a backendService is identified and before forwarding the request to the backend service, advanced routing actions like Url rewrites and header transformations are applied depending on additional settings specified in this HttpRouteAction. Structure is documented below.

interface URLMapPathMatcherRouteRuleRouteActionCorsPolicy

interface URLMapPathMatcherRouteRuleRouteActionCorsPolicy

property allowCredentials

allowCredentials?: pulumi.Input<boolean>;

In response to a preflight request, setting this to true indicates that the actual request can include user credentials. This translates to the Access- Control-Allow-Credentials header. Defaults to false.

property allowHeaders

allowHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Headers header.

property allowMethods

allowMethods?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Allow-Methods header.

property allowOriginRegexes

allowOriginRegexes?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the regualar expression patterns that match allowed origins. For regular expression grammar please see en.cppreference.com/w/cpp/regex/ecmascript An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property allowOrigins

allowOrigins?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the list of origins that will be allowed to do CORS requests. An origin is allowed if it matches either allowOrigins or allow_origin_regex.

property disabled

disabled?: pulumi.Input<boolean>;

If true, specifies the CORS policy is disabled. which indicates that the CORS policy is in effect. Defaults to false.

property exposeHeaders

exposeHeaders?: pulumi.Input<pulumi.Input<string>[]>;

Specifies the content for the Access-Control-Expose-Headers header.

property maxAge

maxAge?: pulumi.Input<number>;

Specifies how long the results of a preflight request can be cached. This translates to the content for the Access-Control-Max-Age header.

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicy

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicy

property abort

abort?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyAbort>;

The specification for how client requests are aborted as part of fault injection. Structure is documented below.

property delay

delay?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelay>;

The specification for how client requests are delayed as part of fault injection, before being sent to a backend service. Structure is documented below.

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyAbort

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyAbort

property httpStatus

httpStatus?: pulumi.Input<number>;

The HTTP status code used to abort the request. The value must be between 200 and 599 inclusive.

property percentage

percentage?: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelay

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelay

property fixedDelay

fixedDelay?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelayFixedDelay>;

Specifies the value of the fixed delay interval. Structure is documented below.

property percentage

percentage?: pulumi.Input<number>;

The percentage of traffic (connections/operations/requests) on which delay will be introduced as part of fault injection. The value must be between 0.0 and 100.0 inclusive.

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelayFixedDelay

interface URLMapPathMatcherRouteRuleRouteActionFaultInjectionPolicyDelayFixedDelay

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface URLMapPathMatcherRouteRuleRouteActionRequestMirrorPolicy

interface URLMapPathMatcherRouteRuleRouteActionRequestMirrorPolicy

property backendService

backendService: pulumi.Input<string>;

The default BackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

interface URLMapPathMatcherRouteRuleRouteActionRetryPolicy

interface URLMapPathMatcherRouteRuleRouteActionRetryPolicy

property numRetries

numRetries: pulumi.Input<number>;

Specifies the allowed number retries. This number must be > 0.

property perTryTimeout

perTryTimeout?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionRetryPolicyPerTryTimeout>;

Specifies a non-zero timeout per retry attempt. If not specified, will use the timeout set in HttpRouteAction. If timeout in HttpRouteAction is not set, will use the largest timeout among all backend services associated with the route. Structure is documented below.

property retryConditions

retryConditions?: pulumi.Input<pulumi.Input<string>[]>;

Specfies one or more conditions when this retry rule applies. Valid values are: - 5xx: Loadbalancer will attempt a retry if the backend service responds with any 5xx response code, or if the backend service does not respond at all, example: disconnects, reset, read timeout, connection failure, and refused streams. - gateway-error: Similar to 5xx, but only applies to response codes 502, 503 or 504. - connect-failure: Loadbalancer will retry on failures connecting to backend services, for example due to connection timeouts. - retriable-4xx: Loadbalancer will retry for retriable 4xx response codes. Currently the only retriable error supported is 409. - refused-stream: Loadbalancer will retry if the backend service resets the stream with a REFUSED_STREAM error code. This reset type indicates that it is safe to retry. - cancelled: Loadbalancer will retry if the gRPC status code in the response header is set to cancelled - deadline-exceeded: Loadbalancer will retry if the gRPC status code in the response header is set to deadline-exceeded - resource-exhausted: Loadbalancer will retry if the gRPC status code in the response header is set to resource-exhausted - unavailable: Loadbalancer will retry if the gRPC status code in the response header is set to unavailable

interface URLMapPathMatcherRouteRuleRouteActionRetryPolicyPerTryTimeout

interface URLMapPathMatcherRouteRuleRouteActionRetryPolicyPerTryTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface URLMapPathMatcherRouteRuleRouteActionTimeout

interface URLMapPathMatcherRouteRuleRouteActionTimeout

property nanos

nanos?: pulumi.Input<number>;

Span of time that’s a fraction of a second at nanosecond resolution. Durations less than one second are represented with a 0 seconds field and a positive nanos field. Must be from 0 to 999,999,999 inclusive.

property seconds

seconds: pulumi.Input<string>;

Span of time at a resolution of a second. Must be from 0 to 315,576,000,000 inclusive.

interface URLMapPathMatcherRouteRuleRouteActionUrlRewrite

interface URLMapPathMatcherRouteRuleRouteActionUrlRewrite

property hostRewrite

hostRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected service, the request’s host header is replaced with contents of hostRewrite. The value must be between 1 and 255 characters.

property pathPrefixRewrite

pathPrefixRewrite?: pulumi.Input<string>;

Prior to forwarding the request to the selected backend service, the matching portion of the request’s path is replaced by pathPrefixRewrite. The value must be between 1 and 1024 characters.

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendService

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendService

property backendService

backendService: pulumi.Input<string>;

The default BackendService resource. Before forwarding the request to backendService, the loadbalancer applies any relevant headerActions specified as part of this backendServiceWeight.

property headerAction

headerAction?: pulumi.Input<URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderAction>;

Specifies changes to request and response headers that need to take effect for the selected backendService. headerAction specified here take effect before headerAction in the enclosing HttpRouteRule, PathMatcher and UrlMap. Structure is documented below.

property weight

weight: pulumi.Input<number>;

Specifies the fraction of traffic sent to backendService, computed as weight / (sum of all weightedBackendService weights in routeAction) . The selection of a backend service is determined only for new traffic. Once a user’s request has been directed to a backendService, subsequent requests will be sent to the same backendService as determined by the BackendService’s session affinity policy. The value must be between 0 and 1000

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderAction

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderAction

property requestHeadersToAdds

requestHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd>[]>;

Headers to add to a matching request prior to forwarding the request to the backendService. Structure is documented below.

property requestHeadersToRemoves

requestHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the request prior to forwarding the request to the backendService.

property responseHeadersToAdds

responseHeadersToAdds?: pulumi.Input<pulumi.Input<URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd>[]>;

Headers to add the response prior to sending the response back to the client. Structure is documented below.

property responseHeadersToRemoves

responseHeadersToRemoves?: pulumi.Input<pulumi.Input<string>[]>;

A list of header names for headers that need to be removed from the response prior to sending the response back to the client.

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionRequestHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

interface URLMapPathMatcherRouteRuleRouteActionWeightedBackendServiceHeaderActionResponseHeadersToAdd

property headerName

headerName: pulumi.Input<string>;

The name of the header.

property headerValue

headerValue: pulumi.Input<string>;

The value of the header to add.

property replace

replace: pulumi.Input<boolean>;

If false, headerValue is appended to any values that already exist for the header. If true, headerValue is set for the header, discarding any values that were set for that header.

interface URLMapPathMatcherRouteRuleUrlRedirect

interface URLMapPathMatcherRouteRuleUrlRedirect

property hostRedirect

hostRedirect?: pulumi.Input<string>;

The host that will be used in the redirect response instead of the one that was supplied in the request. The value must be between 1 and 255 characters.

property httpsRedirect

httpsRedirect?: pulumi.Input<boolean>;

If set to true, the URL scheme in the redirected request is set to https. If set to false, the URL scheme of the redirected request will remain the same as that of the request. This must only be set for UrlMaps used in TargetHttpProxys. Setting this true for TargetHttpsProxy is not permitted. The default is set to false.

property pathRedirect

pathRedirect?: pulumi.Input<string>;

The path that will be used in the redirect response instead of the one that was supplied in the request. pathRedirect cannot be supplied together with prefixRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property prefixRedirect

prefixRedirect?: pulumi.Input<string>;

The prefix that replaces the prefixMatch specified in the HttpRouteRuleMatch, retaining the remaining portion of the URL before redirecting the request. prefixRedirect cannot be supplied together with pathRedirect. Supply one alone or neither. If neither is supplied, the path of the original request will be used for the redirect. The value must be between 1 and 1024 characters.

property redirectResponseCode

redirectResponseCode?: pulumi.Input<string>;

The HTTP Status code to use for this RedirectAction. Supported values are: - MOVED_PERMANENTLY_DEFAULT, which is the default value and corresponds to 301. - FOUND, which corresponds to 302. - SEE_OTHER which corresponds to 303. - TEMPORARY_REDIRECT, which corresponds to 307. In this case, the request method will be retained. - PERMANENT_REDIRECT, which corresponds to 308. In this case, the request method will be retained.

property stripQuery

stripQuery?: pulumi.Input<boolean>;

If set to true, any accompanying query portion of the original URL is removed prior to redirecting the request. If set to false, the query portion of the original URL is retained. The default is set to false. This field is required to ensure an empty block is not set. The normal default value is false.

interface URLMapTest

interface URLMapTest

property description

description?: pulumi.Input<string>;

Description of this test case.

property host

host: pulumi.Input<string>;

Host portion of the URL.

property path

path: pulumi.Input<string>;

Path portion of the URL.

property service

service: pulumi.Input<string>;

The backend service or backend bucket link that should be matched by this test.

namespace container

interface ClusterAddonsConfig

interface ClusterAddonsConfig

property cloudrunConfig

cloudrunConfig?: pulumi.Input<ClusterAddonsConfigCloudrunConfig>;

. The status of the CloudRun addon. It is disabled by default. Set disabled = false to enable.

property configConnectorConfig

configConnectorConfig?: pulumi.Input<ClusterAddonsConfigConfigConnectorConfig>;

. The status of the ConfigConnector addon. It is disabled by default; Set enabled = true to enable.

property dnsCacheConfig

dnsCacheConfig?: pulumi.Input<ClusterAddonsConfigDnsCacheConfig>;

. The status of the NodeLocal DNSCache addon. It is disabled by default. Set enabled = true to enable.

property gcePersistentDiskCsiDriverConfig

gcePersistentDiskCsiDriverConfig?: pulumi.Input<ClusterAddonsConfigGcePersistentDiskCsiDriverConfig>;

. Whether this cluster should enable the Google Compute Engine Persistent Disk Container Storage Interface (CSI) Driver. Defaults to disabled; set enabled = true to enable.

property horizontalPodAutoscaling

horizontalPodAutoscaling?: pulumi.Input<ClusterAddonsConfigHorizontalPodAutoscaling>;

The status of the Horizontal Pod Autoscaling addon, which increases or decreases the number of replica pods a replication controller has based on the resource usage of the existing pods. It ensures that a Heapster pod is running in the cluster, which is also used by the Cloud Monitoring service. It is enabled by default; set disabled = true to disable.

property httpLoadBalancing

httpLoadBalancing?: pulumi.Input<ClusterAddonsConfigHttpLoadBalancing>;

The status of the HTTP (L7) load balancing controller addon, which makes it easy to set up HTTP load balancers for services in a cluster. It is enabled by default; set disabled = true to disable.

property istioConfig

istioConfig?: pulumi.Input<ClusterAddonsConfigIstioConfig>;

. Structure is documented below.

property kalmConfig

kalmConfig?: pulumi.Input<ClusterAddonsConfigKalmConfig>;

. Configuration for the KALM addon, which manages the lifecycle of k8s. It is disabled by default; Set enabled = true to enable.

property networkPolicyConfig

networkPolicyConfig?: pulumi.Input<ClusterAddonsConfigNetworkPolicyConfig>;

Whether we should enable the network policy addon for the master. This must be enabled in order to enable network policy for the nodes. To enable this, you must also define a networkPolicy block, otherwise nothing will happen. It can only be disabled if the nodes already do not have network policies enabled. Defaults to disabled; set disabled = false to enable.

interface ClusterAddonsConfigCloudrunConfig

interface ClusterAddonsConfigCloudrunConfig

property disabled

disabled: pulumi.Input<boolean>;

The status of the Istio addon, which makes it easy to set up Istio for services in a cluster. It is disabled by default. Set disabled = false to enable.

interface ClusterAddonsConfigConfigConnectorConfig

interface ClusterAddonsConfigConfigConnectorConfig

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

interface ClusterAddonsConfigDnsCacheConfig

interface ClusterAddonsConfigDnsCacheConfig

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

interface ClusterAddonsConfigGcePersistentDiskCsiDriverConfig

interface ClusterAddonsConfigGcePersistentDiskCsiDriverConfig

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

interface ClusterAddonsConfigHorizontalPodAutoscaling

interface ClusterAddonsConfigHorizontalPodAutoscaling

property disabled

disabled: pulumi.Input<boolean>;

The status of the Istio addon, which makes it easy to set up Istio for services in a cluster. It is disabled by default. Set disabled = false to enable.

interface ClusterAddonsConfigHttpLoadBalancing

interface ClusterAddonsConfigHttpLoadBalancing

property disabled

disabled: pulumi.Input<boolean>;

The status of the Istio addon, which makes it easy to set up Istio for services in a cluster. It is disabled by default. Set disabled = false to enable.

interface ClusterAddonsConfigIstioConfig

interface ClusterAddonsConfigIstioConfig

property auth

auth?: pulumi.Input<string>;

The authentication type between services in Istio. Available options include AUTH_MUTUAL_TLS.

property disabled

disabled: pulumi.Input<boolean>;

The status of the Istio addon, which makes it easy to set up Istio for services in a cluster. It is disabled by default. Set disabled = false to enable.

interface ClusterAddonsConfigKalmConfig

interface ClusterAddonsConfigKalmConfig

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

interface ClusterAddonsConfigNetworkPolicyConfig

interface ClusterAddonsConfigNetworkPolicyConfig

property disabled

disabled: pulumi.Input<boolean>;

The status of the Istio addon, which makes it easy to set up Istio for services in a cluster. It is disabled by default. Set disabled = false to enable.

interface ClusterAuthenticatorGroupsConfig

interface ClusterAuthenticatorGroupsConfig

property securityGroup

securityGroup: pulumi.Input<string>;

The name of the RBAC security group for use with Google security groups in Kubernetes RBAC. Group name must be in format gke-security-groups@yourdomain.com.

interface ClusterClusterAutoscaling

interface ClusterClusterAutoscaling

property autoProvisioningDefaults

autoProvisioningDefaults?: pulumi.Input<ClusterClusterAutoscalingAutoProvisioningDefaults>;

Contains defaults for a node pool created by NAP. Structure is documented below.

property autoscalingProfile

autoscalingProfile?: pulumi.Input<string>;

) Configuration options for the Autoscaling profile feature, which lets you choose whether the cluster autoscaler should optimize for resource utilization or resource availability when deciding to remove nodes from a cluster. Can be BALANCED or OPTIMIZE_UTILIZATION. Defaults to BALANCED.

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

property resourceLimits

resourceLimits?: pulumi.Input<pulumi.Input<ClusterClusterAutoscalingResourceLimit>[]>;

Global constraints for machine resources in the cluster. Configuring the cpu and memory types is required if node auto-provisioning is enabled. These limits will apply to node pool autoscaling in addition to node auto-provisioning. Structure is documented below.

interface ClusterClusterAutoscalingAutoProvisioningDefaults

interface ClusterClusterAutoscalingAutoProvisioningDefaults

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell. See the official documentation for more information.

property oauthScopes

oauthScopes?: pulumi.Input<pulumi.Input<string>[]>;

The set of Google API scopes to be made available on all of the node VMs under the “default” service account. These can be either FQDNs, or scope aliases. The following scopes are necessary to ensure the correct functioning of the cluster:

property serviceAccount

serviceAccount?: pulumi.Input<string>;

The service account to be used by the Node VMs. If not specified, the “default” service account is used. In order to use the configured oauthScopes for logging and monitoring, the service account being used needs the roles/logging.logWriter and roles/monitoring.metricWriter roles.

interface ClusterClusterAutoscalingResourceLimit

interface ClusterClusterAutoscalingResourceLimit

property maximum

maximum?: pulumi.Input<number>;

Maximum amount of the resource in the cluster.

property minimum

minimum?: pulumi.Input<number>;

Minimum amount of the resource in the cluster.

property resourceType

resourceType: pulumi.Input<string>;

The type of the resource. For example, cpu and memory. See the guide to using Node Auto-Provisioning for a list of types.

interface ClusterDatabaseEncryption

interface ClusterDatabaseEncryption

property keyName

keyName?: pulumi.Input<string>;

the key to use to encrypt/decrypt secrets. See the DatabaseEncryption definition for more information.

property state

state: pulumi.Input<string>;

ENCRYPTED or DECRYPTED

interface ClusterIpAllocationPolicy

interface ClusterIpAllocationPolicy

property clusterIpv4CidrBlock

clusterIpv4CidrBlock?: pulumi.Input<string>;

The IP address range for the cluster pod IPs. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

property clusterSecondaryRangeName

clusterSecondaryRangeName?: pulumi.Input<string>;

The name of the existing secondary range in the cluster’s subnetwork to use for pod IP addresses. Alternatively, clusterIpv4CidrBlock can be used to automatically create a GKE-managed one.

property servicesIpv4CidrBlock

servicesIpv4CidrBlock?: pulumi.Input<string>;

The IP address range of the services IPs in this cluster. Set to blank to have a range chosen with the default size. Set to /netmask (e.g. /14) to have a range chosen with a specific netmask. Set to a CIDR notation (e.g. 10.96.0.0/14) from the RFC-1918 private networks (e.g. 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16) to pick a specific range to use.

property servicesSecondaryRangeName

servicesSecondaryRangeName?: pulumi.Input<string>;

The name of the existing secondary range in the cluster’s subnetwork to use for service ClusterIPs. Alternatively, servicesIpv4CidrBlock can be used to automatically create a GKE-managed one.

interface ClusterMaintenancePolicy

interface ClusterMaintenancePolicy

property dailyMaintenanceWindow

dailyMaintenanceWindow?: pulumi.Input<ClusterMaintenancePolicyDailyMaintenanceWindow>;

Time window specified for daily maintenance operations. Specify startTime in RFC3339 format “HH:MM”, where HH : [00-23] and MM : [00-59] GMT. For example:

property recurringWindow

recurringWindow?: pulumi.Input<ClusterMaintenancePolicyRecurringWindow>;

Time window for recurring maintenance operations.

interface ClusterMaintenancePolicyDailyMaintenanceWindow

interface ClusterMaintenancePolicyDailyMaintenanceWindow

property duration

duration?: pulumi.Input<string>;

property startTime

startTime: pulumi.Input<string>;

interface ClusterMaintenancePolicyRecurringWindow

interface ClusterMaintenancePolicyRecurringWindow

property endTime

endTime: pulumi.Input<string>;

property recurrence

recurrence: pulumi.Input<string>;

property startTime

startTime: pulumi.Input<string>;

interface ClusterMasterAuth

interface ClusterMasterAuth

property clientCertificate

clientCertificate?: pulumi.Input<string>;

property clientCertificateConfig

clientCertificateConfig?: pulumi.Input<ClusterMasterAuthClientCertificateConfig>;

Whether client certificate authorization is enabled for this cluster. For example:

property clientKey

clientKey?: pulumi.Input<string>;

property clusterCaCertificate

clusterCaCertificate?: pulumi.Input<string>;

property password

password?: pulumi.Input<string>;

The password to use for HTTP basic authentication when accessing the Kubernetes master endpoint.

property username

username?: pulumi.Input<string>;

The username to use for HTTP basic authentication when accessing the Kubernetes master endpoint. If not present basic auth will be disabled.

interface ClusterMasterAuthClientCertificateConfig

interface ClusterMasterAuthClientCertificateConfig

property issueClientCertificate

issueClientCertificate: pulumi.Input<boolean>;

interface ClusterMasterAuthorizedNetworksConfig

interface ClusterMasterAuthorizedNetworksConfig

property cidrBlocks

cidrBlocks?: pulumi.Input<pulumi.Input<ClusterMasterAuthorizedNetworksConfigCidrBlock>[]>;

External networks that can access the Kubernetes cluster master through HTTPS.

interface ClusterMasterAuthorizedNetworksConfigCidrBlock

interface ClusterMasterAuthorizedNetworksConfigCidrBlock

property cidrBlock

cidrBlock: pulumi.Input<string>;

External network that can access Kubernetes master through HTTPS. Must be specified in CIDR notation.

property displayName

displayName?: pulumi.Input<string>;

Field for users to identify CIDR blocks.

interface ClusterNetworkPolicy

interface ClusterNetworkPolicy

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

property provider

provider?: pulumi.Input<string>;

The selected network policy provider. Defaults to PROVIDER_UNSPECIFIED.

interface ClusterNodeConfig

interface ClusterNodeConfig

property bootDiskKmsKey

bootDiskKmsKey?: pulumi.Input<string>;

The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. This should be of the form projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. For more information about protecting resources with Cloud KMS Keys please see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption

property diskSizeGb

diskSizeGb?: pulumi.Input<number>;

Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. Defaults to 100GB.

property diskType

diskType?: pulumi.Input<string>;

Type of the disk attached to each node (e.g. ‘pd-standard’ or ‘pd-ssd’). If unspecified, the default disk type is ‘pd-standard’

property guestAccelerators

guestAccelerators?: pulumi.Input<pulumi.Input<ClusterNodeConfigGuestAccelerator>[]>;

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

property imageType

imageType?: pulumi.Input<string>;

The image type to use for this node. Note that changing the image type will delete and recreate all nodes in the node pool.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

The Kubernetes labels (key/value pairs) to be applied to each node.

property localSsdCount

localSsdCount?: pulumi.Input<number>;

The amount of local SSD disks that will be attached to each cluster node. Defaults to 0.

property machineType

machineType?: pulumi.Input<string>;

The name of a Google Compute Engine machine type. Defaults to n1-standard-1. To create a custom machine type, value should be set as specified here.

property metadata

metadata?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

The metadata key/value pairs assigned to instances in the cluster. From GKE 1.12 onwards, disable-legacy-endpoints is set to true by the API; if metadata is set but that default value is not included, the provider will attempt to unset the value. To avoid this, set the value in your config.

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell. See the official documentation for more information.

property oauthScopes

oauthScopes?: pulumi.Input<pulumi.Input<string>[]>;

The set of Google API scopes to be made available on all of the node VMs under the “default” service account. These can be either FQDNs, or scope aliases. The following scopes are necessary to ensure the correct functioning of the cluster:

property preemptible

preemptible?: pulumi.Input<boolean>;

A boolean that represents whether or not the underlying node VMs are preemptible. See the official documentation for more information. Defaults to false.

property sandboxConfig

sandboxConfig?: pulumi.Input<ClusterNodeConfigSandboxConfig>;

GKE Sandbox configuration. When enabling this feature you must specify imageType = "COS_CONTAINERD" and nodeVersion = "1.12.7-gke.17" or later to use it. Structure is documented below.

property serviceAccount

serviceAccount?: pulumi.Input<string>;

The service account to be used by the Node VMs. If not specified, the “default” service account is used. In order to use the configured oauthScopes for logging and monitoring, the service account being used needs the roles/logging.logWriter and roles/monitoring.metricWriter roles.

property shieldedInstanceConfig

shieldedInstanceConfig?: pulumi.Input<ClusterNodeConfigShieldedInstanceConfig>;

Shielded Instance options. Structure is documented below.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

The list of instance tags applied to all nodes. Tags are used to identify valid sources or targets for network firewalls.

property taints

taints?: pulumi.Input<pulumi.Input<ClusterNodeConfigTaint>[]>;

A list of Kubernetes taints to apply to nodes. GKE’s API can only set this field on cluster creation. However, GKE will add taints to your nodes if you enable certain features such as GPUs. If this field is set, any diffs on this field will cause the provider to recreate the underlying resource. Taint values can be updated safely in Kubernetes (eg. through kubectl), and it’s recommended that you do not use this field to manage taints. If you do, lifecycle.ignore_changes is recommended. Structure is documented below.

property workloadMetadataConfig

workloadMetadataConfig?: pulumi.Input<ClusterNodeConfigWorkloadMetadataConfig>;

Metadata configuration to expose to workloads on the node pool. Structure is documented below.

interface ClusterNodeConfigGuestAccelerator

interface ClusterNodeConfigGuestAccelerator

property count

count: pulumi.Input<number>;

The number of the guest accelerator cards exposed to this instance.

property type

type: pulumi.Input<string>;

The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.

interface ClusterNodeConfigSandboxConfig

interface ClusterNodeConfigSandboxConfig

property sandboxType

sandboxType: pulumi.Input<string>;

Which sandbox to use for pods in the node pool. Accepted values are:

interface ClusterNodeConfigShieldedInstanceConfig

interface ClusterNodeConfigShieldedInstanceConfig

property enableIntegrityMonitoring

enableIntegrityMonitoring?: pulumi.Input<boolean>;

Defines if the instance has integrity monitoring enabled.

property enableSecureBoot

enableSecureBoot?: pulumi.Input<boolean>;

Defines if the instance has Secure Boot enabled.

interface ClusterNodeConfigTaint

interface ClusterNodeConfigTaint

property effect

effect: pulumi.Input<string>;

Effect for taint. Accepted values are NO_SCHEDULE, PREFER_NO_SCHEDULE, and NO_EXECUTE.

property key

key: pulumi.Input<string>;

Key for taint.

property value

value: pulumi.Input<string>;

Value for taint.

interface ClusterNodeConfigWorkloadMetadataConfig

interface ClusterNodeConfigWorkloadMetadataConfig

property nodeMetadata

nodeMetadata: pulumi.Input<string>;

How to expose the node metadata to the workload running on the node. Accepted values are: * UNSPECIFIED: Not Set * SECURE: Prevent workloads not in hostNetwork from accessing certain VM metadata, specifically kube-env, which contains Kubelet credentials, and the instance identity token. See Metadata Concealment documentation. * EXPOSE: Expose all VM metadata to pods. * GKE_METADATA_SERVER: Enables workload identity on the node.

interface ClusterNodePool

interface ClusterNodePool

property autoscaling

autoscaling?: pulumi.Input<ClusterNodePoolAutoscaling>;

property initialNodeCount

initialNodeCount?: pulumi.Input<number>;

The number of nodes to create in this cluster’s default node pool. In regional or multi-zonal clusters, this is the number of nodes per zone. Must be set if nodePool is not set. If you’re using gcp.container.NodePool objects with no default node pool, you’ll need to set this to a value of at least 1, alongside setting removeDefaultNodePool to true.

property instanceGroupUrls

instanceGroupUrls?: pulumi.Input<pulumi.Input<string>[]>;

List of instance group URLs which have been assigned to the cluster.

property management

management?: pulumi.Input<ClusterNodePoolManagement>;

property maxPodsPerNode

maxPodsPerNode?: pulumi.Input<number>;

property name

name?: pulumi.Input<string>;

The name of the cluster, unique within the project and location.

property namePrefix

namePrefix?: pulumi.Input<string>;

property nodeConfig

nodeConfig?: pulumi.Input<ClusterNodePoolNodeConfig>;

Parameters used in creating the default node pool. Generally, this field should not be used at the same time as a gcp.container.NodePool or a nodePool block; this configuration manages the default node pool, which isn’t recommended to be used. Structure is documented below.

property nodeCount

nodeCount?: pulumi.Input<number>;

property nodeLocations

nodeLocations?: pulumi.Input<pulumi.Input<string>[]>;

The list of zones in which the cluster’s nodes are located. Nodes must be in the region of their regional cluster or in the same region as their cluster’s zone for zonal clusters. If this is specified for a zonal cluster, omit the cluster’s zone.

property upgradeSettings

upgradeSettings?: pulumi.Input<ClusterNodePoolUpgradeSettings>;

property version

version?: pulumi.Input<string>;

interface ClusterNodePoolAutoscaling

interface ClusterNodePoolAutoscaling

property maxNodeCount

maxNodeCount: pulumi.Input<number>;

property minNodeCount

minNodeCount: pulumi.Input<number>;

interface ClusterNodePoolManagement

interface ClusterNodePoolManagement

property autoRepair

autoRepair?: pulumi.Input<boolean>;

property autoUpgrade

autoUpgrade?: pulumi.Input<boolean>;

interface ClusterNodePoolNodeConfig

interface ClusterNodePoolNodeConfig

property bootDiskKmsKey

bootDiskKmsKey?: pulumi.Input<string>;

The Customer Managed Encryption Key used to encrypt the boot disk attached to each node in the node pool. This should be of the form projects/[KEY_PROJECT_ID]/locations/[LOCATION]/keyRings/[RING_NAME]/cryptoKeys/[KEY_NAME]. For more information about protecting resources with Cloud KMS Keys please see: https://cloud.google.com/compute/docs/disks/customer-managed-encryption

property diskSizeGb

diskSizeGb?: pulumi.Input<number>;

Size of the disk attached to each node, specified in GB. The smallest allowed disk size is 10GB. Defaults to 100GB.

property diskType

diskType?: pulumi.Input<string>;

Type of the disk attached to each node (e.g. ‘pd-standard’ or ‘pd-ssd’). If unspecified, the default disk type is ‘pd-standard’

property guestAccelerators

guestAccelerators?: pulumi.Input<pulumi.Input<ClusterNodePoolNodeConfigGuestAccelerator>[]>;

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

property imageType

imageType?: pulumi.Input<string>;

The image type to use for this node. Note that changing the image type will delete and recreate all nodes in the node pool.

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

The Kubernetes labels (key/value pairs) to be applied to each node.

property localSsdCount

localSsdCount?: pulumi.Input<number>;

The amount of local SSD disks that will be attached to each cluster node. Defaults to 0.

property machineType

machineType?: pulumi.Input<string>;

The name of a Google Compute Engine machine type. Defaults to n1-standard-1. To create a custom machine type, value should be set as specified here.

property metadata

metadata?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

The metadata key/value pairs assigned to instances in the cluster. From GKE 1.12 onwards, disable-legacy-endpoints is set to true by the API; if metadata is set but that default value is not included, the provider will attempt to unset the value. To avoid this, set the value in your config.

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

Minimum CPU platform to be used by this instance. The instance may be scheduled on the specified or newer CPU platform. Applicable values are the friendly names of CPU platforms, such as Intel Haswell. See the official documentation for more information.

property oauthScopes

oauthScopes?: pulumi.Input<pulumi.Input<string>[]>;

The set of Google API scopes to be made available on all of the node VMs under the “default” service account. These can be either FQDNs, or scope aliases. The following scopes are necessary to ensure the correct functioning of the cluster:

property preemptible

preemptible?: pulumi.Input<boolean>;

A boolean that represents whether or not the underlying node VMs are preemptible. See the official documentation for more information. Defaults to false.

property sandboxConfig

sandboxConfig?: pulumi.Input<ClusterNodePoolNodeConfigSandboxConfig>;

GKE Sandbox configuration. When enabling this feature you must specify imageType = "COS_CONTAINERD" and nodeVersion = "1.12.7-gke.17" or later to use it. Structure is documented below.

property serviceAccount

serviceAccount?: pulumi.Input<string>;

The service account to be used by the Node VMs. If not specified, the “default” service account is used. In order to use the configured oauthScopes for logging and monitoring, the service account being used needs the roles/logging.logWriter and roles/monitoring.metricWriter roles.

property shieldedInstanceConfig

shieldedInstanceConfig?: pulumi.Input<ClusterNodePoolNodeConfigShieldedInstanceConfig>;

Shielded Instance options. Structure is documented below.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

The list of instance tags applied to all nodes. Tags are used to identify valid sources or targets for network firewalls.

property taints

taints?: pulumi.Input<pulumi.Input<ClusterNodePoolNodeConfigTaint>[]>;

A list of Kubernetes taints to apply to nodes. GKE’s API can only set this field on cluster creation. However, GKE will add taints to your nodes if you enable certain features such as GPUs. If this field is set, any diffs on this field will cause the provider to recreate the underlying resource. Taint values can be updated safely in Kubernetes (eg. through kubectl), and it’s recommended that you do not use this field to manage taints. If you do, lifecycle.ignore_changes is recommended. Structure is documented below.

property workloadMetadataConfig

workloadMetadataConfig?: pulumi.Input<ClusterNodePoolNodeConfigWorkloadMetadataConfig>;

Metadata configuration to expose to workloads on the node pool. Structure is documented below.

interface ClusterNodePoolNodeConfigGuestAccelerator

interface ClusterNodePoolNodeConfigGuestAccelerator

property count

count: pulumi.Input<number>;

The number of the guest accelerator cards exposed to this instance.

property type

type: pulumi.Input<string>;

The accelerator type resource to expose to this instance. E.g. nvidia-tesla-k80.

interface ClusterNodePoolNodeConfigSandboxConfig

interface ClusterNodePoolNodeConfigSandboxConfig

property sandboxType

sandboxType: pulumi.Input<string>;

Which sandbox to use for pods in the node pool. Accepted values are:

interface ClusterNodePoolNodeConfigShieldedInstanceConfig

interface ClusterNodePoolNodeConfigShieldedInstanceConfig

property enableIntegrityMonitoring

enableIntegrityMonitoring?: pulumi.Input<boolean>;

Defines if the instance has integrity monitoring enabled.

property enableSecureBoot

enableSecureBoot?: pulumi.Input<boolean>;

Defines if the instance has Secure Boot enabled.

interface ClusterNodePoolNodeConfigTaint

interface ClusterNodePoolNodeConfigTaint

property effect

effect: pulumi.Input<string>;

Effect for taint. Accepted values are NO_SCHEDULE, PREFER_NO_SCHEDULE, and NO_EXECUTE.

property key

key: pulumi.Input<string>;

Key for taint.

property value

value: pulumi.Input<string>;

Value for taint.

interface ClusterNodePoolNodeConfigWorkloadMetadataConfig

interface ClusterNodePoolNodeConfigWorkloadMetadataConfig

property nodeMetadata

nodeMetadata: pulumi.Input<string>;

How to expose the node metadata to the workload running on the node. Accepted values are: * UNSPECIFIED: Not Set * SECURE: Prevent workloads not in hostNetwork from accessing certain VM metadata, specifically kube-env, which contains Kubelet credentials, and the instance identity token. See Metadata Concealment documentation. * EXPOSE: Expose all VM metadata to pods. * GKE_METADATA_SERVER: Enables workload identity on the node.

interface ClusterNodePoolUpgradeSettings

interface ClusterNodePoolUpgradeSettings

property maxSurge

maxSurge: pulumi.Input<number>;

property maxUnavailable

maxUnavailable: pulumi.Input<number>;

interface ClusterPodSecurityPolicyConfig

interface ClusterPodSecurityPolicyConfig

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

interface ClusterPrivateClusterConfig

interface ClusterPrivateClusterConfig

property enablePrivateEndpoint

enablePrivateEndpoint: pulumi.Input<boolean>;

When true, the cluster’s private endpoint is used as the cluster endpoint and access through the public endpoint is disabled. When false, either endpoint can be used. This field only applies to private clusters, when enablePrivateNodes is true.

property enablePrivateNodes

enablePrivateNodes?: pulumi.Input<boolean>;

Enables the private cluster feature, creating a private endpoint on the cluster. In a private cluster, nodes only have RFC 1918 private addresses and communicate with the master’s private endpoint via private networking.

property masterIpv4CidrBlock

masterIpv4CidrBlock?: pulumi.Input<string>;

The IP range in CIDR notation to use for the hosted master network. This range will be used for assigning private IP addresses to the cluster master(s) and the ILB VIP. This range must not overlap with any other ranges in use within the cluster’s network, and it must be a /28 subnet. See Private Cluster Limitations for more details. This field only applies to private clusters, when enablePrivateNodes is true.

property peeringName

peeringName?: pulumi.Input<string>;

The name of the peering between this cluster and the Google owned VPC.

property privateEndpoint

privateEndpoint?: pulumi.Input<string>;

The internal IP address of this cluster’s master endpoint.

property publicEndpoint

publicEndpoint?: pulumi.Input<string>;

The external IP address of this cluster’s master endpoint.

interface ClusterReleaseChannel

interface ClusterReleaseChannel

property channel

channel: pulumi.Input<string>;

The selected release channel. Accepted values are: * UNSPECIFIED: Not set. * RAPID: Weekly upgrade cadence; Early testers and developers who requires new features. * REGULAR: Multiple per month upgrade cadence; Production users who need features not yet offered in the Stable channel. * STABLE: Every few months upgrade cadence; Production users who need stability above all else, and for whom frequent upgrades are too risky.

interface ClusterResourceUsageExportConfig

interface ClusterResourceUsageExportConfig

property bigqueryDestination

bigqueryDestination: pulumi.Input<ClusterResourceUsageExportConfigBigqueryDestination>;

Parameters for using BigQuery as the destination of resource usage export.

property enableNetworkEgressMetering

enableNetworkEgressMetering?: pulumi.Input<boolean>;

Whether to enable network egress metering for this cluster. If enabled, a daemonset will be created in the cluster to meter network egress traffic.

property enableResourceConsumptionMetering

enableResourceConsumptionMetering?: pulumi.Input<boolean>;

Whether to enable resource consumption metering on this cluster. When enabled, a table will be created in the resource export BigQuery dataset to store resource consumption data. The resulting table can be joined with the resource usage table or with BigQuery billing export. Defaults to true.

interface ClusterResourceUsageExportConfigBigqueryDestination

interface ClusterResourceUsageExportConfigBigqueryDestination

property datasetId

datasetId: pulumi.Input<string>;

interface ClusterVerticalPodAutoscaling

interface ClusterVerticalPodAutoscaling

property enabled

enabled: pulumi.Input<boolean>;

Enable the PodSecurityPolicy controller for this cluster. If enabled, pods must be valid under a PodSecurityPolicy to be created.

interface ClusterWorkloadIdentityConfig

interface ClusterWorkloadIdentityConfig

property identityNamespace

identityNamespace: pulumi.Input<string>;

Currently, the only supported identity namespace is the project’s default.

interface NodePoolAutoscaling

interface NodePoolAutoscaling

property maxNodeCount

maxNodeCount: pulumi.Input<number>;

Maximum number of nodes in the NodePool. Must be >= min_node_count.

property minNodeCount

minNodeCount: pulumi.Input<number>;

Minimum number of nodes in the NodePool. Must be >=0 and <= maxNodeCount.

interface NodePoolManagement

interface NodePoolManagement

property autoRepair

autoRepair?: pulumi.Input<boolean>;

Whether the nodes will be automatically repaired.

property autoUpgrade

autoUpgrade?: pulumi.Input<boolean>;

Whether the nodes will be automatically upgraded.

interface NodePoolNodeConfig

interface NodePoolNodeConfig

property bootDiskKmsKey

bootDiskKmsKey?: pulumi.Input<string>;

property diskSizeGb

diskSizeGb?: pulumi.Input<number>;

property diskType

diskType?: pulumi.Input<string>;

property guestAccelerators

guestAccelerators?: pulumi.Input<pulumi.Input<NodePoolNodeConfigGuestAccelerator>[]>;

property imageType

imageType?: pulumi.Input<string>;

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

property localSsdCount

localSsdCount?: pulumi.Input<number>;

property machineType

machineType?: pulumi.Input<string>;

property metadata

metadata?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

property oauthScopes

oauthScopes?: pulumi.Input<pulumi.Input<string>[]>;

property preemptible

preemptible?: pulumi.Input<boolean>;

property sandboxConfig

sandboxConfig?: pulumi.Input<NodePoolNodeConfigSandboxConfig>;

property serviceAccount

serviceAccount?: pulumi.Input<string>;

property shieldedInstanceConfig

shieldedInstanceConfig?: pulumi.Input<NodePoolNodeConfigShieldedInstanceConfig>;

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

property taints

taints?: pulumi.Input<pulumi.Input<NodePoolNodeConfigTaint>[]>;

property workloadMetadataConfig

workloadMetadataConfig?: pulumi.Input<NodePoolNodeConfigWorkloadMetadataConfig>;

interface NodePoolNodeConfigGuestAccelerator

interface NodePoolNodeConfigGuestAccelerator

property count

count: pulumi.Input<number>;

property type

type: pulumi.Input<string>;

interface NodePoolNodeConfigSandboxConfig

interface NodePoolNodeConfigSandboxConfig

property sandboxType

sandboxType: pulumi.Input<string>;

interface NodePoolNodeConfigShieldedInstanceConfig

interface NodePoolNodeConfigShieldedInstanceConfig

property enableIntegrityMonitoring

enableIntegrityMonitoring?: pulumi.Input<boolean>;

property enableSecureBoot

enableSecureBoot?: pulumi.Input<boolean>;

interface NodePoolNodeConfigTaint

interface NodePoolNodeConfigTaint

property effect

effect: pulumi.Input<string>;

property key

key: pulumi.Input<string>;

property value

value: pulumi.Input<string>;

interface NodePoolNodeConfigWorkloadMetadataConfig

interface NodePoolNodeConfigWorkloadMetadataConfig

property nodeMetadata

nodeMetadata: pulumi.Input<string>;

interface NodePoolUpgradeSettings

interface NodePoolUpgradeSettings

property maxSurge

maxSurge: pulumi.Input<number>;

The number of additional nodes that can be added to the node pool during an upgrade. Increasing maxSurge raises the number of nodes that can be upgraded simultaneously. Can be set to 0 or greater.

property maxUnavailable

maxUnavailable: pulumi.Input<number>;

The number of nodes that can be simultaneously unavailable during an upgrade. Increasing maxUnavailable raises the number of nodes that can be upgraded in parallel. Can be set to 0 or greater.

namespace containeranalysis

interface NoteAttestationAuthority

interface NoteAttestationAuthority

property hint

hint: pulumi.Input<NoteAttestationAuthorityHint>;

This submessage provides human-readable hints about the purpose of the AttestationAuthority. Because the name of a Note acts as its resource reference, it is important to disambiguate the canonical name of the Note (which might be a UUID for security purposes) from “readable” names more suitable for debug output. Note that these hints should NOT be used to look up AttestationAuthorities in security sensitive contexts, such as when looking up Attestations to verify. Structure is documented below.

interface NoteAttestationAuthorityHint

interface NoteAttestationAuthorityHint

property humanReadableName

humanReadableName: pulumi.Input<string>;

The human readable name of this Attestation Authority, for example “qa”.

interface NoteRelatedUrl

interface NoteRelatedUrl

property label

label?: pulumi.Input<string>;

Label to describe usage of the URL

property url

url: pulumi.Input<string>;

Specific URL associated with the resource.

interface OccurenceAttestation

interface OccurenceAttestation

property serializedPayload

serializedPayload: pulumi.Input<string>;

The serialized payload that is verified by one or more signatures. A base64-encoded string.

property signatures

signatures: pulumi.Input<pulumi.Input<OccurenceAttestationSignature>[]>;

One or more signatures over serializedPayload. Verifier implementations should consider this attestation message verified if at least one signature verifies serializedPayload. See Signature in common.proto for more details on signature structure and verification. Structure is documented below.

interface OccurenceAttestationSignature

interface OccurenceAttestationSignature

property publicKeyId

publicKeyId: pulumi.Input<string>;

The identifier for the public key that verifies this signature. MUST be an RFC3986 conformant URI. * When possible, the key id should be an immutable reference, such as a cryptographic digest. Examples of valid values: * OpenPGP V4 public key fingerprint. See https://www.iana.org/assignments/uri-schemes/prov/openpgp4fpr for more details on this scheme. * openpgp4fpr:74FAF3B861BDA0870C7B6DEF607E48D2A663AEEA * RFC6920 digest-named SubjectPublicKeyInfo (digest of the DER serialization): * “ni:///sha-256;cD9o9Cq6LG3jD0iKXqEi_vdjJGecm_iXkbqVoScViaU”

property signature

signature?: pulumi.Input<string>;

The content of the signature, an opaque bytestring. The payload that this signature verifies MUST be unambiguously provided with the Signature during verification. A wrapper message might provide the payload explicitly. Alternatively, a message might have a canonical serialization that can always be unambiguously computed to derive the payload.

namespace datacatalog

interface EntryBigqueryDateShardedSpec

interface EntryBigqueryDateShardedSpec

property dataset

dataset?: pulumi.Input<string>;

property shardCount

shardCount?: pulumi.Input<number>;

property tablePrefix

tablePrefix?: pulumi.Input<string>;

interface EntryBigqueryTableSpec

interface EntryBigqueryTableSpec

property tableSourceType

tableSourceType?: pulumi.Input<string>;

property tableSpec

tableSpec?: pulumi.Input<EntryBigqueryTableSpecTableSpec>;

property viewSpec

viewSpec?: pulumi.Input<EntryBigqueryTableSpecViewSpec>;

interface EntryBigqueryTableSpecTableSpec

interface EntryBigqueryTableSpecTableSpec

property groupedEntry

groupedEntry?: pulumi.Input<string>;

interface EntryBigqueryTableSpecViewSpec

interface EntryBigqueryTableSpecViewSpec

property viewQuery

viewQuery?: pulumi.Input<string>;

interface EntryGcsFilesetSpec

interface EntryGcsFilesetSpec

property filePatterns

filePatterns: pulumi.Input<pulumi.Input<string>[]>;

Patterns to identify a set of files in Google Cloud Storage. See Cloud Storage documentation for more information. Note that bucket wildcards are currently not supported. Examples of valid filePatterns: * gs://bucket_name/dir/*: matches all files within bucket_name/dir directory. * gs://bucket_name/dir/**: matches all files in bucket_name/dir spanning all subdirectories. * gs://bucket_name/file*: matches files prefixed by file in bucketName * gs://bucket_name/??.txt: matches files with two characters followed by .txt in bucketName * gs://bucket_name/[aeiou].txt: matches files that contain a single vowel character followed by .txt in bucketName * gs://bucket_name/[a-m].txt: matches files that contain a, b, … or m followed by .txt in bucketName * gs://bucket_name/a//b: matches all files in bucketName that match a//b pattern, such as a/c/b, a/d/b * gs://another_bucket/a.txt: matches gs://another_bucket/a.txt

property sampleGcsFileSpecs

sampleGcsFileSpecs?: pulumi.Input<pulumi.Input<EntryGcsFilesetSpecSampleGcsFileSpec>[]>;

- Sample files contained in this fileset, not all files contained in this fileset are represented here. Structure is documented below.

interface EntryGcsFilesetSpecSampleGcsFileSpec

interface EntryGcsFilesetSpecSampleGcsFileSpec

property filePath

filePath?: pulumi.Input<string>;

- The full file path

property sizeBytes

sizeBytes?: pulumi.Input<number>;

- The size of the file, in bytes.

interface EntryGroupIamBindingCondition

interface EntryGroupIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface EntryGroupIamMemberCondition

interface EntryGroupIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface TagTemplateField

interface TagTemplateField

property displayName

displayName?: pulumi.Input<string>;

The display name for this template.

property fieldId

fieldId: pulumi.Input<string>;

The identifier for this object. Format specified above.

property isRequired

isRequired?: pulumi.Input<boolean>;

Whether this is a required field. Defaults to false.

property name

name?: pulumi.Input<string>;

- The resource name of the tag template field in URL format. Example: projects/{project_id}/locations/{location}/tagTemplates/{tagTemplateId}/fields/{field}

property order

order?: pulumi.Input<number>;

The order of this field with respect to other fields in this tag template. A higher value indicates a more important field. The value can be negative. Multiple fields can have the same order, and field orders within a tag do not have to be sequential.

property type

type: pulumi.Input<TagTemplateFieldType>;

The type of value this tag field can contain. Structure is documented below.

interface TagTemplateFieldType

interface TagTemplateFieldType

property enumType

enumType?: pulumi.Input<TagTemplateFieldTypeEnumType>;

Represents an enum type. Exactly one of primitiveType or enumType must be set Structure is documented below.

property primitiveType

primitiveType?: pulumi.Input<string>;

Represents primitive types - string, bool etc. Exactly one of primitiveType or enumType must be set

interface TagTemplateFieldTypeEnumType

interface TagTemplateFieldTypeEnumType

property allowedValues

allowedValues: pulumi.Input<pulumi.Input<TagTemplateFieldTypeEnumTypeAllowedValue>[]>;

The set of allowed values for this enum. The display names of the values must be case-insensitively unique within this set. Currently, enum values can only be added to the list of allowed values. Deletion and renaming of enum values are not supported. Can have up to 500 allowed values. Structure is documented below.

interface TagTemplateFieldTypeEnumTypeAllowedValue

interface TagTemplateFieldTypeEnumTypeAllowedValue

property displayName

displayName: pulumi.Input<string>;

The display name for this template.

namespace datafusion

interface InstanceNetworkConfig

interface InstanceNetworkConfig

property ipAllocation

ipAllocation: pulumi.Input<string>;

The IP range in CIDR notation to use for the managed Data Fusion instance nodes. This range must not overlap with any other ranges used in the Data Fusion instance network.

property network

network: pulumi.Input<string>;

Name of the network in the project with which the tenant project will be peered for executing pipelines. In case of shared VPC where the network resides in another host project the network should specified in the form of projects/{host-project-id}/global/networks/{network}

namespace dataproc

interface AutoscalingPolicyBasicAlgorithm

interface AutoscalingPolicyBasicAlgorithm

property cooldownPeriod

cooldownPeriod?: pulumi.Input<string>;

Duration between scaling events. A scaling period starts after the update operation from the previous event has completed. Bounds: [2m, 1d]. Default: 2m.

property yarnConfig

yarnConfig: pulumi.Input<AutoscalingPolicyBasicAlgorithmYarnConfig>;

YARN autoscaling configuration. Structure is documented below.

interface AutoscalingPolicyBasicAlgorithmYarnConfig

interface AutoscalingPolicyBasicAlgorithmYarnConfig

property gracefulDecommissionTimeout

gracefulDecommissionTimeout: pulumi.Input<string>;

Timeout for YARN graceful decommissioning of Node Managers. Specifies the duration to wait for jobs to complete before forcefully removing workers (and potentially interrupting jobs). Only applicable to downscaling operations. Bounds: [0s, 1d].

property scaleDownFactor

scaleDownFactor: pulumi.Input<number>;

Fraction of average pending memory in the last cooldown period for which to remove workers. A scale-down factor of 1 will result in scaling down so that there is no available memory remaining after the update (more aggressive scaling). A scale-down factor of 0 disables removing workers, which can be beneficial for autoscaling a single job. Bounds: [0.0, 1.0].

property scaleDownMinWorkerFraction

scaleDownMinWorkerFraction?: pulumi.Input<number>;

Minimum scale-down threshold as a fraction of total cluster size before scaling occurs. For example, in a 20-worker cluster, a threshold of 0.1 means the autoscaler must recommend at least a 2 worker scale-down for the cluster to scale. A threshold of 0 means the autoscaler will scale down on any recommended change. Bounds: [0.0, 1.0]. Default: 0.0.

property scaleUpFactor

scaleUpFactor: pulumi.Input<number>;

Fraction of average pending memory in the last cooldown period for which to add workers. A scale-up factor of 1.0 will result in scaling up so that there is no pending memory remaining after the update (more aggressive scaling). A scale-up factor closer to 0 will result in a smaller magnitude of scaling up (less aggressive scaling). Bounds: [0.0, 1.0].

property scaleUpMinWorkerFraction

scaleUpMinWorkerFraction?: pulumi.Input<number>;

Minimum scale-up threshold as a fraction of total cluster size before scaling occurs. For example, in a 20-worker cluster, a threshold of 0.1 means the autoscaler must recommend at least a 2-worker scale-up for the cluster to scale. A threshold of 0 means the autoscaler will scale up on any recommended change. Bounds: [0.0, 1.0]. Default: 0.0.

interface AutoscalingPolicySecondaryWorkerConfig

interface AutoscalingPolicySecondaryWorkerConfig

property maxInstances

maxInstances?: pulumi.Input<number>;

Maximum number of instances for this group. Note that by default, clusters will not use secondary workers. Required for secondary workers if the minimum secondary instances is set. Bounds: [minInstances, ). Defaults to 0.

property minInstances

minInstances?: pulumi.Input<number>;

Minimum number of instances for this group. Bounds: [0, maxInstances]. Defaults to 0.

property weight

weight?: pulumi.Input<number>;

Weight for the instance group, which is used to determine the fraction of total workers in the cluster from this instance group. For example, if primary workers have weight 2, and secondary workers have weight 1, the cluster will have approximately 2 primary workers for each secondary worker. The cluster may not reach the specified balance if constrained by min/max bounds or other autoscaling settings. For example, if maxInstances for secondary workers is 0, then only primary workers will be added. The cluster can also be out of balance when created. If weight is not set on any instance group, the cluster will default to equal weight for all groups: the cluster will attempt to maintain an equal number of workers in each group within the configured size bounds for each group. If weight is set for one group only, the cluster will default to zero weight on the unset group. For example if weight is set only on primary workers, the cluster will use primary workers only and no secondary workers.

interface AutoscalingPolicyWorkerConfig

interface AutoscalingPolicyWorkerConfig

property maxInstances

maxInstances: pulumi.Input<number>;

Maximum number of instances for this group. Note that by default, clusters will not use secondary workers. Required for secondary workers if the minimum secondary instances is set. Bounds: [minInstances, ). Defaults to 0.

property minInstances

minInstances?: pulumi.Input<number>;

Minimum number of instances for this group. Bounds: [0, maxInstances]. Defaults to 0.

property weight

weight?: pulumi.Input<number>;

Weight for the instance group, which is used to determine the fraction of total workers in the cluster from this instance group. For example, if primary workers have weight 2, and secondary workers have weight 1, the cluster will have approximately 2 primary workers for each secondary worker. The cluster may not reach the specified balance if constrained by min/max bounds or other autoscaling settings. For example, if maxInstances for secondary workers is 0, then only primary workers will be added. The cluster can also be out of balance when created. If weight is not set on any instance group, the cluster will default to equal weight for all groups: the cluster will attempt to maintain an equal number of workers in each group within the configured size bounds for each group. If weight is set for one group only, the cluster will default to zero weight on the unset group. For example if weight is set only on primary workers, the cluster will use primary workers only and no secondary workers.

interface ClusterClusterConfig

interface ClusterClusterConfig

property autoscalingConfig

autoscalingConfig?: pulumi.Input<ClusterClusterConfigAutoscalingConfig>;

The autoscaling policy config associated with the cluster. Structure defined below.

property bucket

bucket?: pulumi.Input<string>;

property encryptionConfig

encryptionConfig?: pulumi.Input<ClusterClusterConfigEncryptionConfig>;

The Customer managed encryption keys settings for the cluster. Structure defined below.

property endpointConfig

endpointConfig?: pulumi.Input<ClusterClusterConfigEndpointConfig>;

The config settings for port access on the cluster. Structure defined below.


property gceClusterConfig

gceClusterConfig?: pulumi.Input<ClusterClusterConfigGceClusterConfig>;

Common config settings for resources of Google Compute Engine cluster instances, applicable to all instances in the cluster. Structure defined below.

property initializationActions

initializationActions?: pulumi.Input<pulumi.Input<ClusterClusterConfigInitializationAction>[]>;

Commands to execute on each node after config is completed. You can specify multiple versions of these. Structure defined below.

property lifecycleConfig

lifecycleConfig?: pulumi.Input<ClusterClusterConfigLifecycleConfig>;

The settings for auto deletion cluster schedule. Structure defined below.

property masterConfig

masterConfig?: pulumi.Input<ClusterClusterConfigMasterConfig>;

The Google Compute Engine config settings for the master instances in a cluster.. Structure defined below.

property preemptibleWorkerConfig

preemptibleWorkerConfig?: pulumi.Input<ClusterClusterConfigPreemptibleWorkerConfig>;

The Google Compute Engine config settings for the additional (aka preemptible) instances in a cluster. Structure defined below.

property securityConfig

securityConfig?: pulumi.Input<ClusterClusterConfigSecurityConfig>;

Security related configuration. Structure defined below.

property softwareConfig

softwareConfig?: pulumi.Input<ClusterClusterConfigSoftwareConfig>;

The config settings for software inside the cluster. Structure defined below.

property stagingBucket

stagingBucket?: pulumi.Input<string>;

The Cloud Storage staging bucket used to stage files, such as Hadoop jars, between client machines and the cluster. Note: If you don’t explicitly specify a stagingBucket then GCP will auto create / assign one for you. However, you are not guaranteed an auto generated bucket which is solely dedicated to your cluster; it may be shared with other clusters in the same region/zone also choosing to use the auto generation option.

property workerConfig

workerConfig?: pulumi.Input<ClusterClusterConfigWorkerConfig>;

The Google Compute Engine config settings for the worker instances in a cluster.. Structure defined below.

interface ClusterClusterConfigAutoscalingConfig

interface ClusterClusterConfigAutoscalingConfig

property policyUri

policyUri: pulumi.Input<string>;

The autoscaling policy used by the cluster.

interface ClusterClusterConfigEncryptionConfig

interface ClusterClusterConfigEncryptionConfig

property kmsKeyName

kmsKeyName: pulumi.Input<string>;

The Cloud KMS key name to use for PD disk encryption for all instances in the cluster.

interface ClusterClusterConfigEndpointConfig

interface ClusterClusterConfigEndpointConfig

property enableHttpPortAccess

enableHttpPortAccess: pulumi.Input<boolean>;

The flag to enable http access to specific ports on the cluster from external sources (aka Component Gateway). Defaults to false.

property httpPorts

httpPorts?: pulumi.Input<{[key: string]: any}>;

interface ClusterClusterConfigGceClusterConfig

interface ClusterClusterConfigGceClusterConfig

property internalIpOnly

internalIpOnly?: pulumi.Input<boolean>;

By default, clusters are not restricted to internal IP addresses, and will have ephemeral external IP addresses assigned to each instance. If set to true, all instances in the cluster will only have internal IP addresses. Note: Private Google Access (also known as privateIpGoogleAccess) must be enabled on the subnetwork that the cluster will be launched in.

property metadata

metadata?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A map of the Compute Engine metadata entries to add to all instances (see Project and instance metadata).

property network

network?: pulumi.Input<string>;

The name or selfLink of the Google Compute Engine network to the cluster will be part of. Conflicts with subnetwork. If neither is specified, this defaults to the “default” network.

property serviceAccount

serviceAccount?: pulumi.Input<string>;

The service account to be used by the Node VMs. If not specified, the “default” service account is used.

property serviceAccountScopes

serviceAccountScopes?: pulumi.Input<pulumi.Input<string>[]>;

The set of Google API scopes to be made available on all of the node VMs under the serviceAccount specified. These can be either FQDNs, or scope aliases. The following scopes must be set if any other scopes are set. They’re necessary to ensure the correct functioning ofthe cluster, and are set automatically by the API:

property subnetwork

subnetwork?: pulumi.Input<string>;

The name or selfLink of the Google Compute Engine subnetwork the cluster will be part of. Conflicts with network.

property tags

tags?: pulumi.Input<pulumi.Input<string>[]>;

The list of instance tags applied to instances in the cluster. Tags are used to identify valid sources or targets for network firewalls.

property zone

zone?: pulumi.Input<string>;

The GCP zone where your data is stored and used (i.e. where the master and the worker nodes will be created in). If region is set to ‘global’ (default) then zone is mandatory, otherwise GCP is able to make use of Auto Zone Placement to determine this automatically for you. Note: This setting additionally determines and restricts which computing resources are available for use with other configs such as cluster_config.master_config.machine_type and cluster_config.worker_config.machine_type.

interface ClusterClusterConfigInitializationAction

interface ClusterClusterConfigInitializationAction

property script

script: pulumi.Input<string>;

The script to be executed during initialization of the cluster. The script must be a GCS file with a gs:// prefix.

property timeoutSec

timeoutSec?: pulumi.Input<number>;

The maximum duration (in seconds) which script is allowed to take to execute its action. GCP will default to a predetermined computed value if not set (currently 300).

interface ClusterClusterConfigLifecycleConfig

interface ClusterClusterConfigLifecycleConfig

property autoDeleteTime

autoDeleteTime?: pulumi.Input<string>;

The time when cluster will be auto-deleted. A timestamp in RFC3339 UTC “Zulu” format, accurate to nanoseconds. Example: “2014-10-02T15:01:23.045123456Z”.

property idleDeleteTtl

idleDeleteTtl?: pulumi.Input<string>;

The duration to keep the cluster alive while idling (no jobs running). After this TTL, the cluster will be deleted. Valid range: [10m, 14d].

property idleStartTime

idleStartTime?: pulumi.Input<string>;

interface ClusterClusterConfigMasterConfig

interface ClusterClusterConfigMasterConfig

property accelerators

accelerators?: pulumi.Input<pulumi.Input<ClusterClusterConfigMasterConfigAccelerator>[]>;

The Compute Engine accelerator configuration for these instances. Can be specified multiple times.

property diskConfig

diskConfig?: pulumi.Input<ClusterClusterConfigMasterConfigDiskConfig>;

Disk Config

property imageUri

imageUri?: pulumi.Input<string>;

The URI for the image to use for this worker. See the guide for more information.

property instanceNames

instanceNames?: pulumi.Input<pulumi.Input<string>[]>;

property machineType

machineType?: pulumi.Input<string>;

The name of a Google Compute Engine machine type to create for the worker nodes. If not specified, GCP will default to a predetermined computed value (currently n1-standard-4).

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

The name of a minimum generation of CPU family for the master. If not specified, GCP will default to a predetermined computed value for each zone. See the guide for details about which CPU families are available (and defaulted) for each zone.

property numInstances

numInstances?: pulumi.Input<number>;

Specifies the number of preemptible nodes to create. Defaults to 0.

interface ClusterClusterConfigMasterConfigAccelerator

interface ClusterClusterConfigMasterConfigAccelerator

property acceleratorCount

acceleratorCount: pulumi.Input<number>;

The number of the accelerator cards of this type exposed to this instance. Often restricted to one of 1, 2, 4, or 8.

property acceleratorType

acceleratorType: pulumi.Input<string>;

The short name of the accelerator type to expose to this instance. For example, nvidia-tesla-k80.

interface ClusterClusterConfigMasterConfigDiskConfig

interface ClusterClusterConfigMasterConfigDiskConfig

property bootDiskSizeGb

bootDiskSizeGb?: pulumi.Input<number>;

Size of the primary disk attached to each preemptible worker node, specified in GB. The smallest allowed disk size is 10GB. GCP will default to a predetermined computed value if not set (currently 500GB). Note: If SSDs are not attached, it also contains the HDFS data blocks and Hadoop working directories.

property bootDiskType

bootDiskType?: pulumi.Input<string>;

The disk type of the primary disk attached to each preemptible worker node. One of "pd-ssd" or "pd-standard". Defaults to "pd-standard".

property numLocalSsds

numLocalSsds?: pulumi.Input<number>;

The amount of local SSD disks that will be attached to each preemptible worker node. Defaults to 0.

interface ClusterClusterConfigPreemptibleWorkerConfig

interface ClusterClusterConfigPreemptibleWorkerConfig

property diskConfig

diskConfig?: pulumi.Input<ClusterClusterConfigPreemptibleWorkerConfigDiskConfig>;

Disk Config

property instanceNames

instanceNames?: pulumi.Input<pulumi.Input<string>[]>;

property numInstances

numInstances?: pulumi.Input<number>;

Specifies the number of preemptible nodes to create. Defaults to 0.

interface ClusterClusterConfigPreemptibleWorkerConfigDiskConfig

interface ClusterClusterConfigPreemptibleWorkerConfigDiskConfig

property bootDiskSizeGb

bootDiskSizeGb?: pulumi.Input<number>;

Size of the primary disk attached to each preemptible worker node, specified in GB. The smallest allowed disk size is 10GB. GCP will default to a predetermined computed value if not set (currently 500GB). Note: If SSDs are not attached, it also contains the HDFS data blocks and Hadoop working directories.

property bootDiskType

bootDiskType?: pulumi.Input<string>;

The disk type of the primary disk attached to each preemptible worker node. One of "pd-ssd" or "pd-standard". Defaults to "pd-standard".

property numLocalSsds

numLocalSsds?: pulumi.Input<number>;

The amount of local SSD disks that will be attached to each preemptible worker node. Defaults to 0.

interface ClusterClusterConfigSecurityConfig

interface ClusterClusterConfigSecurityConfig

property kerberosConfig

kerberosConfig: pulumi.Input<ClusterClusterConfigSecurityConfigKerberosConfig>;

Kerberos Configuration

interface ClusterClusterConfigSecurityConfigKerberosConfig

interface ClusterClusterConfigSecurityConfigKerberosConfig

property crossRealmTrustAdminServer

crossRealmTrustAdminServer?: pulumi.Input<string>;

The admin server (IP or hostname) for the remote trusted realm in a cross realm trust relationship.

property crossRealmTrustKdc

crossRealmTrustKdc?: pulumi.Input<string>;

The KDC (IP or hostname) for the remote trusted realm in a cross realm trust relationship.

property crossRealmTrustRealm

crossRealmTrustRealm?: pulumi.Input<string>;

The remote realm the Dataproc on-cluster KDC will trust, should the user enable cross realm trust.

property crossRealmTrustSharedPasswordUri

crossRealmTrustSharedPasswordUri?: pulumi.Input<string>;

The Cloud Storage URI of a KMS encrypted file containing the shared password between the on-cluster Kerberos realm and the remote trusted realm, in a cross realm trust relationship.

property enableKerberos

enableKerberos?: pulumi.Input<boolean>;

Flag to indicate whether to Kerberize the cluster.

property kdcDbKeyUri

kdcDbKeyUri?: pulumi.Input<string>;

The Cloud Storage URI of a KMS encrypted file containing the master key of the KDC database.

property keyPasswordUri

keyPasswordUri?: pulumi.Input<string>;

The Cloud Storage URI of a KMS encrypted file containing the password to the user provided key. For the self-signed certificate, this password is generated by Dataproc.

property keystorePasswordUri

keystorePasswordUri?: pulumi.Input<string>;

The Cloud Storage URI of a KMS encrypted file containing the password to the user provided keystore. For the self-signed certificated, the password is generated by Dataproc.

property keystoreUri

keystoreUri?: pulumi.Input<string>;

The Cloud Storage URI of the keystore file used for SSL encryption. If not provided, Dataproc will provide a self-signed certificate.

property kmsKeyUri

kmsKeyUri: pulumi.Input<string>;

The URI of the KMS key used to encrypt various sensitive files.

property realm

realm?: pulumi.Input<string>;

The name of the on-cluster Kerberos realm. If not specified, the uppercased domain of hostnames will be the realm.

property rootPrincipalPasswordUri

rootPrincipalPasswordUri: pulumi.Input<string>;

The Cloud Storage URI of a KMS encrypted file containing the root principal password.

property tgtLifetimeHours

tgtLifetimeHours?: pulumi.Input<number>;

The lifetime of the ticket granting ticket, in hours.

property truststorePasswordUri

truststorePasswordUri?: pulumi.Input<string>;

The Cloud Storage URI of a KMS encrypted file containing the password to the user provided truststore. For the self-signed certificate, this password is generated by Dataproc.

property truststoreUri

truststoreUri?: pulumi.Input<string>;

The Cloud Storage URI of the truststore file used for SSL encryption. If not provided, Dataproc will provide a self-signed certificate.

interface ClusterClusterConfigSoftwareConfig

interface ClusterClusterConfigSoftwareConfig

property imageVersion

imageVersion?: pulumi.Input<string>;

The Cloud Dataproc image version to use for the cluster - this controls the sets of software versions installed onto the nodes when you create clusters. If not specified, defaults to the latest version. For a list of valid versions see Cloud Dataproc versions

property optionalComponents

optionalComponents?: pulumi.Input<pulumi.Input<string>[]>;

The set of optional components to activate on the cluster. Accepted values are: * ANACONDA * DRUID * HBASE * HIVE_WEBHCAT * JUPYTER * KERBEROS * PRESTO * RANGER * SOLR * ZEPPELIN * ZOOKEEPER

property overrideProperties

overrideProperties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A list of override and additional properties (key/value pairs) used to modify various aspects of the common configuration files used when creating a cluster. For a list of valid properties please see Cluster properties

property properties

properties?: pulumi.Input<{[key: string]: any}>;

interface ClusterClusterConfigWorkerConfig

interface ClusterClusterConfigWorkerConfig

property accelerators

accelerators?: pulumi.Input<pulumi.Input<ClusterClusterConfigWorkerConfigAccelerator>[]>;

The Compute Engine accelerator configuration for these instances. Can be specified multiple times.

property diskConfig

diskConfig?: pulumi.Input<ClusterClusterConfigWorkerConfigDiskConfig>;

Disk Config

property imageUri

imageUri?: pulumi.Input<string>;

The URI for the image to use for this worker. See the guide for more information.

property instanceNames

instanceNames?: pulumi.Input<pulumi.Input<string>[]>;

property machineType

machineType?: pulumi.Input<string>;

The name of a Google Compute Engine machine type to create for the worker nodes. If not specified, GCP will default to a predetermined computed value (currently n1-standard-4).

property minCpuPlatform

minCpuPlatform?: pulumi.Input<string>;

The name of a minimum generation of CPU family for the master. If not specified, GCP will default to a predetermined computed value for each zone. See the guide for details about which CPU families are available (and defaulted) for each zone.

property numInstances

numInstances?: pulumi.Input<number>;

Specifies the number of preemptible nodes to create. Defaults to 0.

interface ClusterClusterConfigWorkerConfigAccelerator

interface ClusterClusterConfigWorkerConfigAccelerator

property acceleratorCount

acceleratorCount: pulumi.Input<number>;

The number of the accelerator cards of this type exposed to this instance. Often restricted to one of 1, 2, 4, or 8.

property acceleratorType

acceleratorType: pulumi.Input<string>;

The short name of the accelerator type to expose to this instance. For example, nvidia-tesla-k80.

interface ClusterClusterConfigWorkerConfigDiskConfig

interface ClusterClusterConfigWorkerConfigDiskConfig

property bootDiskSizeGb

bootDiskSizeGb?: pulumi.Input<number>;

Size of the primary disk attached to each preemptible worker node, specified in GB. The smallest allowed disk size is 10GB. GCP will default to a predetermined computed value if not set (currently 500GB). Note: If SSDs are not attached, it also contains the HDFS data blocks and Hadoop working directories.

property bootDiskType

bootDiskType?: pulumi.Input<string>;

The disk type of the primary disk attached to each preemptible worker node. One of "pd-ssd" or "pd-standard". Defaults to "pd-standard".

property numLocalSsds

numLocalSsds?: pulumi.Input<number>;

The amount of local SSD disks that will be attached to each preemptible worker node. Defaults to 0.

interface ClusterIAMBindingCondition

interface ClusterIAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface ClusterIAMMemberCondition

interface ClusterIAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface JobHadoopConfig

interface JobHadoopConfig

property archiveUris

archiveUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.

property args

args?: pulumi.Input<pulumi.Input<string>[]>;

The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.

property fileUris

fileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.

property jarFileUris

jarFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of jar files to be added to the Spark CLASSPATH.

property loggingConfig

loggingConfig?: pulumi.Input<JobHadoopConfigLoggingConfig>;

property mainClass

mainClass?: pulumi.Input<string>;

The name of the driver’s main class. The jar file containing the class must be in the default CLASSPATH or specified in jarFileUris. Conflicts with mainJarFileUri

property mainJarFileUri

mainJarFileUri?: pulumi.Input<string>;

The HCFS URI of the jar file containing the main class. Examples: ‘gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar’ ‘hdfs:/tmp/test-samples/custom-wordcount.jar’ ‘file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar’. Conflicts with mainClass

property properties

properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of property names to values, used to configure Spark SQL’s SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.

interface JobHadoopConfigLoggingConfig

interface JobHadoopConfigLoggingConfig

property driverLogLevels

driverLogLevels: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

interface JobHiveConfig

interface JobHiveConfig

property continueOnFailure

continueOnFailure?: pulumi.Input<boolean>;

Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries. Defaults to false.

property jarFileUris

jarFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of jar files to be added to the Spark CLASSPATH.

property properties

properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of property names to values, used to configure Spark SQL’s SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.

property queryFileUri

queryFileUri?: pulumi.Input<string>;

The HCFS URI of the script that contains SQL queries. Conflicts with queryList

property queryLists

queryLists?: pulumi.Input<pulumi.Input<string>[]>;

The list of SQL queries or statements to execute as part of the job. Conflicts with queryFileUri

property scriptVariables

scriptVariables?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).

interface JobIAMBindingCondition

interface JobIAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface JobIAMMemberCondition

interface JobIAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface JobPigConfig

interface JobPigConfig

property continueOnFailure

continueOnFailure?: pulumi.Input<boolean>;

Whether to continue executing queries if a query fails. The default value is false. Setting to true can be useful when executing independent parallel queries. Defaults to false.

property jarFileUris

jarFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of jar files to be added to the Spark CLASSPATH.

property loggingConfig

loggingConfig?: pulumi.Input<JobPigConfigLoggingConfig>;

property properties

properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of property names to values, used to configure Spark SQL’s SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.

property queryFileUri

queryFileUri?: pulumi.Input<string>;

The HCFS URI of the script that contains SQL queries. Conflicts with queryList

property queryLists

queryLists?: pulumi.Input<pulumi.Input<string>[]>;

The list of SQL queries or statements to execute as part of the job. Conflicts with queryFileUri

property scriptVariables

scriptVariables?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).

interface JobPigConfigLoggingConfig

interface JobPigConfigLoggingConfig

property driverLogLevels

driverLogLevels: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

interface JobPlacement

interface JobPlacement

property clusterName

clusterName: pulumi.Input<string>;

property clusterUuid

clusterUuid?: pulumi.Input<string>;

interface JobPysparkConfig

interface JobPysparkConfig

property archiveUris

archiveUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.

property args

args?: pulumi.Input<pulumi.Input<string>[]>;

The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.

property fileUris

fileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.

property jarFileUris

jarFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of jar files to be added to the Spark CLASSPATH.

property loggingConfig

loggingConfig?: pulumi.Input<JobPysparkConfigLoggingConfig>;

property mainPythonFileUri

mainPythonFileUri: pulumi.Input<string>;

The HCFS URI of the main Python file to use as the driver. Must be a .py file.

property properties

properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of property names to values, used to configure Spark SQL’s SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.

property pythonFileUris

pythonFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS file URIs of Python files to pass to the PySpark framework. Supported file types: .py, .egg, and .zip.

interface JobPysparkConfigLoggingConfig

interface JobPysparkConfigLoggingConfig

property driverLogLevels

driverLogLevels: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

interface JobReference

interface JobReference

property jobId

jobId?: pulumi.Input<string>;

interface JobScheduling

interface JobScheduling

property maxFailuresPerHour

maxFailuresPerHour: pulumi.Input<number>;

interface JobSparkConfig

interface JobSparkConfig

property archiveUris

archiveUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of archives to be extracted in the working directory of .jar, .tar, .tar.gz, .tgz, and .zip.

property args

args?: pulumi.Input<pulumi.Input<string>[]>;

The arguments to pass to the driver. Do not include arguments, such as -libjars or -Dfoo=bar, that can be set as job properties, since a collision may occur that causes an incorrect job submission.

property fileUris

fileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of files to be copied to the working directory of Hadoop drivers and distributed tasks. Useful for naively parallel tasks.

property jarFileUris

jarFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of jar files to be added to the Spark CLASSPATH.

property loggingConfig

loggingConfig?: pulumi.Input<JobSparkConfigLoggingConfig>;

property mainClass

mainClass?: pulumi.Input<string>;

The name of the driver’s main class. The jar file containing the class must be in the default CLASSPATH or specified in jarFileUris. Conflicts with mainJarFileUri

property mainJarFileUri

mainJarFileUri?: pulumi.Input<string>;

The HCFS URI of the jar file containing the main class. Examples: ‘gs://foo-bucket/analytics-binaries/extract-useful-metrics-mr.jar’ ‘hdfs:/tmp/test-samples/custom-wordcount.jar’ ‘file:///home/usr/lib/hadoop-mapreduce/hadoop-mapreduce-examples.jar’. Conflicts with mainClass

property properties

properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of property names to values, used to configure Spark SQL’s SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.

interface JobSparkConfigLoggingConfig

interface JobSparkConfigLoggingConfig

property driverLogLevels

driverLogLevels: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

interface JobSparksqlConfig

interface JobSparksqlConfig

property jarFileUris

jarFileUris?: pulumi.Input<pulumi.Input<string>[]>;

HCFS URIs of jar files to be added to the Spark CLASSPATH.

property loggingConfig

loggingConfig?: pulumi.Input<JobSparksqlConfigLoggingConfig>;

property properties

properties?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

A mapping of property names to values, used to configure Spark SQL’s SparkConf. Properties that conflict with values set by the Cloud Dataproc API may be overwritten.

property queryFileUri

queryFileUri?: pulumi.Input<string>;

The HCFS URI of the script that contains SQL queries. Conflicts with queryList

property queryLists

queryLists?: pulumi.Input<pulumi.Input<string>[]>;

The list of SQL queries or statements to execute as part of the job. Conflicts with queryFileUri

property scriptVariables

scriptVariables?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Mapping of query variable names to values (equivalent to the Spark SQL command: SET name="value";).

interface JobSparksqlConfigLoggingConfig

interface JobSparksqlConfigLoggingConfig

property driverLogLevels

driverLogLevels: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

interface JobStatus

interface JobStatus

property details

details?: pulumi.Input<string>;

property state

state?: pulumi.Input<string>;

property stateStartTime

stateStartTime?: pulumi.Input<string>;

property substate

substate?: pulumi.Input<string>;

namespace datastore

interface DataStoreIndexProperty

interface DataStoreIndexProperty

property direction

direction: pulumi.Input<string>;

The direction the index should optimize for sorting.

property name

name: pulumi.Input<string>;

The property name to index.

namespace deploymentmanager

interface DeploymentLabel

interface DeploymentLabel

property key

key?: pulumi.Input<string>;

Key for label.

property value

value?: pulumi.Input<string>;

Value of label.

interface DeploymentTarget

interface DeploymentTarget

property config

config: pulumi.Input<DeploymentTargetConfig>;

The root configuration file to use for this deployment. Structure is documented below.

property imports

imports?: pulumi.Input<pulumi.Input<DeploymentTargetImport>[]>;

Specifies import files for this configuration. This can be used to import templates or other files. For example, you might import a text file in order to use the file in a template. Structure is documented below.

interface DeploymentTargetConfig

interface DeploymentTargetConfig

property content

content: pulumi.Input<string>;

The full contents of the template that you want to import.

interface DeploymentTargetImport

interface DeploymentTargetImport

property content

content?: pulumi.Input<string>;

The full contents of the template that you want to import.

property name

name?: pulumi.Input<string>;

The name of the template to import, as declared in the YAML configuration.

namespace diagflow

interface EntityTypeEntity

interface EntityTypeEntity

property synonyms

synonyms: pulumi.Input<pulumi.Input<string>[]>;

A collection of value synonyms. For example, if the entity type is vegetable, and value is scallions, a synonym could be green onions. For KIND_LIST entity types: * This collection must contain exactly one synonym equal to value.

property value

value: pulumi.Input<string>;

The primary value associated with this entity entry. For example, if the entity type is vegetable, the value could be scallions. For KIND_MAP entity types: * A reference value to be used in place of synonyms. For KIND_LIST entity types: * A string that can contain references to other entity types (with or without aliases).

interface IntentFollowupIntentInfo

interface IntentFollowupIntentInfo

property followupIntentName

followupIntentName?: pulumi.Input<string>;

property parentFollowupIntentName

parentFollowupIntentName?: pulumi.Input<string>;

The unique identifier of the parent intent in the chain of followup intents. Format: projects//agent/intents/.

namespace dns

interface ManagedZoneDnssecConfig

interface ManagedZoneDnssecConfig

property defaultKeySpecs

defaultKeySpecs?: pulumi.Input<pulumi.Input<ManagedZoneDnssecConfigDefaultKeySpec>[]>;

Specifies parameters that will be used for generating initial DnsKeys for this ManagedZone. If you provide a spec for keySigning or zoneSigning, you must also provide one for the other. defaultKeySpecs can only be updated when the state is off. Structure is documented below.

property kind

kind?: pulumi.Input<string>;

Identifies what kind of resource this is

property nonExistence

nonExistence?: pulumi.Input<string>;

Specifies the mechanism used to provide authenticated denial-of-existence responses. nonExistence can only be updated when the state is off.

property state

state?: pulumi.Input<string>;

Specifies whether DNSSEC is enabled, and what mode it is in

interface ManagedZoneDnssecConfigDefaultKeySpec

interface ManagedZoneDnssecConfigDefaultKeySpec

property algorithm

algorithm?: pulumi.Input<string>;

String mnemonic specifying the DNSSEC algorithm of this key

property keyLength

keyLength?: pulumi.Input<number>;

Length of the keys in bits

property keyType

keyType?: pulumi.Input<string>;

Specifies whether this is a key signing key (KSK) or a zone signing key (ZSK). Key signing keys have the Secure Entry Point flag set and, when active, will only be used to sign resource record sets of type DNSKEY. Zone signing keys do not have the Secure Entry Point flag set and will be used to sign all other types of resource record sets.

property kind

kind?: pulumi.Input<string>;

Identifies what kind of resource this is

interface ManagedZoneForwardingConfig

interface ManagedZoneForwardingConfig

property targetNameServers

targetNameServers: pulumi.Input<pulumi.Input<ManagedZoneForwardingConfigTargetNameServer>[]>;

List of target name servers to forward to. Cloud DNS will select the best available name server if more than one target is given. Structure is documented below.

interface ManagedZoneForwardingConfigTargetNameServer

interface ManagedZoneForwardingConfigTargetNameServer

property forwardingPath

forwardingPath?: pulumi.Input<string>;

Forwarding path for this TargetNameServer. If unset or default Cloud DNS will make forwarding decision based on address ranges, i.e. RFC1918 addresses go to the VPC, Non-RFC1918 addresses go to the Internet. When set to private, Cloud DNS will always send queries through VPC for this target

property ipv4Address

ipv4Address: pulumi.Input<string>;

IPv4 address of a target name server.

interface ManagedZonePeeringConfig

interface ManagedZonePeeringConfig

property targetNetwork

targetNetwork: pulumi.Input<ManagedZonePeeringConfigTargetNetwork>;

The network with which to peer. Structure is documented below.

interface ManagedZonePeeringConfigTargetNetwork

interface ManagedZonePeeringConfigTargetNetwork

property networkUrl

networkUrl: pulumi.Input<string>;

The fully qualified URL of the VPC network to forward queries to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}

interface ManagedZonePrivateVisibilityConfig

interface ManagedZonePrivateVisibilityConfig

property networks

networks: pulumi.Input<pulumi.Input<ManagedZonePrivateVisibilityConfigNetwork>[]>;

The list of VPC networks that can see this zone. Structure is documented below.

interface ManagedZonePrivateVisibilityConfigNetwork

interface ManagedZonePrivateVisibilityConfigNetwork

property networkUrl

networkUrl: pulumi.Input<string>;

The fully qualified URL of the VPC network to forward queries to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}

interface ManagedZoneServiceDirectoryConfig

interface ManagedZoneServiceDirectoryConfig

property namespace

namespace: pulumi.Input<ManagedZoneServiceDirectoryConfigNamespace>;

The namespace associated with the zone. Structure is documented below.

interface ManagedZoneServiceDirectoryConfigNamespace

interface ManagedZoneServiceDirectoryConfigNamespace

property namespaceUrl

namespaceUrl: pulumi.Input<string>;

The fully qualified or partial URL of the service directory namespace that should be associated with the zone. This should be formatted like https://servicedirectory.googleapis.com/v1/projects/{project}/locations/{location}/namespaces/{namespace_id} or simply projects/{project}/locations/{location}/namespaces/{namespace_id} Ignored for public visibility zones.

interface PolicyAlternativeNameServerConfig

interface PolicyAlternativeNameServerConfig

property targetNameServers

targetNameServers: pulumi.Input<pulumi.Input<PolicyAlternativeNameServerConfigTargetNameServer>[]>;

Sets an alternative name server for the associated networks. When specified, all DNS queries are forwarded to a name server that you choose. Names such as .internal are not available when an alternative name server is specified. Structure is documented below.

interface PolicyAlternativeNameServerConfigTargetNameServer

interface PolicyAlternativeNameServerConfigTargetNameServer

property ipv4Address

ipv4Address: pulumi.Input<string>;

IPv4 address to forward to.

interface PolicyNetwork

interface PolicyNetwork

property networkUrl

networkUrl: pulumi.Input<string>;

The fully qualified URL of the VPC network to bind to. This should be formatted like https://www.googleapis.com/compute/v1/projects/{project}/global/networks/{network}

namespace endpoints

interface ServiceApi

interface ServiceApi

property methods

methods?: pulumi.Input<pulumi.Input<ServiceApiMethod>[]>;

property name

name?: pulumi.Input<string>;

property syntax

syntax?: pulumi.Input<string>;

property version

version?: pulumi.Input<string>;

interface ServiceApiMethod

interface ServiceApiMethod

property name

name?: pulumi.Input<string>;

property requestType

requestType?: pulumi.Input<string>;

property responseType

responseType?: pulumi.Input<string>;

property syntax

syntax?: pulumi.Input<string>;

interface ServiceEndpoint

interface ServiceEndpoint

property address

address?: pulumi.Input<string>;

property name

name?: pulumi.Input<string>;

interface ServiceIamBindingCondition

interface ServiceIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface ServiceIamMemberCondition

interface ServiceIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

namespace filestore

interface InstanceFileShares

interface InstanceFileShares

property capacityGb

capacityGb: pulumi.Input<number>;

File share capacity in GiB. This must be at least 1024 GiB for the standard tier, or 2560 GiB for the premium tier.

property name

name: pulumi.Input<string>;

The name of the fileshare (16 characters or less)

interface InstanceNetwork

interface InstanceNetwork

property ipAddresses

ipAddresses?: pulumi.Input<pulumi.Input<string>[]>;

- A list of IPv4 or IPv6 addresses.

property modes

modes: pulumi.Input<pulumi.Input<string>[]>;

IP versions for which the instance has IP addresses assigned.

property network

network: pulumi.Input<string>;

The name of the GCE VPC network to which the instance is connected.

property reservedIpRange

reservedIpRange?: pulumi.Input<string>;

A /29 CIDR block that identifies the range of IP addresses reserved for this instance.

namespace firestore

interface IndexField

interface IndexField

property arrayConfig

arrayConfig?: pulumi.Input<string>;

Indicates that this field supports operations on arrayValues. Only one of order and arrayConfig can be specified.

property fieldPath

fieldPath?: pulumi.Input<string>;

Name of the field.

property order

order?: pulumi.Input<string>;

Indicates that this field supports ordering by the specified order or comparing using =, <, <=, >, >=. Only one of order and arrayConfig can be specified.

namespace folder

interface IAMBindingCondition

interface IAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface IAMMemberCondition

interface IAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface OrganizationPolicyBooleanPolicy

interface OrganizationPolicyBooleanPolicy

property enforced

enforced: pulumi.Input<boolean>;

If true, then the Policy is enforced. If false, then any configuration is acceptable.

interface OrganizationPolicyListPolicy

interface OrganizationPolicyListPolicy

property allow

allow?: pulumi.Input<OrganizationPolicyListPolicyAllow>;

or deny - (Optional) One or the other must be set.

property deny

deny?: pulumi.Input<OrganizationPolicyListPolicyDeny>;

property inheritFromParent

inheritFromParent?: pulumi.Input<boolean>;

If set to true, the values from the effective Policy of the parent resource are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.

property suggestedValue

suggestedValue?: pulumi.Input<string>;

The Google Cloud Console will try to default to a configuration that matches the value specified in this field.

interface OrganizationPolicyListPolicyAllow

interface OrganizationPolicyListPolicyAllow

property all

all?: pulumi.Input<boolean>;

The policy allows or denies all values.

property values

values?: pulumi.Input<pulumi.Input<string>[]>;

The policy can define specific values that are allowed or denied.

interface OrganizationPolicyListPolicyDeny

interface OrganizationPolicyListPolicyDeny

property all

all?: pulumi.Input<boolean>;

The policy allows or denies all values.

property values

values?: pulumi.Input<pulumi.Input<string>[]>;

The policy can define specific values that are allowed or denied.

interface OrganizationPolicyRestorePolicy

interface OrganizationPolicyRestorePolicy

property default

default: pulumi.Input<boolean>;

May only be set to true. If set, then the default Policy is restored.

namespace gameservices

interface GameServerClusterConnectionInfo

interface GameServerClusterConnectionInfo

property gkeClusterReference

gkeClusterReference: pulumi.Input<GameServerClusterConnectionInfoGkeClusterReference>;

Reference of the GKE cluster where the game servers are installed. Structure is documented below.

property namespace

namespace: pulumi.Input<string>;

Namespace designated on the game server cluster where the game server instances will be created. The namespace existence will be validated during creation.

interface GameServerClusterConnectionInfoGkeClusterReference

interface GameServerClusterConnectionInfoGkeClusterReference

property cluster

cluster: pulumi.Input<string>;

The full or partial name of a GKE cluster, using one of the following forms: * projects/{project_id}/locations/{location}/clusters/{cluster_id} * locations/{location}/clusters/{cluster_id} * {cluster_id} If project and location are not specified, the project and location of the GameServerCluster resource are used to generate the full name of the GKE cluster.

interface GameServerConfigFleetConfig

interface GameServerConfigFleetConfig

property fleetSpec

fleetSpec: pulumi.Input<string>;

The fleet spec, which is sent to Agones to configure fleet. The spec can be passed as inline json but it is recommended to use a file reference instead. File references can contain the json or yaml format of the fleet spec. Eg: * fleetSpec = jsonencode(yamldecode(file(“fleet_configs.yaml”))) * fleetSpec = file(“fleet_configs.json”) The format of the spec can be found : https://agones.dev/site/docs/reference/fleet/.

property name

name?: pulumi.Input<string>;

The name of the ScalingConfig

interface GameServerConfigScalingConfig

interface GameServerConfigScalingConfig

property fleetAutoscalerSpec

fleetAutoscalerSpec: pulumi.Input<string>;

Fleet autoscaler spec, which is sent to Agones. Example spec can be found : https://agones.dev/site/docs/reference/fleetautoscaler/

property name

name: pulumi.Input<string>;

The name of the ScalingConfig

property schedules

schedules?: pulumi.Input<pulumi.Input<GameServerConfigScalingConfigSchedule>[]>;

The schedules to which this scaling config applies. Structure is documented below.

property selectors

selectors?: pulumi.Input<pulumi.Input<GameServerConfigScalingConfigSelector>[]>;

Labels used to identify the clusters to which this scaling config applies. A cluster is subject to this scaling config if its labels match any of the selector entries. Structure is documented below.

interface GameServerConfigScalingConfigSchedule

interface GameServerConfigScalingConfigSchedule

property cronJobDuration

cronJobDuration?: pulumi.Input<string>;

The duration for the cron job event. The duration of the event is effective after the cron job’s start time. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”.

property cronSpec

cronSpec?: pulumi.Input<string>;

The cron definition of the scheduled event. See https://en.wikipedia.org/wiki/Cron. Cron spec specifies the local time as defined by the realm.

property endTime

endTime?: pulumi.Input<string>;

The end time of the event. A timestamp in RFC3339 UTC “Zulu” format, accurate to nanoseconds. Example: “2014-10-02T15:01:23.045123456Z”.

property startTime

startTime?: pulumi.Input<string>;

The start time of the event. A timestamp in RFC3339 UTC “Zulu” format, accurate to nanoseconds. Example: “2014-10-02T15:01:23.045123456Z”.

interface GameServerConfigScalingConfigSelector

interface GameServerConfigScalingConfigSelector

property labels

labels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Set of labels to group by.

interface GameServerDeploymentRolloutGameServerConfigOverride

interface GameServerDeploymentRolloutGameServerConfigOverride

property configVersion

configVersion?: pulumi.Input<string>;

Version of the configuration.

property realmsSelector

realmsSelector?: pulumi.Input<GameServerDeploymentRolloutGameServerConfigOverrideRealmsSelector>;

Selection by realms. Structure is documented below.

interface GameServerDeploymentRolloutGameServerConfigOverrideRealmsSelector

interface GameServerDeploymentRolloutGameServerConfigOverrideRealmsSelector

property realms

realms?: pulumi.Input<pulumi.Input<string>[]>;

List of realms to match against.

namespace healthcare

interface DatasetIamBindingCondition

interface DatasetIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface DatasetIamMemberCondition

interface DatasetIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface DicomStoreIamBindingCondition

interface DicomStoreIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface DicomStoreIamMemberCondition

interface DicomStoreIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface DicomStoreNotificationConfig

interface DicomStoreNotificationConfig

property pubsubTopic

pubsubTopic: pulumi.Input<string>;

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. cloud-healthcare@system.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

interface FhirStoreIamBindingCondition

interface FhirStoreIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface FhirStoreIamMemberCondition

interface FhirStoreIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface FhirStoreNotificationConfig

interface FhirStoreNotificationConfig

property pubsubTopic

pubsubTopic: pulumi.Input<string>;

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. cloud-healthcare@system.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

interface Hl7StoreIamBindingCondition

interface Hl7StoreIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface Hl7StoreIamMemberCondition

interface Hl7StoreIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface Hl7StoreNotificationConfig

interface Hl7StoreNotificationConfig

property pubsubTopic

pubsubTopic: pulumi.Input<string>;

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. cloud-healthcare@system.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

interface Hl7StoreNotificationConfigs

interface Hl7StoreNotificationConfigs

property filter

filter?: pulumi.Input<string>;

Restricts notifications sent for messages matching a filter. If this is empty, all messages are matched. Syntax: https://cloud.google.com/appengine/docs/standard/python/search/query_strings Fields/functions available for filtering are: * messageType, from the MSH-9.1 field. For example, NOT messageType = “ADT”. * sendDate or sendDate, the YYYY-MM-DD date the message was sent in the dataset’s timeZone, from the MSH-7 segment. For example, sendDate < “2017-01-02”. * sendTime, the timestamp when the message was sent, using the RFC3339 time format for comparisons, from the MSH-7 segment. For example, sendTime < “2017-01-02T00:00:00-05:00”. * sendFacility, the care center that the message came from, from the MSH-4 segment. For example, sendFacility = “ABC”. * PatientId(value, type), which matches if the message lists a patient having an ID of the given value and type in the PID-2, PID-3, or PID-4 segments. For example, PatientId(“123456”, “MRN”). * labels.x, a string value of the label with key x as set using the Message.labels map. For example, labels.“priority”=“high”. The operator :* can be used to assert the existence of a label. For example, labels.“priority”:*.

property pubsubTopic

pubsubTopic: pulumi.Input<string>;

The Cloud Pub/Sub topic that notifications of changes are published on. Supplied by the client. PubsubMessage.Data will contain the resource name. PubsubMessage.MessageId is the ID of this message. It is guaranteed to be unique within the topic. PubsubMessage.PublishTime is the time at which the message was published. Notifications are only sent if the topic is non-empty. Topic names must be scoped to a project. cloud-healthcare@system.gserviceaccount.com must have publisher permissions on the given Cloud Pub/Sub topic. Not having adequate permissions will cause the calls that send notifications to fail.

interface Hl7StoreParserConfig

interface Hl7StoreParserConfig

property allowNullHeader

allowNullHeader?: pulumi.Input<boolean>;

Determines whether messages with no header are allowed.

property schema

schema?: pulumi.Input<string>;

JSON encoded string for schemas used to parse messages in this store if schematized parsing is desired.

property segmentTerminator

segmentTerminator?: pulumi.Input<string>;

Byte(s) to be used as the segment terminator. If this is unset, ‘\r’ will be used as segment terminator. A base64-encoded string.

namespace iap

interface AppEngineServiceIamBindingCondition

interface AppEngineServiceIamBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface AppEngineServiceIamMemberCondition

interface AppEngineServiceIamMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface AppEngineVersionIamBindingCondition

interface AppEngineVersionIamBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface AppEngineVersionIamMemberCondition

interface AppEngineVersionIamMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface TunnelInstanceIAMBindingCondition

interface TunnelInstanceIAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface TunnelInstanceIAMMemberCondition

interface TunnelInstanceIAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebBackendServiceIamBindingCondition

interface WebBackendServiceIamBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebBackendServiceIamMemberCondition

interface WebBackendServiceIamMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebIamBindingCondition

interface WebIamBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebIamMemberCondition

interface WebIamMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebTypeAppEngingIamBindingCondition

interface WebTypeAppEngingIamBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebTypeAppEngingIamMemberCondition

interface WebTypeAppEngingIamMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebTypeComputeIamBindingCondition

interface WebTypeComputeIamBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface WebTypeComputeIamMemberCondition

interface WebTypeComputeIamMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

namespace identityplatform

interface InboundSamlConfigIdpConfig

interface InboundSamlConfigIdpConfig

property idpCertificates

idpCertificates: pulumi.Input<pulumi.Input<InboundSamlConfigIdpConfigIdpCertificate>[]>;

The IdP’s certificate data to verify the signature in the SAMLResponse issued by the IDP. Structure is documented below.

property idpEntityId

idpEntityId: pulumi.Input<string>;

Unique identifier for all SAML entities

property signRequest

signRequest?: pulumi.Input<boolean>;

Indicates if outbounding SAMLRequest should be signed.

property ssoUrl

ssoUrl: pulumi.Input<string>;

URL to send Authentication request to.

interface InboundSamlConfigIdpConfigIdpCertificate

interface InboundSamlConfigIdpConfigIdpCertificate

property x509Certificate

x509Certificate?: pulumi.Input<string>;

- The x509 certificate

interface InboundSamlConfigSpConfig

interface InboundSamlConfigSpConfig

property callbackUri

callbackUri?: pulumi.Input<string>;

Callback URI where responses from IDP are handled. Must start with https://.

property spCertificates

spCertificates?: pulumi.Input<pulumi.Input<InboundSamlConfigSpConfigSpCertificate>[]>;

- The IDP’s certificate data to verify the signature in the SAMLResponse issued by the IDP. Structure is documented below.

property spEntityId

spEntityId?: pulumi.Input<string>;

Unique identifier for all SAML entities.

interface InboundSamlConfigSpConfigSpCertificate

interface InboundSamlConfigSpConfigSpCertificate

property x509Certificate

x509Certificate?: pulumi.Input<string>;

- The x509 certificate

interface TenantInboundSamlConfigIdpConfig

interface TenantInboundSamlConfigIdpConfig

property idpCertificates

idpCertificates: pulumi.Input<pulumi.Input<TenantInboundSamlConfigIdpConfigIdpCertificate>[]>;

The IDP’s certificate data to verify the signature in the SAMLResponse issued by the IDP. Structure is documented below.

property idpEntityId

idpEntityId: pulumi.Input<string>;

Unique identifier for all SAML entities

property signRequest

signRequest?: pulumi.Input<boolean>;

Indicates if outbounding SAMLRequest should be signed.

property ssoUrl

ssoUrl: pulumi.Input<string>;

URL to send Authentication request to.

interface TenantInboundSamlConfigIdpConfigIdpCertificate

interface TenantInboundSamlConfigIdpConfigIdpCertificate

property x509Certificate

x509Certificate?: pulumi.Input<string>;

- The x509 certificate

interface TenantInboundSamlConfigSpConfig

interface TenantInboundSamlConfigSpConfig

property callbackUri

callbackUri: pulumi.Input<string>;

Callback URI where responses from IDP are handled. Must start with https://.

property spCertificates

spCertificates?: pulumi.Input<pulumi.Input<TenantInboundSamlConfigSpConfigSpCertificate>[]>;

- The IDP’s certificate data to verify the signature in the SAMLResponse issued by the IDP. Structure is documented below.

property spEntityId

spEntityId: pulumi.Input<string>;

Unique identifier for all SAML entities.

interface TenantInboundSamlConfigSpConfigSpCertificate

interface TenantInboundSamlConfigSpConfigSpCertificate

property x509Certificate

x509Certificate?: pulumi.Input<string>;

- The x509 certificate

namespace iot

interface RegistryCredential

interface RegistryCredential

property publicKeyCertificate

publicKeyCertificate: pulumi.Input<RegistryCredentialPublicKeyCertificate>;

A public key certificate format and data.

interface RegistryCredentialPublicKeyCertificate

interface RegistryCredentialPublicKeyCertificate

property certificate

certificate: pulumi.Input<string>;

The certificate data.

property format

format: pulumi.Input<string>;

The field allows only X509_CERTIFICATE_PEM.

interface RegistryEventNotificationConfigItem

interface RegistryEventNotificationConfigItem

property pubsubTopicName

pubsubTopicName: pulumi.Input<string>;

PubSub topic name to publish device events.

property subfolderMatches

subfolderMatches?: pulumi.Input<string>;

If the subfolder name matches this string exactly, this configuration will be used. The string must not include the leading ‘/’ character. If empty, all strings are matched. Empty value can only be used for the last eventNotificationConfigs item.

interface RegistryHttpConfig

interface RegistryHttpConfig

property httpEnabledState

httpEnabledState: pulumi.Input<string>;

The field allows HTTP_ENABLED or HTTP_DISABLED.

interface RegistryMqttConfig

interface RegistryMqttConfig

property mqttEnabledState

mqttEnabledState: pulumi.Input<string>;

The field allows MQTT_ENABLED or MQTT_DISABLED.

interface RegistryStateNotificationConfig

interface RegistryStateNotificationConfig

property pubsubTopicName

pubsubTopicName: pulumi.Input<string>;

PubSub topic name to publish device events.

namespace kms

interface CryptoKeyIAMBindingCondition

interface CryptoKeyIAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface CryptoKeyIAMMemberCondition

interface CryptoKeyIAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface CryptoKeyVersionTemplate

interface CryptoKeyVersionTemplate

property algorithm

algorithm: pulumi.Input<string>;

The algorithm to use when creating a version based on this template. See the algorithm reference for possible inputs.

property protectionLevel

protectionLevel?: pulumi.Input<string>;

The protection level to use when creating a version based on this template.

interface KeyRingIAMBindingCondition

interface KeyRingIAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface KeyRingIAMMemberCondition

interface KeyRingIAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface RegistryCredential

interface RegistryCredential

property publicKeyCertificate

publicKeyCertificate: pulumi.Input<RegistryCredentialPublicKeyCertificate>;

A public key certificate format and data.

interface RegistryCredentialPublicKeyCertificate

interface RegistryCredentialPublicKeyCertificate

property certificate

certificate: pulumi.Input<string>;

The certificate data.

property format

format: pulumi.Input<string>;

The field allows only X509_CERTIFICATE_PEM.

interface RegistryEventNotificationConfigItem

interface RegistryEventNotificationConfigItem

property pubsubTopicName

pubsubTopicName: pulumi.Input<string>;

PubSub topic name to publish device events.

property subfolderMatches

subfolderMatches?: pulumi.Input<string>;

If the subfolder name matches this string exactly, this configuration will be used. The string must not include the leading ‘/’ character. If empty, all strings are matched. Empty value can only be used for the last eventNotificationConfigs item.

interface RegistryHttpConfig

interface RegistryHttpConfig

property httpEnabledState

httpEnabledState: pulumi.Input<string>;

The field allows HTTP_ENABLED or HTTP_DISABLED.

interface RegistryMqttConfig

interface RegistryMqttConfig

property mqttEnabledState

mqttEnabledState: pulumi.Input<string>;

The field allows MQTT_ENABLED or MQTT_DISABLED.

interface RegistryStateNotificationConfig

interface RegistryStateNotificationConfig

property pubsubTopicName

pubsubTopicName: pulumi.Input<string>;

PubSub topic name to publish device events.

namespace logging

interface BillingAccountSinkBigqueryOptions

interface BillingAccountSinkBigqueryOptions

property usePartitionedTables

usePartitionedTables: pulumi.Input<boolean>;

Whether to use BigQuery’s partition tables. By default, Logging creates dated tables based on the log entries’ timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and special query syntax has to be used instead. In both cases, tables are sharded based on UTC timezone.

interface FolderSinkBigqueryOptions

interface FolderSinkBigqueryOptions

property usePartitionedTables

usePartitionedTables: pulumi.Input<boolean>;

Whether to use BigQuery’s partition tables. By default, Logging creates dated tables based on the log entries’ timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and special query syntax has to be used instead. In both cases, tables are sharded based on UTC timezone.

interface MetricBucketOptions

interface MetricBucketOptions

property explicitBuckets

explicitBuckets?: pulumi.Input<MetricBucketOptionsExplicitBuckets>;

Specifies a set of buckets with arbitrary widths. Structure is documented below.

property exponentialBuckets

exponentialBuckets?: pulumi.Input<MetricBucketOptionsExponentialBuckets>;

Specifies an exponential sequence of buckets that have a width that is proportional to the value of the lower bound. Each bucket represents a constant relative uncertainty on a specific value in the bucket. Structure is documented below.

property linearBuckets

linearBuckets?: pulumi.Input<MetricBucketOptionsLinearBuckets>;

Specifies a linear sequence of buckets that all have the same width (except overflow and underflow). Each bucket represents a constant absolute uncertainty on the specific value in the bucket. Structure is documented below.

interface MetricBucketOptionsExplicitBuckets

interface MetricBucketOptionsExplicitBuckets

property bounds

bounds: pulumi.Input<pulumi.Input<number>[]>;

The values must be monotonically increasing.

interface MetricBucketOptionsExponentialBuckets

interface MetricBucketOptionsExponentialBuckets

property growthFactor

growthFactor?: pulumi.Input<number>;

Must be greater than 1.

property numFiniteBuckets

numFiniteBuckets?: pulumi.Input<number>;

Must be greater than 0.

property scale

scale?: pulumi.Input<number>;

Must be greater than 0.

interface MetricBucketOptionsLinearBuckets

interface MetricBucketOptionsLinearBuckets

property numFiniteBuckets

numFiniteBuckets?: pulumi.Input<number>;

Must be greater than 0.

property offset

offset?: pulumi.Input<number>;

Lower bound of the first bucket.

property width

width?: pulumi.Input<number>;

Must be greater than 0.

interface MetricMetricDescriptor

interface MetricMetricDescriptor

property displayName

displayName?: pulumi.Input<string>;

A concise name for the metric, which can be displayed in user interfaces. Use sentence case without an ending period, for example “Request count”. This field is optional but it is recommended to be set for any metrics associated with user-visible concepts, such as Quota.

property labels

labels?: pulumi.Input<pulumi.Input<MetricMetricDescriptorLabel>[]>;

The set of labels that can be used to describe a specific instance of this metric type. For example, the appengine.googleapis.com/http/server/response_latencies metric type has a label for the HTTP response code, response_code, so you can look at latencies for successful responses or just for responses that failed. Structure is documented below.

property metricKind

metricKind: pulumi.Input<string>;

Whether the metric records instantaneous values, changes to a value, etc. Some combinations of metricKind and valueType might not be supported. For counter metrics, set this to DELTA.

property unit

unit?: pulumi.Input<string>;

The unit in which the metric value is reported. It is only applicable if the valueType is INT64, DOUBLE, or DISTRIBUTION. The supported units are a subset of The Unified Code for Units of Measure standard

property valueType

valueType: pulumi.Input<string>;

The type of data that can be assigned to the label.

interface MetricMetricDescriptorLabel

interface MetricMetricDescriptorLabel

property description

description?: pulumi.Input<string>;

A description of this metric, which is used in documentation. The maximum length of the description is 8000 characters.

property key

key: pulumi.Input<string>;

The label key.

property valueType

valueType?: pulumi.Input<string>;

The type of data that can be assigned to the label.

interface OrganizationSinkBigqueryOptions

interface OrganizationSinkBigqueryOptions

property usePartitionedTables

usePartitionedTables: pulumi.Input<boolean>;

Whether to use BigQuery’s partition tables. By default, Logging creates dated tables based on the log entries’ timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and special query syntax has to be used instead. In both cases, tables are sharded based on UTC timezone.

interface ProjectSinkBigqueryOptions

interface ProjectSinkBigqueryOptions

property usePartitionedTables

usePartitionedTables: pulumi.Input<boolean>;

Whether to use BigQuery’s partition tables. By default, Logging creates dated tables based on the log entries’ timestamps, e.g. syslog_20170523. With partitioned tables the date suffix is no longer present and special query syntax has to be used instead. In both cases, tables are sharded based on UTC timezone.

namespace ml

interface EngineModelDefaultVersion

interface EngineModelDefaultVersion

property name

name: pulumi.Input<string>;

The name specified for the version when it was created.

namespace monitoring

interface AlertPolicyCondition

interface AlertPolicyCondition

property conditionAbsent

conditionAbsent?: pulumi.Input<AlertPolicyConditionConditionAbsent>;

A condition that checks that a time series continues to receive new data points. Structure is documented below.

property conditionThreshold

conditionThreshold?: pulumi.Input<AlertPolicyConditionConditionThreshold>;

A condition that compares a time series against a threshold. Structure is documented below.

property displayName

displayName: pulumi.Input<string>;

A short name or phrase used to identify the condition in dashboards, notifications, and incidents. To avoid confusion, don’t use the same display name for multiple conditions in the same policy.

property name

name?: pulumi.Input<string>;

- The unique resource name for this condition. Its syntax is: projects/[PROJECT_ID]/alertPolicies/[POLICY_ID]/conditions/[CONDITION_ID] [CONDITION_ID] is assigned by Stackdriver Monitoring when the condition is created as part of a new or updated alerting policy.

interface AlertPolicyConditionConditionAbsent

interface AlertPolicyConditionConditionAbsent

property aggregations

aggregations?: pulumi.Input<pulumi.Input<AlertPolicyConditionConditionAbsentAggregation>[]>;

Specifies the alignment of data points in individual time series as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resources). Multiple aggregations are applied in the order specified.This field is similar to the one in the MetricService.ListTimeSeries request. It is advisable to use the ListTimeSeries method when debugging this field. Structure is documented below.

property duration

duration: pulumi.Input<string>;

The amount of time that a time series must violate the threshold to be considered failing. Currently, only values that are a multiple of a minute–e.g., 0, 60, 120, or 300 seconds–are supported. If an invalid value is given, an error will be returned. When choosing a duration, it is useful to keep in mind the frequency of the underlying time series data (which may also be affected by any alignments specified in the aggregations field); a good duration is long enough so that a single outlier does not generate spurious alerts, but short enough that unhealthy states are detected and alerted on quickly.

property filter

filter?: pulumi.Input<string>;

A filter that identifies which time series should be compared with the threshold.The filter is similar to the one that is specified in the MetricService.ListTimeSeries request (that call is useful to verify the time series that will be retrieved / processed) and must specify the metric type and optionally may contain restrictions on resource type, resource labels, and metric labels. This field may not exceed 2048 Unicode characters in length.

property trigger

trigger?: pulumi.Input<AlertPolicyConditionConditionAbsentTrigger>;

The number/percent of time series for which the comparison must hold in order for the condition to trigger. If unspecified, then the condition will trigger if the comparison is true for any of the time series that have been identified by filter and aggregations, or by the ratio, if denominatorFilter and denominatorAggregations are specified. Structure is documented below.

interface AlertPolicyConditionConditionAbsentAggregation

interface AlertPolicyConditionConditionAbsentAggregation

property alignmentPeriod

alignmentPeriod?: pulumi.Input<string>;

The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.

property crossSeriesReducer

crossSeriesReducer?: pulumi.Input<string>;

The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross- time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.

property groupByFields

groupByFields?: pulumi.Input<pulumi.Input<string>[]>;

The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.

property perSeriesAligner

perSeriesAligner?: pulumi.Input<string>;

The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross- time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.

interface AlertPolicyConditionConditionAbsentTrigger

interface AlertPolicyConditionConditionAbsentTrigger

property count

count?: pulumi.Input<number>;

The absolute number of time series that must fail the predicate for the condition to be triggered.

property percent

percent?: pulumi.Input<number>;

The percentage of time series that must fail the predicate for the condition to be triggered.

interface AlertPolicyConditionConditionThreshold

interface AlertPolicyConditionConditionThreshold

property aggregations

aggregations?: pulumi.Input<pulumi.Input<AlertPolicyConditionConditionThresholdAggregation>[]>;

Specifies the alignment of data points in individual time series as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resources). Multiple aggregations are applied in the order specified.This field is similar to the one in the MetricService.ListTimeSeries request. It is advisable to use the ListTimeSeries method when debugging this field. Structure is documented below.

property comparison

comparison: pulumi.Input<string>;

The comparison to apply between the time series (indicated by filter and aggregation) and the threshold (indicated by threshold_value). The comparison is applied on each time series, with the time series on the left-hand side and the threshold on the right-hand side. Only COMPARISON_LT and COMPARISON_GT are supported currently.

property denominatorAggregations

denominatorAggregations?: pulumi.Input<pulumi.Input<AlertPolicyConditionConditionThresholdDenominatorAggregation>[]>;

Specifies the alignment of data points in individual time series selected by denominatorFilter as well as how to combine the retrieved time series together (such as when aggregating multiple streams on each resource to a single stream for each resource or when aggregating streams across all members of a group of resources).When computing ratios, the aggregations and denominatorAggregations fields must use the same alignment period and produce time series that have the same periodicity and labels.This field is similar to the one in the MetricService.ListTimeSeries request. It is advisable to use the ListTimeSeries method when debugging this field. Structure is documented below.

property denominatorFilter

denominatorFilter?: pulumi.Input<string>;

A filter that identifies a time series that should be used as the denominator of a ratio that will be compared with the threshold. If a denominatorFilter is specified, the time series specified by the filter field will be used as the numerator.The filter is similar to the one that is specified in the MetricService.ListTimeSeries request (that call is useful to verify the time series that will be retrieved / processed) and must specify the metric type and optionally may contain restrictions on resource type, resource labels, and metric labels. This field may not exceed 2048 Unicode characters in length.

property duration

duration: pulumi.Input<string>;

The amount of time that a time series must violate the threshold to be considered failing. Currently, only values that are a multiple of a minute–e.g., 0, 60, 120, or 300 seconds–are supported. If an invalid value is given, an error will be returned. When choosing a duration, it is useful to keep in mind the frequency of the underlying time series data (which may also be affected by any alignments specified in the aggregations field); a good duration is long enough so that a single outlier does not generate spurious alerts, but short enough that unhealthy states are detected and alerted on quickly.

property filter

filter?: pulumi.Input<string>;

A filter that identifies which time series should be compared with the threshold.The filter is similar to the one that is specified in the MetricService.ListTimeSeries request (that call is useful to verify the time series that will be retrieved / processed) and must specify the metric type and optionally may contain restrictions on resource type, resource labels, and metric labels. This field may not exceed 2048 Unicode characters in length.

property thresholdValue

thresholdValue?: pulumi.Input<number>;

A value against which to compare the time series.

property trigger

trigger?: pulumi.Input<AlertPolicyConditionConditionThresholdTrigger>;

The number/percent of time series for which the comparison must hold in order for the condition to trigger. If unspecified, then the condition will trigger if the comparison is true for any of the time series that have been identified by filter and aggregations, or by the ratio, if denominatorFilter and denominatorAggregations are specified. Structure is documented below.

interface AlertPolicyConditionConditionThresholdAggregation

interface AlertPolicyConditionConditionThresholdAggregation

property alignmentPeriod

alignmentPeriod?: pulumi.Input<string>;

The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.

property crossSeriesReducer

crossSeriesReducer?: pulumi.Input<string>;

The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross- time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.

property groupByFields

groupByFields?: pulumi.Input<pulumi.Input<string>[]>;

The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.

property perSeriesAligner

perSeriesAligner?: pulumi.Input<string>;

The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross- time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.

interface AlertPolicyConditionConditionThresholdDenominatorAggregation

interface AlertPolicyConditionConditionThresholdDenominatorAggregation

property alignmentPeriod

alignmentPeriod?: pulumi.Input<string>;

The alignment period for per-time series alignment. If present, alignmentPeriod must be at least 60 seconds. After per-time series alignment, each time series will contain data points only on the period boundaries. If perSeriesAligner is not specified or equals ALIGN_NONE, then this field is ignored. If perSeriesAligner is specified and does not equal ALIGN_NONE, then this field must be defined; otherwise an error is returned.

property crossSeriesReducer

crossSeriesReducer?: pulumi.Input<string>;

The approach to be used to combine time series. Not all reducer functions may be applied to all time series, depending on the metric type and the value type of the original time series. Reduction may change the metric type of value type of the time series.Time series data must be aligned in order to perform cross- time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.

property groupByFields

groupByFields?: pulumi.Input<pulumi.Input<string>[]>;

The set of fields to preserve when crossSeriesReducer is specified. The groupByFields determine how the time series are partitioned into subsets prior to applying the aggregation function. Each subset contains time series that have the same value for each of the grouping fields. Each individual time series is a member of exactly one subset. The crossSeriesReducer is applied to each subset of time series. It is not possible to reduce across different resource types, so this field implicitly contains resource.type. Fields not specified in groupByFields are aggregated away. If groupByFields is not specified and all the time series have the same resource type, then the time series are aggregated into a single output time series. If crossSeriesReducer is not defined, this field is ignored.

property perSeriesAligner

perSeriesAligner?: pulumi.Input<string>;

The approach to be used to align individual time series. Not all alignment functions may be applied to all time series, depending on the metric type and value type of the original time series. Alignment may change the metric type or the value type of the time series.Time series data must be aligned in order to perform cross- time series reduction. If crossSeriesReducer is specified, then perSeriesAligner must be specified and not equal ALIGN_NONE and alignmentPeriod must be specified; otherwise, an error is returned.

interface AlertPolicyConditionConditionThresholdTrigger

interface AlertPolicyConditionConditionThresholdTrigger

property count

count?: pulumi.Input<number>;

The absolute number of time series that must fail the predicate for the condition to be triggered.

property percent

percent?: pulumi.Input<number>;

The percentage of time series that must fail the predicate for the condition to be triggered.

interface AlertPolicyCreationRecord

interface AlertPolicyCreationRecord

property mutateTime

mutateTime?: pulumi.Input<string>;

property mutatedBy

mutatedBy?: pulumi.Input<string>;

interface AlertPolicyDocumentation

interface AlertPolicyDocumentation

property content

content?: pulumi.Input<string>;

The text of the documentation, interpreted according to mimeType. The content may not exceed 8,192 Unicode characters and may not exceed more than 10,240 bytes when encoded in UTF-8 format, whichever is smaller.

property mimeType

mimeType?: pulumi.Input<string>;

The format of the content field. Presently, only the value “text/markdown” is supported.

interface CustomServiceTelemetry

interface CustomServiceTelemetry

property resourceName

resourceName?: pulumi.Input<string>;

The full name of the resource that defines this service. Formatted as described in https://cloud.google.com/apis/design/resource_names.

interface NotificationChannelSensitiveLabels

interface NotificationChannelSensitiveLabels

property authToken

authToken?: pulumi.Input<string>;

An authorization token for a notification channel. Channel types that support this field include: slack Note: This property is sensitive and will not be displayed in the plan.

property password

password?: pulumi.Input<string>;

An password for a notification channel. Channel types that support this field include: webhookBasicauth Note: This property is sensitive and will not be displayed in the plan.

property serviceKey

serviceKey?: pulumi.Input<string>;

An servicekey token for a notification channel. Channel types that support this field include: pagerduty Note: This property is sensitive and will not be displayed in the plan.

interface SloBasicSli

interface SloBasicSli

property latency

latency: pulumi.Input<SloBasicSliLatency>;

Parameters for a latency threshold SLI. Structure is documented below.

property locations

locations?: pulumi.Input<pulumi.Input<string>[]>;

An optional set of locations to which this SLI is relevant. Telemetry from other locations will not be used to calculate performance for this SLI. If omitted, this SLI applies to all locations in which the Service has activity. For service types that don’t support breaking down by location, setting this field will result in an error.

property methods

methods?: pulumi.Input<pulumi.Input<string>[]>;

An optional set of RPCs to which this SLI is relevant. Telemetry from other methods will not be used to calculate performance for this SLI. If omitted, this SLI applies to all the Service’s methods. For service types that don’t support breaking down by method, setting this field will result in an error.

property versions

versions?: pulumi.Input<pulumi.Input<string>[]>;

The set of API versions to which this SLI is relevant. Telemetry from other API versions will not be used to calculate performance for this SLI. If omitted, this SLI applies to all API versions. For service types that don’t support breaking down by version, setting this field will result in an error.

interface SloBasicSliLatency

interface SloBasicSliLatency

property threshold

threshold: pulumi.Input<string>;

A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.

interface SloRequestBasedSli

interface SloRequestBasedSli

property distributionCut

distributionCut?: pulumi.Input<SloRequestBasedSliDistributionCut>;

Used when goodService is defined by a count of values aggregated in a Distribution that fall into a good range. The totalService is the total count of all values aggregated in the Distribution. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.

property goodTotalRatio

goodTotalRatio?: pulumi.Input<SloRequestBasedSliGoodTotalRatio>;

A means to compute a ratio of goodService to totalService. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship goodService + badService = totalService will be assumed. Structure is documented below.

interface SloRequestBasedSliDistributionCut

interface SloRequestBasedSliDistributionCut

property distributionFilter

distributionFilter: pulumi.Input<string>;

A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.

property range

range: pulumi.Input<SloRequestBasedSliDistributionCutRange>;

Range of numerical values. The computed goodService will be the count of values x in the Distribution such that range.min <= x < range.max. inclusive of min and exclusive of max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X < range.max for a good window. Structure is documented below.

interface SloRequestBasedSliDistributionCutRange

interface SloRequestBasedSliDistributionCutRange

property max

max?: pulumi.Input<number>;

max value for the range (inclusive). If not given, will be set to “infinity”, defining an open range “>= range.min”

property min

min?: pulumi.Input<number>;

Min value for the range (inclusive). If not given, will be set to “-infinity”, defining an open range “< range.max”

interface SloRequestBasedSliGoodTotalRatio

interface SloRequestBasedSliGoodTotalRatio

property badServiceFilter

badServiceFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

property goodServiceFilter

goodServiceFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

property totalServiceFilter

totalServiceFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

interface SloWindowsBasedSli

interface SloWindowsBasedSli

property goodBadMetricFilter

goodBadMetricFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter with ValueType = BOOL. The window is good if any true values appear in the window. One of goodBadMetricFilter, goodTotalRatioThreshold, metricMeanInRange, metricSumInRange must be set for windowsBasedSli.

property goodTotalRatioThreshold

goodTotalRatioThreshold?: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThreshold>;

Criterion that describes a window as good if its performance is high enough. One of goodBadMetricFilter, goodTotalRatioThreshold, metricMeanInRange, metricSumInRange must be set for windowsBasedSli. Structure is documented below.

property metricMeanInRange

metricMeanInRange?: pulumi.Input<SloWindowsBasedSliMetricMeanInRange>;

Criterion that describes a window as good if the metric’s value is in a good range, averaged across returned streams. One of goodBadMetricFilter, goodTotalRatioThreshold, metricMeanInRange, metricSumInRange must be set for windowsBasedSli. Average value X of timeSeries should satisfy range.min <= X < range.max for a good window. Structure is documented below.

property metricSumInRange

metricSumInRange?: pulumi.Input<SloWindowsBasedSliMetricSumInRange>;

Criterion that describes a window as good if the metric’s value is in a good range, summed across returned streams. Summed value X of timeSeries should satisfy range.min <= X < range.max for a good window. One of goodBadMetricFilter, goodTotalRatioThreshold, metricMeanInRange, metricSumInRange must be set for windowsBasedSli. Structure is documented below.

property windowPeriod

windowPeriod?: pulumi.Input<string>;

Duration over which window quality is evaluated, given as a duration string “{X}s” representing X seconds. Must be an integer fraction of a day and at least 60s.

interface SloWindowsBasedSliGoodTotalRatioThreshold

interface SloWindowsBasedSliGoodTotalRatioThreshold

property basicSliPerformance

basicSliPerformance?: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance>;

Basic SLI to evaluate to judge window quality. Structure is documented below.

property performance

performance?: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThresholdPerformance>;

Request-based SLI to evaluate to judge window quality. Structure is documented below.

property threshold

threshold?: pulumi.Input<number>;

A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.

interface SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance

interface SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformance

property latency

latency: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency>;

Parameters for a latency threshold SLI. Structure is documented below.

property locations

locations?: pulumi.Input<pulumi.Input<string>[]>;

An optional set of locations to which this SLI is relevant. Telemetry from other locations will not be used to calculate performance for this SLI. If omitted, this SLI applies to all locations in which the Service has activity. For service types that don’t support breaking down by location, setting this field will result in an error.

property methods

methods?: pulumi.Input<pulumi.Input<string>[]>;

An optional set of RPCs to which this SLI is relevant. Telemetry from other methods will not be used to calculate performance for this SLI. If omitted, this SLI applies to all the Service’s methods. For service types that don’t support breaking down by method, setting this field will result in an error.

property versions

versions?: pulumi.Input<pulumi.Input<string>[]>;

The set of API versions to which this SLI is relevant. Telemetry from other API versions will not be used to calculate performance for this SLI. If omitted, this SLI applies to all API versions. For service types that don’t support breaking down by version, setting this field will result in an error.

interface SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency

interface SloWindowsBasedSliGoodTotalRatioThresholdBasicSliPerformanceLatency

property threshold

threshold: pulumi.Input<string>;

A duration string, e.g. 10s. Good service is defined to be the count of requests made to this service that return in no more than threshold.

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformance

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformance

property distributionCut

distributionCut?: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut>;

Used when goodService is defined by a count of values aggregated in a Distribution that fall into a good range. The totalService is the total count of all values aggregated in the Distribution. Defines a distribution TimeSeries filter and thresholds used for measuring good service and total service. Structure is documented below.

property goodTotalRatio

goodTotalRatio?: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio>;

A means to compute a ratio of goodService to totalService. Defines computing this ratio with two TimeSeries monitoring filters Must specify exactly two of good, bad, and total service filters. The relationship goodService + badService = totalService will be assumed. Structure is documented below.

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCut

property distributionFilter

distributionFilter: pulumi.Input<string>;

A TimeSeries monitoring filter aggregating values to quantify the good service provided. Must have ValueType = DISTRIBUTION and MetricKind = DELTA or MetricKind = CUMULATIVE.

property range

range: pulumi.Input<SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange>;

Range of numerical values. The computed goodService will be the count of values x in the Distribution such that range.min <= x < range.max. inclusive of min and exclusive of max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X < range.max for a good window. Structure is documented below.

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformanceDistributionCutRange

property max

max?: pulumi.Input<number>;

max value for the range (inclusive). If not given, will be set to “infinity”, defining an open range “>= range.min”

property min

min?: pulumi.Input<number>;

Min value for the range (inclusive). If not given, will be set to “-infinity”, defining an open range “< range.max”

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio

interface SloWindowsBasedSliGoodTotalRatioThresholdPerformanceGoodTotalRatio

property badServiceFilter

badServiceFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter quantifying bad service provided, either demanded service that was not provided or demanded service that was of inadequate quality. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

property goodServiceFilter

goodServiceFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter quantifying good service provided. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

property totalServiceFilter

totalServiceFilter?: pulumi.Input<string>;

A TimeSeries monitoring filter quantifying total demanded service. Exactly two of good, bad, or total service filter must be defined (where good + bad = total is assumed) Must have ValueType = DOUBLE or ValueType = INT64 and must have MetricKind = DELTA or MetricKind = CUMULATIVE.

interface SloWindowsBasedSliMetricMeanInRange

interface SloWindowsBasedSliMetricMeanInRange

property range

range: pulumi.Input<SloWindowsBasedSliMetricMeanInRangeRange>;

Range of numerical values. The computed goodService will be the count of values x in the Distribution such that range.min <= x < range.max. inclusive of min and exclusive of max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X < range.max for a good window. Structure is documented below.

property timeSeries

timeSeries: pulumi.Input<string>;

A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X < range.max for a good window.

interface SloWindowsBasedSliMetricMeanInRangeRange

interface SloWindowsBasedSliMetricMeanInRangeRange

property max

max?: pulumi.Input<number>;

max value for the range (inclusive). If not given, will be set to “infinity”, defining an open range “>= range.min”

property min

min?: pulumi.Input<number>;

Min value for the range (inclusive). If not given, will be set to “-infinity”, defining an open range “< range.max”

interface SloWindowsBasedSliMetricSumInRange

interface SloWindowsBasedSliMetricSumInRange

property range

range: pulumi.Input<SloWindowsBasedSliMetricSumInRangeRange>;

Range of numerical values. The computed goodService will be the count of values x in the Distribution such that range.min <= x < range.max. inclusive of min and exclusive of max. Open ranges can be defined by setting just one of min or max. Summed value X should satisfy range.min <= X < range.max for a good window. Structure is documented below.

property timeSeries

timeSeries: pulumi.Input<string>;

A monitoring filter specifying the TimeSeries to use for evaluating window quality. The provided TimeSeries must have ValueType = INT64 or ValueType = DOUBLE and MetricKind = GAUGE. Summed value X should satisfy range.min <= X < range.max for a good window.

interface SloWindowsBasedSliMetricSumInRangeRange

interface SloWindowsBasedSliMetricSumInRangeRange

property max

max?: pulumi.Input<number>;

max value for the range (inclusive). If not given, will be set to “infinity”, defining an open range “>= range.min”

property min

min?: pulumi.Input<number>;

Min value for the range (inclusive). If not given, will be set to “-infinity”, defining an open range “< range.max”

interface UptimeCheckConfigContentMatcher

interface UptimeCheckConfigContentMatcher

property content

content: pulumi.Input<string>;

String or regex content to match (max 1024 bytes)

interface UptimeCheckConfigHttpCheck

interface UptimeCheckConfigHttpCheck

property authInfo

authInfo?: pulumi.Input<UptimeCheckConfigHttpCheckAuthInfo>;

The authentication information. Optional when creating an HTTP check; defaults to empty. Structure is documented below.

property headers

headers?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

The list of headers to send as part of the uptime check request. If two headers have the same key and different values, they should be entered as a single header, with the value being a comma-separated list of all the desired values as described at https://www.w3.org/Protocols/rfc2616/rfc2616.txt (page 31). Entering two separate headers with the same key in a Create call will cause the first to be overwritten by the second. The maximum number of headers allowed is 100.

property maskHeaders

maskHeaders?: pulumi.Input<boolean>;

Boolean specifying whether to encrypt the header information. Encryption should be specified for any headers related to authentication that you do not wish to be seen when retrieving the configuration. The server will be responsible for encrypting the headers. On Get/List calls, if maskHeaders is set to True then the headers will be obscured with ******.

property path

path?: pulumi.Input<string>;

The path to the page to run the check against. Will be combined with the host (specified within the MonitoredResource) and port to construct the full URL. Optional (defaults to “/”).

property port

port?: pulumi.Input<number>;

The port to the page to run the check against. Will be combined with host (specified within the MonitoredResource) to construct the full URL.

property useSsl

useSsl?: pulumi.Input<boolean>;

If true, use HTTPS instead of HTTP to run the check.

property validateSsl

validateSsl?: pulumi.Input<boolean>;

Boolean specifying whether to include SSL certificate validation as a part of the Uptime check. Only applies to checks where monitoredResource is set to uptime_url. If useSsl is false, setting validateSsl to true has no effect.

interface UptimeCheckConfigHttpCheckAuthInfo

interface UptimeCheckConfigHttpCheckAuthInfo

property password

password: pulumi.Input<string>;

The password to authenticate. Note: This property is sensitive and will not be displayed in the plan.

property username

username: pulumi.Input<string>;

The username to authenticate.

interface UptimeCheckConfigMonitoredResource

interface UptimeCheckConfigMonitoredResource

property labels

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

Values for all of the labels listed in the associated monitored resource descriptor. For example, Compute Engine VM instances use the labels “projectId”, “instanceId”, and “zone”.

property type

type: pulumi.Input<string>;

The monitored resource type. This field must match the type field of a MonitoredResourceDescriptor (https://cloud.google.com/monitoring/api/ref_v3/rest/v3/projects.monitoredResourceDescriptors#MonitoredResourceDescriptor) object. For example, the type of a Compute Engine VM instance is gce_instance. For a list of types, see Monitoring resource types (https://cloud.google.com/monitoring/api/resources) and Logging resource types (https://cloud.google.com/logging/docs/api/v2/resource-list).

interface UptimeCheckConfigResourceGroup

interface UptimeCheckConfigResourceGroup

property groupId

groupId?: pulumi.Input<string>;

The group of resources being monitored. Should be the name of a group

property resourceType

resourceType?: pulumi.Input<string>;

The resource type of the group members.

interface UptimeCheckConfigTcpCheck

interface UptimeCheckConfigTcpCheck

property port

port: pulumi.Input<number>;

The port to the page to run the check against. Will be combined with host (specified within the MonitoredResource) to construct the full URL.

namespace organizations

interface GetIAMPolicyAuditConfig

interface GetIAMPolicyAuditConfig

property auditLogConfigs

auditLogConfigs: GetIAMPolicyAuditConfigAuditLogConfig[];

A nested block that defines the operations you’d like to log.

property service

service: string;

Defines a service that will be enabled for audit logging. For example, storage.googleapis.com, cloudsql.googleapis.com. allServices is a special value that covers all services.

interface GetIAMPolicyAuditConfigAuditLogConfig

interface GetIAMPolicyAuditConfigAuditLogConfig

property exemptedMembers

exemptedMembers?: string[];

Specifies the identities that are exempt from these types of logging operations. Follows the same format of the members array for binding.

property logType

logType: string;

Defines the logging level. DATA_READ, DATA_WRITE and ADMIN_READ capture different types of events. See the audit configuration documentation for more details.

interface GetIAMPolicyBinding

interface GetIAMPolicyBinding

property condition

condition?: inputs.organizations.GetIAMPolicyBindingCondition;

property members

members: string[];

An array of identities that will be granted the privilege in the role. For more details on format and restrictions see https://cloud.google.com/billing/reference/rest/v1/Policy#Binding Each entry can have one of the following values: * allUsers: A special identifier that represents anyone who is on the internet; with or without a Google account. It can’t be used with the gcp.organizations.Project resource. * allAuthenticatedUsers: A special identifier that represents anyone who is authenticated with a Google account or a service account. It can’t be used with the gcp.organizations.Project resource. * user:{emailid}: An email address that represents a specific Google account. For example, alice@gmail.com. * serviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * group:{emailid}: An email address that represents a Google group. For example, admins@example.com. * domain:{domain}: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.

property role

role: string;

The role/permission that will be granted to the members. See the IAM Roles documentation for a complete list of roles. Note that custom roles must be of the format [projects|organizations]/{parent-name}/roles/{role-name}.

interface GetIAMPolicyBindingCondition

interface GetIAMPolicyBindingCondition

property description

description?: undefined | string;

property expression

expression: string;

property title

title: string;

interface IamAuditConfigAuditLogConfig

interface IamAuditConfigAuditLogConfig

property exemptedMembers

exemptedMembers?: pulumi.Input<pulumi.Input<string>[]>;

Identities that do not cause logging for this type of permission. Each entry can have one of the following values: * user:{emailid}: An email address that represents a specific Google account. For example, alice@gmail.com or joe@example.com. * serviceAccount:{emailid}: An email address that represents a service account. For example, my-other-app@appspot.gserviceaccount.com. * group:{emailid}: An email address that represents a Google group. For example, admins@example.com. * domain:{domain}: A G Suite domain (primary, instead of alias) name that represents all the users of that domain. For example, google.com or example.com.

property logType

logType: pulumi.Input<string>;

Permission type for which logging is to be configured. Must be one of DATA_READ, DATA_WRITE, or ADMIN_READ.

interface IAMBindingCondition

interface IAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface IAMMemberCondition

interface IAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface PolicyBooleanPolicy

interface PolicyBooleanPolicy

property enforced

enforced: pulumi.Input<boolean>;

If true, then the Policy is enforced. If false, then any configuration is acceptable.

interface PolicyListPolicy

interface PolicyListPolicy

property allow

allow?: pulumi.Input<PolicyListPolicyAllow>;

or deny - (Optional) One or the other must be set.

property deny

deny?: pulumi.Input<PolicyListPolicyDeny>;

property inheritFromParent

inheritFromParent?: pulumi.Input<boolean>;

If set to true, the values from the effective Policy of the parent resource are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.

property suggestedValue

suggestedValue?: pulumi.Input<string>;

The Google Cloud Console will try to default to a configuration that matches the value specified in this field.

interface PolicyListPolicyAllow

interface PolicyListPolicyAllow

property all

all?: pulumi.Input<boolean>;

The policy allows or denies all values.

property values

values?: pulumi.Input<pulumi.Input<string>[]>;

The policy can define specific values that are allowed or denied.

interface PolicyListPolicyDeny

interface PolicyListPolicyDeny

property all

all?: pulumi.Input<boolean>;

The policy allows or denies all values.

property values

values?: pulumi.Input<pulumi.Input<string>[]>;

The policy can define specific values that are allowed or denied.

interface PolicyRestorePolicy

interface PolicyRestorePolicy

property default

default: pulumi.Input<boolean>;

May only be set to true. If set, then the default Policy is restored.

namespace projects

interface IAMAuditConfigAuditLogConfig

interface IAMAuditConfigAuditLogConfig

property exemptedMembers

exemptedMembers?: pulumi.Input<pulumi.Input<string>[]>;

Identities that do not cause logging for this type of permission. The format is the same as that for members.

property logType

logType: pulumi.Input<string>;

Permission type for which logging is to be configured. Must be one of DATA_READ, DATA_WRITE, or ADMIN_READ.

interface IAMBindingCondition

interface IAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface IAMMemberCondition

interface IAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface OrganizationPolicyBooleanPolicy

interface OrganizationPolicyBooleanPolicy

property enforced

enforced: pulumi.Input<boolean>;

If true, then the Policy is enforced. If false, then any configuration is acceptable.

interface OrganizationPolicyListPolicy

interface OrganizationPolicyListPolicy

property allow

allow?: pulumi.Input<OrganizationPolicyListPolicyAllow>;

or deny - (Optional) One or the other must be set.

property deny

deny?: pulumi.Input<OrganizationPolicyListPolicyDeny>;

property inheritFromParent

inheritFromParent?: pulumi.Input<boolean>;

If set to true, the values from the effective Policy of the parent resource are inherited, meaning the values set in this Policy are added to the values inherited up the hierarchy.

property suggestedValue

suggestedValue?: pulumi.Input<string>;

The Google Cloud Console will try to default to a configuration that matches the value specified in this field.

interface OrganizationPolicyListPolicyAllow

interface OrganizationPolicyListPolicyAllow

property all

all?: pulumi.Input<boolean>;

The policy allows or denies all values.

property values

values?: pulumi.Input<pulumi.Input<string>[]>;

The policy can define specific values that are allowed or denied.

interface OrganizationPolicyListPolicyDeny

interface OrganizationPolicyListPolicyDeny

property all

all?: pulumi.Input<boolean>;

The policy allows or denies all values.

property values

values?: pulumi.Input<pulumi.Input<string>[]>;

The policy can define specific values that are allowed or denied.

interface OrganizationPolicyRestorePolicy

interface OrganizationPolicyRestorePolicy

property default

default: pulumi.Input<boolean>;

May only be set to true. If set, then the default Policy is restored.

namespace pubsub

interface SubscriptionDeadLetterPolicy

interface SubscriptionDeadLetterPolicy

property deadLetterTopic

deadLetterTopic?: pulumi.Input<string>;

The name of the topic to which dead letter messages should be published. Format is projects/{project}/topics/{topic}. The Cloud Pub/Sub service\naccount associated with the enclosing subscription’s parent project (i.e., service-{project_number}@gcp-sa-pubsub.iam.gserviceaccount.com) must have permission to Publish() to this topic. The operation will fail if the topic does not exist. Users should ensure that there is a subscription attached to this topic since messages published to a topic with no subscriptions are lost.

property maxDeliveryAttempts

maxDeliveryAttempts?: pulumi.Input<number>;

The maximum number of delivery attempts for any message. The value must be between 5 and 100. The number of delivery attempts is defined as 1 + (the sum of number of NACKs and number of times the acknowledgement deadline has been exceeded for the message). A NACK is any call to ModifyAckDeadline with a 0 deadline. Note that client libraries may automatically extend ack_deadlines. This field will be honored on a best effort basis. If this parameter is 0, a default value of 5 is used.

interface SubscriptionExpirationPolicy

interface SubscriptionExpirationPolicy

property ttl

ttl: pulumi.Input<string>;

Specifies the “time-to-live” duration for an associated resource. The resource expires if it is not active for a period of ttl. If ttl is not set, the associated resource never expires. A duration in seconds with up to nine fractional digits, terminated by ’s’. Example - “3.5s”.

interface SubscriptionIAMBindingCondition

interface SubscriptionIAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface SubscriptionIAMMemberCondition

interface SubscriptionIAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface SubscriptionPushConfig

interface SubscriptionPushConfig

property attributes

attributes?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

Endpoint configuration attributes. Every endpoint has a set of API supported attributes that can be used to control different aspects of the message delivery. The currently supported attribute is x-goog-version, which you can use to change the format of the pushed message. This attribute indicates the version of the data expected by the endpoint. This controls the shape of the pushed message (i.e., its fields and metadata). The endpoint version is based on the version of the Pub/Sub API. If not present during the subscriptions.create call, it will default to the version of the API used to make such call. If not present during a subscriptions.modifyPushConfig call, its value will not be changed. subscriptions.get calls will always return a valid version, even if the subscription was created without this attribute. The possible values for this attribute are: - v1beta1: uses the push format defined in the v1beta1 Pub/Sub API. - v1 or v1beta2: uses the push format defined in the v1 Pub/Sub API.

property oidcToken

oidcToken?: pulumi.Input<SubscriptionPushConfigOidcToken>;

If specified, Pub/Sub will generate and attach an OIDC JWT token as an Authorization header in the HTTP request for every pushed message. Structure is documented below.

property pushEndpoint

pushEndpoint: pulumi.Input<string>;

A URL locating the endpoint to which messages should be pushed. For example, a Webhook endpoint might use “https://example.com/push".

interface SubscriptionPushConfigOidcToken

interface SubscriptionPushConfigOidcToken

property audience

audience?: pulumi.Input<string>;

Audience to be used when generating OIDC token. The audience claim identifies the recipients that the JWT is intended for. The audience value is a single case-sensitive string. Having multiple values (array) for the audience field is not supported. More info about the OIDC JWT token audience here: https://tools.ietf.org/html/rfc7519#section-4.1.3 Note: if not specified, the Push endpoint URL will be used.

property serviceAccountEmail

serviceAccountEmail: pulumi.Input<string>;

Service account email to be used for generating the OIDC token. The caller (for subscriptions.create, subscriptions.patch, and subscriptions.modifyPushConfig RPCs) must have the iam.serviceAccounts.actAs permission for the service account.

interface TopicIAMBindingCondition

interface TopicIAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface TopicIAMMemberCondition

interface TopicIAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface TopicMessageStoragePolicy

interface TopicMessageStoragePolicy

property allowedPersistenceRegions

allowedPersistenceRegions: pulumi.Input<pulumi.Input<string>[]>;

A list of IDs of GCP regions where messages that are published to the topic may be persisted in storage. Messages published by publishers running in non-allowed GCP regions (or running outside of GCP altogether) will be routed for storage in one of the allowed regions. An empty list means that no regions are allowed, and is not a valid configuration.

namespace runtimeconfig

interface ConfigIamBindingCondition

interface ConfigIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface ConfigIamMemberCondition

interface ConfigIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

namespace secretmanager

interface SecretIamBindingCondition

interface SecretIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface SecretIamMemberCondition

interface SecretIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface SecretReplication

interface SecretReplication

property automatic

automatic?: pulumi.Input<boolean>;

The Secret will automatically be replicated without any restrictions.

property userManaged

userManaged?: pulumi.Input<SecretReplicationUserManaged>;

The Secret will automatically be replicated without any restrictions. Structure is documented below.

interface SecretReplicationUserManaged

interface SecretReplicationUserManaged

property replicas

replicas: pulumi.Input<pulumi.Input<SecretReplicationUserManagedReplica>[]>;

The list of Replicas for this Secret. Cannot be empty. Structure is documented below.

interface SecretReplicationUserManagedReplica

interface SecretReplicationUserManagedReplica

property location

location: pulumi.Input<string>;

The canonical IDs of the location to replicate data. For example: “us-east1”.

namespace serviceAccount

interface IAMBindingCondition

interface IAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface IAMMemberCondition

interface IAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

namespace servicedirectory

interface NamespaceIamBindingCondition

interface NamespaceIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface NamespaceIamMemberCondition

interface NamespaceIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface ServiceIamBindingCondition

interface ServiceIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface ServiceIamMemberCondition

interface ServiceIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

namespace sourcerepo

interface RepositoryIamBindingCondition

interface RepositoryIamBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface RepositoryIamMemberCondition

interface RepositoryIamMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface RepositoryPubsubConfig

interface RepositoryPubsubConfig

property messageFormat

messageFormat: pulumi.Input<string>;

The format of the Cloud Pub/Sub messages. - PROTOBUF: The message payload is a serialized protocol buffer of SourceRepoEvent. - JSON: The message payload is a JSON string of SourceRepoEvent.

property serviceAccountEmail

serviceAccountEmail?: pulumi.Input<string>;

Email address of the service account used for publishing Cloud Pub/Sub messages. This service account needs to be in the same project as the PubsubConfig. When added, the caller needs to have iam.serviceAccounts.actAs permission on this service account. If unspecified, it defaults to the compute engine default service account.

property topic

topic: pulumi.Input<string>;

The identifier for this object. Format specified above.

namespace spanner

interface DatabaseIAMBindingCondition

interface DatabaseIAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface DatabaseIAMMemberCondition

interface DatabaseIAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface InstanceIAMBindingCondition

interface InstanceIAMBindingCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

interface InstanceIAMMemberCondition

interface InstanceIAMMemberCondition

property description

description?: pulumi.Input<string>;

property expression

expression: pulumi.Input<string>;

property title

title: pulumi.Input<string>;

namespace sql

interface DatabaseInstanceIpAddress

interface DatabaseInstanceIpAddress

property ipAddress

ipAddress?: pulumi.Input<string>;

property timeToRetire

timeToRetire?: pulumi.Input<string>;

property type

type?: pulumi.Input<string>;

interface DatabaseInstanceReplicaConfiguration

interface DatabaseInstanceReplicaConfiguration

property caCertificate

caCertificate?: pulumi.Input<string>;

PEM representation of the trusted CA’s x509 certificate.

property clientCertificate

clientCertificate?: pulumi.Input<string>;

PEM representation of the slave’s x509 certificate.

property clientKey

clientKey?: pulumi.Input<string>;

PEM representation of the slave’s private key. The corresponding public key in encoded in the clientCertificate.

property connectRetryInterval

connectRetryInterval?: pulumi.Input<number>;

The number of seconds between connect retries.

property dumpFilePath

dumpFilePath?: pulumi.Input<string>;

Path to a SQL file in GCS from which slave instances are created. Format is gs://bucket/filename.

property failoverTarget

failoverTarget?: pulumi.Input<boolean>;

Specifies if the replica is the failover target. If the field is set to true the replica will be designated as a failover replica. If the master instance fails, the replica instance will be promoted as the new master instance.

property masterHeartbeatPeriod

masterHeartbeatPeriod?: pulumi.Input<number>;

Time in ms between replication heartbeats.

property password

password?: pulumi.Input<string>;

Password for the replication connection.

property sslCipher

sslCipher?: pulumi.Input<string>;

property username

username?: pulumi.Input<string>;

Username for replication connection.

property verifyServerCertificate

verifyServerCertificate?: pulumi.Input<boolean>;

True if the master’s common name value is checked during the SSL handshake.

interface DatabaseInstanceServerCaCert

interface DatabaseInstanceServerCaCert

property cert

cert?: pulumi.Input<string>;

property commonName

commonName?: pulumi.Input<string>;

property createTime

createTime?: pulumi.Input<string>;

property expirationTime

expirationTime?: pulumi.Input<string>;

The RFC 3339 formatted date time string indicating when this whitelist expires.

property sha1Fingerprint

sha1Fingerprint?: pulumi.Input<string>;

interface DatabaseInstanceSettings

interface DatabaseInstanceSettings

property activationPolicy

activationPolicy?: pulumi.Input<string>;

This specifies when the instance should be active. Can be either ALWAYS, NEVER or ON_DEMAND.

property authorizedGaeApplications

DEPRECATED This property is only applicable to First Generation instances, and First Generation instances are now deprecated.
authorizedGaeApplications?: pulumi.Input<pulumi.Input<string>[]>;

This property is only applicable to First Generation instances. First Generation instances are now deprecated, see here for information on how to upgrade to Second Generation instances. A list of Google App Engine (GAE) project names that are allowed to access this instance.

property availabilityType

availabilityType?: pulumi.Input<string>;

The availability type of the Cloud SQL instance, high availability (REGIONAL) or single zone (ZONAL).’

property backupConfiguration

backupConfiguration?: pulumi.Input<DatabaseInstanceSettingsBackupConfiguration>;

property crashSafeReplication

DEPRECATED This property is only applicable to First Generation instances, and First Generation instances are now deprecated.
crashSafeReplication?: pulumi.Input<boolean>;

This property is only applicable to First Generation instances. First Generation instances are now deprecated, see here for information on how to upgrade to Second Generation instances. Specific to read instances, indicates when crash-safe replication flags are enabled.

property databaseFlags

databaseFlags?: pulumi.Input<pulumi.Input<DatabaseInstanceSettingsDatabaseFlag>[]>;

property diskAutoresize

diskAutoresize?: pulumi.Input<boolean>;

Configuration to increase storage size automatically. Note that future pulumi apply calls will attempt to resize the disk to the value specified in diskSize - if this is set, do not set diskSize.

property diskSize

diskSize?: pulumi.Input<number>;

The size of data disk, in GB. Size of a running instance cannot be reduced but can be increased.

property diskType

diskType?: pulumi.Input<string>;

The type of data disk: PD_SSD or PD_HDD.

property ipConfiguration

ipConfiguration?: pulumi.Input<DatabaseInstanceSettingsIpConfiguration>;

property locationPreference

locationPreference?: pulumi.Input<DatabaseInstanceSettingsLocationPreference>;

property maintenanceWindow

maintenanceWindow?: pulumi.Input<DatabaseInstanceSettingsMaintenanceWindow>;

property pricingPlan

pricingPlan?: pulumi.Input<string>;

Pricing plan for this instance, can only be PER_USE.

property replicationType

DEPRECATED This property is only applicable to First Generation instances, and First Generation instances are now deprecated.
replicationType?: pulumi.Input<string>;

This property is only applicable to First Generation instances. First Generation instances are now deprecated, see here for information on how to upgrade to Second Generation instances. Replication type for this instance, can be one of ASYNCHRONOUS or SYNCHRONOUS.

property tier

tier: pulumi.Input<string>;

The machine type to use. See tiers for more details and supported versions. Postgres supports only shared-core machine types such as db-f1-micro, and custom machine types such as db-custom-2-13312. See the Custom Machine Type Documentation to learn about specifying custom machine types.

property userLabels

userLabels?: pulumi.Input<{[key: string]: pulumi.Input<string>}>;

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

property version

version?: pulumi.Input<number>;

interface DatabaseInstanceSettingsBackupConfiguration

interface DatabaseInstanceSettingsBackupConfiguration

property binaryLogEnabled

binaryLogEnabled?: pulumi.Input<boolean>;

True if binary logging is enabled. If settings.backup_configuration.enabled is false, this must be as well. Cannot be used with Postgres.

property enabled

enabled?: pulumi.Input<boolean>;

True if backup configuration is enabled.

property location

location?: pulumi.Input<string>;

property startTime

startTime?: pulumi.Input<string>;

HH:MM format time indicating when backup configuration starts.

interface DatabaseInstanceSettingsDatabaseFlag

interface DatabaseInstanceSettingsDatabaseFlag

property name

name: pulumi.Input<string>;

A name for this whitelist entry.

property value

value: pulumi.Input<string>;

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

interface DatabaseInstanceSettingsIpConfiguration

interface DatabaseInstanceSettingsIpConfiguration

property authorizedNetworks

authorizedNetworks?: pulumi.Input<pulumi.Input<DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork>[]>;

property ipv4Enabled

ipv4Enabled?: pulumi.Input<boolean>;

Whether this Cloud SQL instance should be assigned a public IPV4 address. Either ipv4Enabled must be enabled or a privateNetwork must be configured.

property privateNetwork

privateNetwork?: pulumi.Input<string>;

The VPC network from which the Cloud SQL instance is accessible for private IP. For example, projects/myProject/global/networks/default. Specifying a network enables private IP. Either ipv4Enabled must be enabled or a privateNetwork must be configured. This setting can be updated, but it cannot be removed after it is set.

property requireSsl

requireSsl?: pulumi.Input<boolean>;

True if mysqld should default to REQUIRE X509 for users connecting over IP.

interface DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork

interface DatabaseInstanceSettingsIpConfigurationAuthorizedNetwork

property expirationTime

expirationTime?: pulumi.Input<string>;

The RFC 3339 formatted date time string indicating when this whitelist expires.

property name

name?: pulumi.Input<string>;

A name for this whitelist entry.

property value

value: pulumi.Input<string>;

A CIDR notation IPv4 or IPv6 address that is allowed to access this instance. Must be set even if other two attributes are not for the whitelist to become active.

interface DatabaseInstanceSettingsLocationPreference

interface DatabaseInstanceSettingsLocationPreference

property followGaeApplication

followGaeApplication?: pulumi.Input<string>;

A GAE application whose zone to remain in. Must be in the same region as this instance.

property zone

zone?: pulumi.Input<string>;

The preferred compute engine zone.

interface DatabaseInstanceSettingsMaintenanceWindow

interface DatabaseInstanceSettingsMaintenanceWindow

property day

day?: pulumi.Input<number>;

Day of week (1-7), starting on Monday

property hour

hour?: pulumi.Input<number>;

Hour of day (0-23), ignored if day not set

property updateTrack

updateTrack?: pulumi.Input<string>;

Receive updates earlier (canary) or later (stable)

namespace storage

interface BucketCor

interface BucketCor

property maxAgeSeconds

maxAgeSeconds?: pulumi.Input<number>;

The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses.

property methods

methods?: pulumi.Input<pulumi.Input<string>[]>;

The list of HTTP methods on which to include CORS response headers, (GET, OPTIONS, POST, etc) Note: “*” is permitted in the list of methods, and means “any method”.

property origins

origins?: pulumi.Input<pulumi.Input<string>[]>;

The list of Origins eligible to receive CORS response headers. Note: “*” is permitted in the list of origins, and means “any Origin”.

property responseHeaders

responseHeaders?: pulumi.Input<pulumi.Input<string>[]>;

The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains.

interface BucketEncryption

interface BucketEncryption

property defaultKmsKeyName

defaultKmsKeyName: pulumi.Input<string>;

interface BucketIAMBindingCondition

interface BucketIAMBindingCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface BucketIAMMemberCondition

interface BucketIAMMemberCondition

property description

description?: pulumi.Input<string>;

An optional description of the expression. This is a longer text which describes the expression, e.g. when hovered over it in a UI.

property expression

expression: pulumi.Input<string>;

Textual representation of an expression in Common Expression Language syntax.

property title

title: pulumi.Input<string>;

A title for the expression, i.e. a short string describing its purpose.

interface BucketLifecycleRule

interface BucketLifecycleRule

property action

action: pulumi.Input<BucketLifecycleRuleAction>;

The Lifecycle Rule’s action configuration. A single block of this type is supported. Structure is documented below.

property condition

condition: pulumi.Input<BucketLifecycleRuleCondition>;

The Lifecycle Rule’s condition configuration. A single block of this type is supported. Structure is documented below.

interface BucketLifecycleRuleAction

interface BucketLifecycleRuleAction

property storageClass

storageClass?: pulumi.Input<string>;

The target Storage Class of objects affected by this Lifecycle Rule. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE.

property type

type: pulumi.Input<string>;

The type of the action of this Lifecycle Rule. Supported values include: Delete and SetStorageClass.

interface BucketLifecycleRuleCondition

interface BucketLifecycleRuleCondition

property age

age?: pulumi.Input<number>;

Minimum age of an object in days to satisfy this condition.

property createdBefore

createdBefore?: pulumi.Input<string>;

Creation date of an object in RFC 3339 (e.g. 2017-06-13) to satisfy this condition.

property matchesStorageClasses

matchesStorageClasses?: pulumi.Input<pulumi.Input<string>[]>;

Storage Class of objects to satisfy this condition. Supported values include: MULTI_REGIONAL, REGIONAL, NEARLINE, COLDLINE, STANDARD, DURABLE_REDUCED_AVAILABILITY.

property numNewerVersions

numNewerVersions?: pulumi.Input<number>;

Relevant only for versioned objects. The number of newer versions of an object to satisfy this condition.

property withState

withState?: pulumi.Input<string>;

Match to live and/or archived objects. Unversioned buckets have only live objects. Supported values include: "LIVE", "ARCHIVED", "ANY".

interface BucketLogging

interface BucketLogging

property logBucket

logBucket: pulumi.Input<string>;

The bucket that will receive log objects.

property logObjectPrefix

logObjectPrefix?: pulumi.Input<string>;

The object prefix for log objects. If it’s not provided, by default GCS sets this to this bucket’s name.

interface BucketRetentionPolicy

interface BucketRetentionPolicy

property isLocked

isLocked?: pulumi.Input<boolean>;

If set to true, the bucket will be locked and permanently restrict edits to the bucket’s retention policy. Caution: Locking a bucket is an irreversible action.

property retentionPeriod

retentionPeriod: pulumi.Input<number>;

The period of time, in seconds, that objects in the bucket must be retained and cannot be deleted, overwritten, or archived. The value must be less than 3,155,760,000 seconds.

interface BucketVersioning

interface BucketVersioning

property enabled

enabled: pulumi.Input<boolean>;

While set to true, versioning is fully enabled for this bucket.

interface BucketWebsite

interface BucketWebsite

property mainPageSuffix

mainPageSuffix?: pulumi.Input<string>;

Behaves as the bucket’s directory index where missing objects are treated as potential directories.

property notFoundPage

notFoundPage?: pulumi.Input<string>;

The custom object to return when a requested resource is not found.

interface DefaultObjectAccessControlProjectTeam

interface DefaultObjectAccessControlProjectTeam

property projectNumber

projectNumber?: pulumi.Input<string>;

property team

team?: pulumi.Input<string>;

interface ObjectAccessControlProjectTeam

interface ObjectAccessControlProjectTeam

property projectNumber

projectNumber?: pulumi.Input<string>;

property team

team?: pulumi.Input<string>;

interface TransferJobSchedule

interface TransferJobSchedule

property scheduleEndDate

scheduleEndDate?: pulumi.Input<TransferJobScheduleScheduleEndDate>;

The last day the recurring transfer will be run. If scheduleEndDate is the same as scheduleStartDate, the transfer will be executed only once. Structure documented below.

property scheduleStartDate

scheduleStartDate: pulumi.Input<TransferJobScheduleScheduleStartDate>;

The first day the recurring transfer is scheduled to run. If scheduleStartDate is in the past, the transfer will run for the first time on the following day. Structure documented below.

property startTimeOfDay

startTimeOfDay?: pulumi.Input<TransferJobScheduleStartTimeOfDay>;

The time in UTC at which the transfer will be scheduled to start in a day. Transfers may start later than this time. If not specified, recurring and one-time transfers that are scheduled to run today will run immediately; recurring transfers that are scheduled to run on a future date will start at approximately midnight UTC on that date. Note that when configuring a transfer with the Cloud Platform Console, the transfer’s start time in a day is specified in your local timezone. Structure documented below.

interface TransferJobScheduleScheduleEndDate

interface TransferJobScheduleScheduleEndDate

property day

day: pulumi.Input<number>;

Day of month. Must be from 1 to 31 and valid for the year and month.

property month

month: pulumi.Input<number>;

Month of year. Must be from 1 to 12.

property year

year: pulumi.Input<number>;

Year of date. Must be from 1 to 9999.

interface TransferJobScheduleScheduleStartDate

interface TransferJobScheduleScheduleStartDate

property day

day: pulumi.Input<number>;

Day of month. Must be from 1 to 31 and valid for the year and month.

property month

month: pulumi.Input<number>;

Month of year. Must be from 1 to 12.

property year

year: pulumi.Input<number>;

Year of date. Must be from 1 to 9999.

interface TransferJobScheduleStartTimeOfDay

interface TransferJobScheduleStartTimeOfDay

property hours

hours: pulumi.Input<number>;

Hours of day in 24 hour format. Should be from 0 to 23

property minutes

minutes: pulumi.Input<number>;

Minutes of hour of day. Must be from 0 to 59.

property nanos

nanos: pulumi.Input<number>;

Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.

property seconds

seconds: pulumi.Input<number>;

Seconds of minutes of the time. Must normally be from 0 to 59.

interface TransferJobTransferSpec

interface TransferJobTransferSpec

property awsS3DataSource

awsS3DataSource?: pulumi.Input<TransferJobTransferSpecAwsS3DataSource>;

An AWS S3 data source. Structure documented below.

property gcsDataSink

gcsDataSink?: pulumi.Input<TransferJobTransferSpecGcsDataSink>;

A Google Cloud Storage data sink. Structure documented below.

property gcsDataSource

gcsDataSource?: pulumi.Input<TransferJobTransferSpecGcsDataSource>;

A Google Cloud Storage data source. Structure documented below.

property httpDataSource

httpDataSource?: pulumi.Input<TransferJobTransferSpecHttpDataSource>;

An HTTP URL data source. Structure documented below.

property objectConditions

objectConditions?: pulumi.Input<TransferJobTransferSpecObjectConditions>;

Only objects that satisfy these object conditions are included in the set of data source and data sink objects. Object conditions based on objects’ lastModificationTime do not exclude objects in a data sink. Structure documented below.

property transferOptions

transferOptions?: pulumi.Input<TransferJobTransferSpecTransferOptions>;

Characteristics of how to treat files from datasource and sink during job. If the option deleteObjectsUniqueInSink is true, object conditions based on objects’ lastModificationTime are ignored and do not exclude objects in a data source or a data sink. Structure documented below.

interface TransferJobTransferSpecAwsS3DataSource

interface TransferJobTransferSpecAwsS3DataSource

property awsAccessKey

awsAccessKey: pulumi.Input<TransferJobTransferSpecAwsS3DataSourceAwsAccessKey>;

AWS credentials block.

property bucketName

bucketName: pulumi.Input<string>;

S3 Bucket name.

interface TransferJobTransferSpecAwsS3DataSourceAwsAccessKey

interface TransferJobTransferSpecAwsS3DataSourceAwsAccessKey

property accessKeyId

accessKeyId: pulumi.Input<string>;

AWS Key ID.

property secretAccessKey

secretAccessKey: pulumi.Input<string>;

AWS Secret Access Key.

interface TransferJobTransferSpecGcsDataSink

interface TransferJobTransferSpecGcsDataSink

property bucketName

bucketName: pulumi.Input<string>;

S3 Bucket name.

interface TransferJobTransferSpecGcsDataSource

interface TransferJobTransferSpecGcsDataSource

property bucketName

bucketName: pulumi.Input<string>;

S3 Bucket name.

interface TransferJobTransferSpecHttpDataSource

interface TransferJobTransferSpecHttpDataSource

property listUrl

listUrl: pulumi.Input<string>;

The URL that points to the file that stores the object list entries. This file must allow public access. Currently, only URLs with HTTP and HTTPS schemes are supported.

interface TransferJobTransferSpecObjectConditions

interface TransferJobTransferSpecObjectConditions

property excludePrefixes

excludePrefixes?: pulumi.Input<pulumi.Input<string>[]>;

excludePrefixes must follow the requirements described for includePrefixes. See Requirements.

property includePrefixes

includePrefixes?: pulumi.Input<pulumi.Input<string>[]>;

If includeRefixes is specified, objects that satisfy the object conditions must have names that start with one of the includePrefixes and that do not start with any of the excludePrefixes. If includePrefixes is not specified, all objects except those that have names starting with one of the excludePrefixes must satisfy the object conditions. See Requirements.

property maxTimeElapsedSinceLastModification

maxTimeElapsedSinceLastModification?: pulumi.Input<string>;

A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”.

property minTimeElapsedSinceLastModification

minTimeElapsedSinceLastModification?: pulumi.Input<string>;

A duration in seconds with up to nine fractional digits, terminated by ’s’. Example: “3.5s”.

interface TransferJobTransferSpecTransferOptions

interface TransferJobTransferSpecTransferOptions

property deleteObjectsFromSourceAfterTransfer

deleteObjectsFromSourceAfterTransfer?: pulumi.Input<boolean>;

Whether objects should be deleted from the source after they are transferred to the sink. Note that this option and deleteObjectsUniqueInSink are mutually exclusive.

property deleteObjectsUniqueInSink

deleteObjectsUniqueInSink?: pulumi.Input<boolean>;

Whether objects that exist only in the sink should be deleted. Note that this option and deleteObjectsFromSourceAfterTransfer are mutually exclusive.

property overwriteObjectsAlreadyExistingInSink

overwriteObjectsAlreadyExistingInSink?: pulumi.Input<boolean>;

Whether overwriting objects that already exist in the sink is allowed.

namespace tpu

interface NodeNetworkEndpoint

interface NodeNetworkEndpoint

property ipAddress

ipAddress?: pulumi.Input<string>;

property port

port?: pulumi.Input<number>;

interface NodeSchedulingConfig

interface NodeSchedulingConfig

property preemptible

preemptible: pulumi.Input<boolean>;

Defines whether the TPU instance is preemptible.

APIs

interface ProviderBatching

interface ProviderBatching

property enableBatching

enableBatching?: pulumi.Input<boolean>;

property sendAfter

sendAfter?: pulumi.Input<string>;