UNPKG

pulumi-bunnynet

Version:

A Pulumi provider for managing Bunny.net CDN and edge computing resources, dynamically bridged from the Terraform Bunnynet provider with support for pull zones, storage, DNS, compute containers, and video streaming.

1,116 lines 48.1 kB
import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; export declare class Pullzone extends pulumi.CustomResource { /** * Get an existing Pullzone resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: PullzoneState, opts?: pulumi.CustomResourceOptions): Pullzone; /** * Returns true if the given object is an instance of Pullzone. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Pullzone; /** * Indicates whether the Canonical header is added to the responses. */ readonly addCanonicalHeader: pulumi.Output<boolean>; /** * The list of referrer hostnames that are allowed to access the pull zone. Requests containing the header "Referer: hostname" that is not on the list will be rejected. If empty, all the referrers are allowed. */ readonly allowReferers: pulumi.Output<string[]>; /** * The list of IPs that are blocked from accessing the pull zone. Requests coming from the following IPs will be rejected. If empty, all the IPs will be allowed */ readonly blockIps: pulumi.Output<string[]>; /** * Indicates whether requests without a referer should be blocked. */ readonly blockNoReferer: pulumi.Output<boolean>; /** * Indicates whether to block POST requests. */ readonly blockPostRequests: pulumi.Output<boolean>; /** * The list of referrer hostnames that are blocked to access the pull zone. Requests containing the header "Referer: hostname" that is not on the list will be rejected. If empty, all the referrers are allowed. */ readonly blockReferers: pulumi.Output<string[]>; /** * This property indicates whether to block the root path. */ readonly blockRootPath: pulumi.Output<boolean>; /** * Indicates whether the cache slice (Optimize for large object delivery) feature is enabled for the Pull Zone */ readonly cacheChunked: pulumi.Output<boolean>; /** * Indicates whether smart caching is enabled. */ readonly cacheEnabled: pulumi.Output<boolean>; /** * Indicates whether bunny.net should be caching error responses. */ readonly cacheErrors: pulumi.Output<boolean>; /** * The override cache time, in seconds. */ readonly cacheExpirationTime: pulumi.Output<number>; /** * The override cache time for the end client, in seconds. */ readonly cacheExpirationTimeBrowser: pulumi.Output<number>; /** * Options: <span pulumi-lang-nodejs="`offline`" pulumi-lang-dotnet="`Offline`" pulumi-lang-go="`offline`" pulumi-lang-python="`offline`" pulumi-lang-yaml="`offline`" pulumi-lang-java="`offline`" pulumi-lang-hcl="`offline`">`offline`</span>, <span pulumi-lang-nodejs="`updating`" pulumi-lang-dotnet="`Updating`" pulumi-lang-go="`updating`" pulumi-lang-python="`updating`" pulumi-lang-yaml="`updating`" pulumi-lang-java="`updating`" pulumi-lang-hcl="`updating`">`updating`</span> */ readonly cacheStales: pulumi.Output<string[]>; /** * Options: <span pulumi-lang-nodejs="`avif`" pulumi-lang-dotnet="`Avif`" pulumi-lang-go="`avif`" pulumi-lang-python="`avif`" pulumi-lang-yaml="`avif`" pulumi-lang-java="`avif`" pulumi-lang-hcl="`avif`">`avif`</span>, <span pulumi-lang-nodejs="`cookie`" pulumi-lang-dotnet="`Cookie`" pulumi-lang-go="`cookie`" pulumi-lang-python="`cookie`" pulumi-lang-yaml="`cookie`" pulumi-lang-java="`cookie`" pulumi-lang-hcl="`cookie`">`cookie`</span>, <span pulumi-lang-nodejs="`country`" pulumi-lang-dotnet="`Country`" pulumi-lang-go="`country`" pulumi-lang-python="`country`" pulumi-lang-yaml="`country`" pulumi-lang-java="`country`" pulumi-lang-hcl="`country`">`country`</span>, <span pulumi-lang-nodejs="`hostname`" pulumi-lang-dotnet="`Hostname`" pulumi-lang-go="`hostname`" pulumi-lang-python="`hostname`" pulumi-lang-yaml="`hostname`" pulumi-lang-java="`hostname`" pulumi-lang-hcl="`hostname`">`hostname`</span>, <span pulumi-lang-nodejs="`mobile`" pulumi-lang-dotnet="`Mobile`" pulumi-lang-go="`mobile`" pulumi-lang-python="`mobile`" pulumi-lang-yaml="`mobile`" pulumi-lang-java="`mobile`" pulumi-lang-hcl="`mobile`">`mobile`</span>, <span pulumi-lang-nodejs="`querystring`" pulumi-lang-dotnet="`Querystring`" pulumi-lang-go="`querystring`" pulumi-lang-python="`querystring`" pulumi-lang-yaml="`querystring`" pulumi-lang-java="`querystring`" pulumi-lang-hcl="`querystring`">`querystring`</span>, <span pulumi-lang-nodejs="`state`" pulumi-lang-dotnet="`State`" pulumi-lang-go="`state`" pulumi-lang-python="`state`" pulumi-lang-yaml="`state`" pulumi-lang-java="`state`" pulumi-lang-hcl="`state`">`state`</span>, <span pulumi-lang-nodejs="`webp`" pulumi-lang-dotnet="`Webp`" pulumi-lang-go="`webp`" pulumi-lang-python="`webp`" pulumi-lang-yaml="`webp`" pulumi-lang-java="`webp`" pulumi-lang-hcl="`webp`">`webp`</span> */ readonly cacheVaries: pulumi.Output<string[]>; /** * Contains the list of vary parameters that will be used for vary cache by cookie string. If empty, cookie vary will not be used. */ readonly cacheVaryCookies: pulumi.Output<string[]>; /** * Contains the list of request headers will be used for vary cache. If empty, it will not be used. */ readonly cacheVaryHeaders: pulumi.Output<string[]>; /** * Contains the list of vary parameters that will be used for vary cache by query string. If empty, all parameters will be used to construct the key */ readonly cacheVaryQuerystrings: pulumi.Output<string[]>; /** * The CNAME domain of the pull zone for setting up custom hostnames */ readonly cdnDomain: pulumi.Output<string>; /** * Indicates whether CORS (Cross-Origin Resource Sharing) is enabled. */ readonly corsEnabled: pulumi.Output<boolean>; /** * A list of file extensions for which CORS is enabled. */ readonly corsExtensions: pulumi.Output<string[]>; /** * If true, the built-in let's encrypt is disabled and requests are passed to the origin. */ readonly disableLetsencrypt: pulumi.Output<boolean>; /** * Contains the custom error page code that will be returned. */ readonly errorpageCustomContent: pulumi.Output<string>; /** * Indicates whether custom error page code should be enabled. */ readonly errorpageCustomEnabled: pulumi.Output<boolean>; /** * The statuspage code that will be used to build the status widget. */ readonly errorpageStatuspageCode: pulumi.Output<string>; /** * Indicates whether the statuspage widget should be displayed on the error pages. */ readonly errorpageStatuspageEnabled: pulumi.Output<boolean>; /** * Indicates whether the error pages should be white-labelled or not */ readonly errorpageWhitelabel: pulumi.Output<boolean>; /** * The amount of data after the rate limit will be activated. */ readonly limitAfter: pulumi.Output<number>; /** * The maximum bandwidth limit in bytes. */ readonly limitBandwidth: pulumi.Output<number>; /** * Excessive requests are delayed until their number exceeds the maximum burst size. */ readonly limitBurst: pulumi.Output<number>; /** * The number of connections limited per IP. */ readonly limitConnections: pulumi.Output<number>; /** * The maximum download speed, in kb/s. Use 0 for unlimited. */ readonly limitDownloadSpeed: pulumi.Output<number>; /** * The maximum amount of requests per IP per second. */ readonly limitRequests: pulumi.Output<number>; /** * Indicates whether logs are anonymized. */ readonly logAnonymized: pulumi.Output<boolean>; /** * Options: `Drop`, `OneDigit` */ readonly logAnonymizedStyle: pulumi.Output<string>; /** * Indicates whether logging is enabled. */ readonly logEnabled: pulumi.Output<boolean>; /** * Indicates whether log forwarding is enabled. */ readonly logForwardEnabled: pulumi.Output<boolean>; /** * Options: `JSON`, `Plain` */ readonly logForwardFormat: pulumi.Output<string>; /** * The port number for log forwarding. */ readonly logForwardPort: pulumi.Output<number>; /** * Options: `DataDog`, `TCP`, `TCPEncrypted`, `UDP` */ readonly logForwardProtocol: pulumi.Output<string>; /** * The server address for log forwarding. */ readonly logForwardServer: pulumi.Output<string>; /** * The token used for log forwarding authentication. */ readonly logForwardToken: pulumi.Output<string>; /** * Indicates whether log storage is enabled. */ readonly logStorageEnabled: pulumi.Output<boolean>; /** * The storage zone ID for log storage. */ readonly logStorageZone: pulumi.Output<number>; /** * The name of the pull zone. */ readonly name: pulumi.Output<string>; /** * Indicates whether Burrow Smart Routing should be enabled. */ readonly optimizerBurrow: pulumi.Output<boolean>; /** * Indicates whether the optimizer class list should be enforced. */ readonly optimizerClassesForce: pulumi.Output<boolean>; /** * Indicates whether the image manipulation should be enabled. */ readonly optimizerDynamicImageApi: pulumi.Output<boolean>; /** * Indicates whether Bunny Optimizer should be enabled. */ readonly optimizerEnabled: pulumi.Output<boolean>; /** * Indicates whether HTML Prerender should be enabled. */ readonly optimizerHtmlPrerender: pulumi.Output<boolean>; /** * Indicates whether the CSS minification should be enabled. */ readonly optimizerMinifyCss: pulumi.Output<boolean>; /** * Indicates whether the JavaScript minification should be enabled. */ readonly optimizerMinifyJs: pulumi.Output<boolean>; /** * Indicates whether the automatic image optimization should be enabled. */ readonly optimizerSmartimage: pulumi.Output<boolean>; /** * The maximum automatic image size for desktop clients. */ readonly optimizerSmartimageDesktopMaxwidth: pulumi.Output<number>; /** * The image quality for desktop clients. */ readonly optimizerSmartimageDesktopQuality: pulumi.Output<number>; /** * The maximum automatic image size for mobile clients. */ readonly optimizerSmartimageMobileMaxwidth: pulumi.Output<number>; /** * Determines the image quality for mobile clients */ readonly optimizerSmartimageMobileQuality: pulumi.Output<number>; /** * Indicates whether image watermarking should be enabled. */ readonly optimizerWatermark: pulumi.Output<boolean>; /** * The offset of the watermark image. */ readonly optimizerWatermarkBorderoffset: pulumi.Output<number>; /** * The minimum image size to which the watermark will be added. */ readonly optimizerWatermarkMinsize: pulumi.Output<number>; /** * Options: `BottomLeft`, `BottomRight`, `Center`, `CenterStretch`, `TopLeft`, `TopRight` */ readonly optimizerWatermarkPosition: pulumi.Output<string>; /** * The URL of the watermark image. */ readonly optimizerWatermarkUrl: pulumi.Output<string>; /** * Indicates whether the WebP optimization should be enabled. */ readonly optimizerWebp: pulumi.Output<boolean>; readonly origin: pulumi.Output<outputs.PullzoneOrigin | undefined>; /** * Indicates whether there is a concurrency limit for Origin Shield. */ readonly originshieldConcurrencyLimit: pulumi.Output<boolean>; /** * The number of concurrent requests for Origin Shield. */ readonly originshieldConcurrencyRequests: pulumi.Output<number>; /** * Indicates whether Origin Shield is enabled. */ readonly originshieldEnabled: pulumi.Output<boolean>; /** * The number of queued requests for Origin Shield. */ readonly originshieldQueueRequests: pulumi.Output<number>; /** * The maximum wait time for queued requests in Origin Shield, in seconds. */ readonly originshieldQueueWait: pulumi.Output<number>; /** * Options: `FR`, `IL` */ readonly originshieldZone: pulumi.Output<string>; /** * The storage zone ID for Perma-Cache. */ readonly permacacheStoragezone: pulumi.Output<number>; /** * The unique ID of the pull zone. */ readonly pullzoneId: pulumi.Output<number>; /** * Indicates whether request coalescing is enabled. */ readonly requestCoalescingEnabled: pulumi.Output<boolean>; /** * Specifies the timeout period, in seconds, for request coalescing, determining how long to wait before sending combined requests to the origin. */ readonly requestCoalescingTimeout: pulumi.Output<number>; readonly routing: pulumi.Output<outputs.PullzoneRouting | undefined>; /** * Indicates whether requests to origin will be signed with AWS Signature Version 4. */ readonly s3AuthEnabled: pulumi.Output<boolean>; /** * The access key used to authenticate the requests. */ readonly s3AuthKey: pulumi.Output<string>; /** * The region name of the bucket used to authenticate the requests. */ readonly s3AuthRegion: pulumi.Output<string>; /** * The secret key used to authenticate the requests. */ readonly s3AuthSecret: pulumi.Output<string>; /** * The amount of seconds to wait when connecting to the origin. Otherwise the request will fail or retry. */ readonly safehopConnectionTimeout: pulumi.Output<number>; readonly safehopEnabled: pulumi.Output<boolean>; /** * The amount of seconds to wait when waiting for the origin reply. Otherwise the request will fail or retry. */ readonly safehopResponseTimeout: pulumi.Output<number>; /** * The number of retries to the origin server. */ readonly safehopRetryCount: pulumi.Output<number>; /** * The amount of time that the CDN should wait before retrying an origin request. */ readonly safehopRetryDelay: pulumi.Output<number>; /** * Options: `5xxResponse`, `connectionTimeout`, `responseTimeout` */ readonly safehopRetryReasons: pulumi.Output<string[]>; /** * If enabled, the query parameters will be automatically sorted into a consistent order before checking the cache. */ readonly sortQuerystring: pulumi.Output<boolean>; /** * If enabled, bunny.net will strip all the Set-Cookie headers from the HTTP responses. */ readonly stripCookies: pulumi.Output<boolean>; /** * Options: `TLSv1.0`, `TLSv1.1` */ readonly tlsSupports: pulumi.Output<string[]>; /** * Indicates whether requests without a valid token and expiry timestamp will be rejected. */ readonly tokenAuthEnabled: pulumi.Output<boolean>; /** * Indicates whether the secure hash generated by the server will also include an IP address. */ readonly tokenAuthIpValidation: pulumi.Output<boolean>; /** * The auth key used for secure URL token authentication. */ readonly tokenAuthKey: pulumi.Output<string>; /** * Indicates whether cache update is performed in the background. */ readonly useBackgroundUpdate: pulumi.Output<boolean>; /** * Indicates whether the WebSocket support is enabled. */ readonly websocketsEnabled: pulumi.Output<boolean>; /** * The maximum allowed concurrent WebSocket connections. */ readonly websocketsMaxConnections: pulumi.Output<number>; /** * Create a Pullzone resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args?: PullzoneArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Pullzone resources. */ export interface PullzoneState { /** * Indicates whether the Canonical header is added to the responses. */ addCanonicalHeader?: pulumi.Input<boolean | undefined>; /** * The list of referrer hostnames that are allowed to access the pull zone. Requests containing the header "Referer: hostname" that is not on the list will be rejected. If empty, all the referrers are allowed. */ allowReferers?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * The list of IPs that are blocked from accessing the pull zone. Requests coming from the following IPs will be rejected. If empty, all the IPs will be allowed */ blockIps?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Indicates whether requests without a referer should be blocked. */ blockNoReferer?: pulumi.Input<boolean | undefined>; /** * Indicates whether to block POST requests. */ blockPostRequests?: pulumi.Input<boolean | undefined>; /** * The list of referrer hostnames that are blocked to access the pull zone. Requests containing the header "Referer: hostname" that is not on the list will be rejected. If empty, all the referrers are allowed. */ blockReferers?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * This property indicates whether to block the root path. */ blockRootPath?: pulumi.Input<boolean | undefined>; /** * Indicates whether the cache slice (Optimize for large object delivery) feature is enabled for the Pull Zone */ cacheChunked?: pulumi.Input<boolean | undefined>; /** * Indicates whether smart caching is enabled. */ cacheEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether bunny.net should be caching error responses. */ cacheErrors?: pulumi.Input<boolean | undefined>; /** * The override cache time, in seconds. */ cacheExpirationTime?: pulumi.Input<number | undefined>; /** * The override cache time for the end client, in seconds. */ cacheExpirationTimeBrowser?: pulumi.Input<number | undefined>; /** * Options: <span pulumi-lang-nodejs="`offline`" pulumi-lang-dotnet="`Offline`" pulumi-lang-go="`offline`" pulumi-lang-python="`offline`" pulumi-lang-yaml="`offline`" pulumi-lang-java="`offline`" pulumi-lang-hcl="`offline`">`offline`</span>, <span pulumi-lang-nodejs="`updating`" pulumi-lang-dotnet="`Updating`" pulumi-lang-go="`updating`" pulumi-lang-python="`updating`" pulumi-lang-yaml="`updating`" pulumi-lang-java="`updating`" pulumi-lang-hcl="`updating`">`updating`</span> */ cacheStales?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Options: <span pulumi-lang-nodejs="`avif`" pulumi-lang-dotnet="`Avif`" pulumi-lang-go="`avif`" pulumi-lang-python="`avif`" pulumi-lang-yaml="`avif`" pulumi-lang-java="`avif`" pulumi-lang-hcl="`avif`">`avif`</span>, <span pulumi-lang-nodejs="`cookie`" pulumi-lang-dotnet="`Cookie`" pulumi-lang-go="`cookie`" pulumi-lang-python="`cookie`" pulumi-lang-yaml="`cookie`" pulumi-lang-java="`cookie`" pulumi-lang-hcl="`cookie`">`cookie`</span>, <span pulumi-lang-nodejs="`country`" pulumi-lang-dotnet="`Country`" pulumi-lang-go="`country`" pulumi-lang-python="`country`" pulumi-lang-yaml="`country`" pulumi-lang-java="`country`" pulumi-lang-hcl="`country`">`country`</span>, <span pulumi-lang-nodejs="`hostname`" pulumi-lang-dotnet="`Hostname`" pulumi-lang-go="`hostname`" pulumi-lang-python="`hostname`" pulumi-lang-yaml="`hostname`" pulumi-lang-java="`hostname`" pulumi-lang-hcl="`hostname`">`hostname`</span>, <span pulumi-lang-nodejs="`mobile`" pulumi-lang-dotnet="`Mobile`" pulumi-lang-go="`mobile`" pulumi-lang-python="`mobile`" pulumi-lang-yaml="`mobile`" pulumi-lang-java="`mobile`" pulumi-lang-hcl="`mobile`">`mobile`</span>, <span pulumi-lang-nodejs="`querystring`" pulumi-lang-dotnet="`Querystring`" pulumi-lang-go="`querystring`" pulumi-lang-python="`querystring`" pulumi-lang-yaml="`querystring`" pulumi-lang-java="`querystring`" pulumi-lang-hcl="`querystring`">`querystring`</span>, <span pulumi-lang-nodejs="`state`" pulumi-lang-dotnet="`State`" pulumi-lang-go="`state`" pulumi-lang-python="`state`" pulumi-lang-yaml="`state`" pulumi-lang-java="`state`" pulumi-lang-hcl="`state`">`state`</span>, <span pulumi-lang-nodejs="`webp`" pulumi-lang-dotnet="`Webp`" pulumi-lang-go="`webp`" pulumi-lang-python="`webp`" pulumi-lang-yaml="`webp`" pulumi-lang-java="`webp`" pulumi-lang-hcl="`webp`">`webp`</span> */ cacheVaries?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Contains the list of vary parameters that will be used for vary cache by cookie string. If empty, cookie vary will not be used. */ cacheVaryCookies?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Contains the list of request headers will be used for vary cache. If empty, it will not be used. */ cacheVaryHeaders?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Contains the list of vary parameters that will be used for vary cache by query string. If empty, all parameters will be used to construct the key */ cacheVaryQuerystrings?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * The CNAME domain of the pull zone for setting up custom hostnames */ cdnDomain?: pulumi.Input<string | undefined>; /** * Indicates whether CORS (Cross-Origin Resource Sharing) is enabled. */ corsEnabled?: pulumi.Input<boolean | undefined>; /** * A list of file extensions for which CORS is enabled. */ corsExtensions?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * If true, the built-in let's encrypt is disabled and requests are passed to the origin. */ disableLetsencrypt?: pulumi.Input<boolean | undefined>; /** * Contains the custom error page code that will be returned. */ errorpageCustomContent?: pulumi.Input<string | undefined>; /** * Indicates whether custom error page code should be enabled. */ errorpageCustomEnabled?: pulumi.Input<boolean | undefined>; /** * The statuspage code that will be used to build the status widget. */ errorpageStatuspageCode?: pulumi.Input<string | undefined>; /** * Indicates whether the statuspage widget should be displayed on the error pages. */ errorpageStatuspageEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether the error pages should be white-labelled or not */ errorpageWhitelabel?: pulumi.Input<boolean | undefined>; /** * The amount of data after the rate limit will be activated. */ limitAfter?: pulumi.Input<number | undefined>; /** * The maximum bandwidth limit in bytes. */ limitBandwidth?: pulumi.Input<number | undefined>; /** * Excessive requests are delayed until their number exceeds the maximum burst size. */ limitBurst?: pulumi.Input<number | undefined>; /** * The number of connections limited per IP. */ limitConnections?: pulumi.Input<number | undefined>; /** * The maximum download speed, in kb/s. Use 0 for unlimited. */ limitDownloadSpeed?: pulumi.Input<number | undefined>; /** * The maximum amount of requests per IP per second. */ limitRequests?: pulumi.Input<number | undefined>; /** * Indicates whether logs are anonymized. */ logAnonymized?: pulumi.Input<boolean | undefined>; /** * Options: `Drop`, `OneDigit` */ logAnonymizedStyle?: pulumi.Input<string | undefined>; /** * Indicates whether logging is enabled. */ logEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether log forwarding is enabled. */ logForwardEnabled?: pulumi.Input<boolean | undefined>; /** * Options: `JSON`, `Plain` */ logForwardFormat?: pulumi.Input<string | undefined>; /** * The port number for log forwarding. */ logForwardPort?: pulumi.Input<number | undefined>; /** * Options: `DataDog`, `TCP`, `TCPEncrypted`, `UDP` */ logForwardProtocol?: pulumi.Input<string | undefined>; /** * The server address for log forwarding. */ logForwardServer?: pulumi.Input<string | undefined>; /** * The token used for log forwarding authentication. */ logForwardToken?: pulumi.Input<string | undefined>; /** * Indicates whether log storage is enabled. */ logStorageEnabled?: pulumi.Input<boolean | undefined>; /** * The storage zone ID for log storage. */ logStorageZone?: pulumi.Input<number | undefined>; /** * The name of the pull zone. */ name?: pulumi.Input<string | undefined>; /** * Indicates whether Burrow Smart Routing should be enabled. */ optimizerBurrow?: pulumi.Input<boolean | undefined>; /** * Indicates whether the optimizer class list should be enforced. */ optimizerClassesForce?: pulumi.Input<boolean | undefined>; /** * Indicates whether the image manipulation should be enabled. */ optimizerDynamicImageApi?: pulumi.Input<boolean | undefined>; /** * Indicates whether Bunny Optimizer should be enabled. */ optimizerEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether HTML Prerender should be enabled. */ optimizerHtmlPrerender?: pulumi.Input<boolean | undefined>; /** * Indicates whether the CSS minification should be enabled. */ optimizerMinifyCss?: pulumi.Input<boolean | undefined>; /** * Indicates whether the JavaScript minification should be enabled. */ optimizerMinifyJs?: pulumi.Input<boolean | undefined>; /** * Indicates whether the automatic image optimization should be enabled. */ optimizerSmartimage?: pulumi.Input<boolean | undefined>; /** * The maximum automatic image size for desktop clients. */ optimizerSmartimageDesktopMaxwidth?: pulumi.Input<number | undefined>; /** * The image quality for desktop clients. */ optimizerSmartimageDesktopQuality?: pulumi.Input<number | undefined>; /** * The maximum automatic image size for mobile clients. */ optimizerSmartimageMobileMaxwidth?: pulumi.Input<number | undefined>; /** * Determines the image quality for mobile clients */ optimizerSmartimageMobileQuality?: pulumi.Input<number | undefined>; /** * Indicates whether image watermarking should be enabled. */ optimizerWatermark?: pulumi.Input<boolean | undefined>; /** * The offset of the watermark image. */ optimizerWatermarkBorderoffset?: pulumi.Input<number | undefined>; /** * The minimum image size to which the watermark will be added. */ optimizerWatermarkMinsize?: pulumi.Input<number | undefined>; /** * Options: `BottomLeft`, `BottomRight`, `Center`, `CenterStretch`, `TopLeft`, `TopRight` */ optimizerWatermarkPosition?: pulumi.Input<string | undefined>; /** * The URL of the watermark image. */ optimizerWatermarkUrl?: pulumi.Input<string | undefined>; /** * Indicates whether the WebP optimization should be enabled. */ optimizerWebp?: pulumi.Input<boolean | undefined>; origin?: pulumi.Input<inputs.PullzoneOrigin | undefined>; /** * Indicates whether there is a concurrency limit for Origin Shield. */ originshieldConcurrencyLimit?: pulumi.Input<boolean | undefined>; /** * The number of concurrent requests for Origin Shield. */ originshieldConcurrencyRequests?: pulumi.Input<number | undefined>; /** * Indicates whether Origin Shield is enabled. */ originshieldEnabled?: pulumi.Input<boolean | undefined>; /** * The number of queued requests for Origin Shield. */ originshieldQueueRequests?: pulumi.Input<number | undefined>; /** * The maximum wait time for queued requests in Origin Shield, in seconds. */ originshieldQueueWait?: pulumi.Input<number | undefined>; /** * Options: `FR`, `IL` */ originshieldZone?: pulumi.Input<string | undefined>; /** * The storage zone ID for Perma-Cache. */ permacacheStoragezone?: pulumi.Input<number | undefined>; /** * The unique ID of the pull zone. */ pullzoneId?: pulumi.Input<number | undefined>; /** * Indicates whether request coalescing is enabled. */ requestCoalescingEnabled?: pulumi.Input<boolean | undefined>; /** * Specifies the timeout period, in seconds, for request coalescing, determining how long to wait before sending combined requests to the origin. */ requestCoalescingTimeout?: pulumi.Input<number | undefined>; routing?: pulumi.Input<inputs.PullzoneRouting | undefined>; /** * Indicates whether requests to origin will be signed with AWS Signature Version 4. */ s3AuthEnabled?: pulumi.Input<boolean | undefined>; /** * The access key used to authenticate the requests. */ s3AuthKey?: pulumi.Input<string | undefined>; /** * The region name of the bucket used to authenticate the requests. */ s3AuthRegion?: pulumi.Input<string | undefined>; /** * The secret key used to authenticate the requests. */ s3AuthSecret?: pulumi.Input<string | undefined>; /** * The amount of seconds to wait when connecting to the origin. Otherwise the request will fail or retry. */ safehopConnectionTimeout?: pulumi.Input<number | undefined>; safehopEnabled?: pulumi.Input<boolean | undefined>; /** * The amount of seconds to wait when waiting for the origin reply. Otherwise the request will fail or retry. */ safehopResponseTimeout?: pulumi.Input<number | undefined>; /** * The number of retries to the origin server. */ safehopRetryCount?: pulumi.Input<number | undefined>; /** * The amount of time that the CDN should wait before retrying an origin request. */ safehopRetryDelay?: pulumi.Input<number | undefined>; /** * Options: `5xxResponse`, `connectionTimeout`, `responseTimeout` */ safehopRetryReasons?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * If enabled, the query parameters will be automatically sorted into a consistent order before checking the cache. */ sortQuerystring?: pulumi.Input<boolean | undefined>; /** * If enabled, bunny.net will strip all the Set-Cookie headers from the HTTP responses. */ stripCookies?: pulumi.Input<boolean | undefined>; /** * Options: `TLSv1.0`, `TLSv1.1` */ tlsSupports?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Indicates whether requests without a valid token and expiry timestamp will be rejected. */ tokenAuthEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether the secure hash generated by the server will also include an IP address. */ tokenAuthIpValidation?: pulumi.Input<boolean | undefined>; /** * The auth key used for secure URL token authentication. */ tokenAuthKey?: pulumi.Input<string | undefined>; /** * Indicates whether cache update is performed in the background. */ useBackgroundUpdate?: pulumi.Input<boolean | undefined>; /** * Indicates whether the WebSocket support is enabled. */ websocketsEnabled?: pulumi.Input<boolean | undefined>; /** * The maximum allowed concurrent WebSocket connections. */ websocketsMaxConnections?: pulumi.Input<number | undefined>; } /** * The set of arguments for constructing a Pullzone resource. */ export interface PullzoneArgs { /** * Indicates whether the Canonical header is added to the responses. */ addCanonicalHeader?: pulumi.Input<boolean | undefined>; /** * The list of referrer hostnames that are allowed to access the pull zone. Requests containing the header "Referer: hostname" that is not on the list will be rejected. If empty, all the referrers are allowed. */ allowReferers?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * The list of IPs that are blocked from accessing the pull zone. Requests coming from the following IPs will be rejected. If empty, all the IPs will be allowed */ blockIps?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Indicates whether requests without a referer should be blocked. */ blockNoReferer?: pulumi.Input<boolean | undefined>; /** * Indicates whether to block POST requests. */ blockPostRequests?: pulumi.Input<boolean | undefined>; /** * The list of referrer hostnames that are blocked to access the pull zone. Requests containing the header "Referer: hostname" that is not on the list will be rejected. If empty, all the referrers are allowed. */ blockReferers?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * This property indicates whether to block the root path. */ blockRootPath?: pulumi.Input<boolean | undefined>; /** * Indicates whether the cache slice (Optimize for large object delivery) feature is enabled for the Pull Zone */ cacheChunked?: pulumi.Input<boolean | undefined>; /** * Indicates whether smart caching is enabled. */ cacheEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether bunny.net should be caching error responses. */ cacheErrors?: pulumi.Input<boolean | undefined>; /** * The override cache time, in seconds. */ cacheExpirationTime?: pulumi.Input<number | undefined>; /** * The override cache time for the end client, in seconds. */ cacheExpirationTimeBrowser?: pulumi.Input<number | undefined>; /** * Options: <span pulumi-lang-nodejs="`offline`" pulumi-lang-dotnet="`Offline`" pulumi-lang-go="`offline`" pulumi-lang-python="`offline`" pulumi-lang-yaml="`offline`" pulumi-lang-java="`offline`" pulumi-lang-hcl="`offline`">`offline`</span>, <span pulumi-lang-nodejs="`updating`" pulumi-lang-dotnet="`Updating`" pulumi-lang-go="`updating`" pulumi-lang-python="`updating`" pulumi-lang-yaml="`updating`" pulumi-lang-java="`updating`" pulumi-lang-hcl="`updating`">`updating`</span> */ cacheStales?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Options: <span pulumi-lang-nodejs="`avif`" pulumi-lang-dotnet="`Avif`" pulumi-lang-go="`avif`" pulumi-lang-python="`avif`" pulumi-lang-yaml="`avif`" pulumi-lang-java="`avif`" pulumi-lang-hcl="`avif`">`avif`</span>, <span pulumi-lang-nodejs="`cookie`" pulumi-lang-dotnet="`Cookie`" pulumi-lang-go="`cookie`" pulumi-lang-python="`cookie`" pulumi-lang-yaml="`cookie`" pulumi-lang-java="`cookie`" pulumi-lang-hcl="`cookie`">`cookie`</span>, <span pulumi-lang-nodejs="`country`" pulumi-lang-dotnet="`Country`" pulumi-lang-go="`country`" pulumi-lang-python="`country`" pulumi-lang-yaml="`country`" pulumi-lang-java="`country`" pulumi-lang-hcl="`country`">`country`</span>, <span pulumi-lang-nodejs="`hostname`" pulumi-lang-dotnet="`Hostname`" pulumi-lang-go="`hostname`" pulumi-lang-python="`hostname`" pulumi-lang-yaml="`hostname`" pulumi-lang-java="`hostname`" pulumi-lang-hcl="`hostname`">`hostname`</span>, <span pulumi-lang-nodejs="`mobile`" pulumi-lang-dotnet="`Mobile`" pulumi-lang-go="`mobile`" pulumi-lang-python="`mobile`" pulumi-lang-yaml="`mobile`" pulumi-lang-java="`mobile`" pulumi-lang-hcl="`mobile`">`mobile`</span>, <span pulumi-lang-nodejs="`querystring`" pulumi-lang-dotnet="`Querystring`" pulumi-lang-go="`querystring`" pulumi-lang-python="`querystring`" pulumi-lang-yaml="`querystring`" pulumi-lang-java="`querystring`" pulumi-lang-hcl="`querystring`">`querystring`</span>, <span pulumi-lang-nodejs="`state`" pulumi-lang-dotnet="`State`" pulumi-lang-go="`state`" pulumi-lang-python="`state`" pulumi-lang-yaml="`state`" pulumi-lang-java="`state`" pulumi-lang-hcl="`state`">`state`</span>, <span pulumi-lang-nodejs="`webp`" pulumi-lang-dotnet="`Webp`" pulumi-lang-go="`webp`" pulumi-lang-python="`webp`" pulumi-lang-yaml="`webp`" pulumi-lang-java="`webp`" pulumi-lang-hcl="`webp`">`webp`</span> */ cacheVaries?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Contains the list of vary parameters that will be used for vary cache by cookie string. If empty, cookie vary will not be used. */ cacheVaryCookies?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Contains the list of request headers will be used for vary cache. If empty, it will not be used. */ cacheVaryHeaders?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Contains the list of vary parameters that will be used for vary cache by query string. If empty, all parameters will be used to construct the key */ cacheVaryQuerystrings?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Indicates whether CORS (Cross-Origin Resource Sharing) is enabled. */ corsEnabled?: pulumi.Input<boolean | undefined>; /** * A list of file extensions for which CORS is enabled. */ corsExtensions?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * If true, the built-in let's encrypt is disabled and requests are passed to the origin. */ disableLetsencrypt?: pulumi.Input<boolean | undefined>; /** * Contains the custom error page code that will be returned. */ errorpageCustomContent?: pulumi.Input<string | undefined>; /** * Indicates whether custom error page code should be enabled. */ errorpageCustomEnabled?: pulumi.Input<boolean | undefined>; /** * The statuspage code that will be used to build the status widget. */ errorpageStatuspageCode?: pulumi.Input<string | undefined>; /** * Indicates whether the statuspage widget should be displayed on the error pages. */ errorpageStatuspageEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether the error pages should be white-labelled or not */ errorpageWhitelabel?: pulumi.Input<boolean | undefined>; /** * The amount of data after the rate limit will be activated. */ limitAfter?: pulumi.Input<number | undefined>; /** * The maximum bandwidth limit in bytes. */ limitBandwidth?: pulumi.Input<number | undefined>; /** * Excessive requests are delayed until their number exceeds the maximum burst size. */ limitBurst?: pulumi.Input<number | undefined>; /** * The number of connections limited per IP. */ limitConnections?: pulumi.Input<number | undefined>; /** * The maximum download speed, in kb/s. Use 0 for unlimited. */ limitDownloadSpeed?: pulumi.Input<number | undefined>; /** * The maximum amount of requests per IP per second. */ limitRequests?: pulumi.Input<number | undefined>; /** * Indicates whether logs are anonymized. */ logAnonymized?: pulumi.Input<boolean | undefined>; /** * Options: `Drop`, `OneDigit` */ logAnonymizedStyle?: pulumi.Input<string | undefined>; /** * Indicates whether logging is enabled. */ logEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether log forwarding is enabled. */ logForwardEnabled?: pulumi.Input<boolean | undefined>; /** * Options: `JSON`, `Plain` */ logForwardFormat?: pulumi.Input<string | undefined>; /** * The port number for log forwarding. */ logForwardPort?: pulumi.Input<number | undefined>; /** * Options: `DataDog`, `TCP`, `TCPEncrypted`, `UDP` */ logForwardProtocol?: pulumi.Input<string | undefined>; /** * The server address for log forwarding. */ logForwardServer?: pulumi.Input<string | undefined>; /** * The token used for log forwarding authentication. */ logForwardToken?: pulumi.Input<string | undefined>; /** * Indicates whether log storage is enabled. */ logStorageEnabled?: pulumi.Input<boolean | undefined>; /** * The storage zone ID for log storage. */ logStorageZone?: pulumi.Input<number | undefined>; /** * The name of the pull zone. */ name?: pulumi.Input<string | undefined>; /** * Indicates whether Burrow Smart Routing should be enabled. */ optimizerBurrow?: pulumi.Input<boolean | undefined>; /** * Indicates whether the optimizer class list should be enforced. */ optimizerClassesForce?: pulumi.Input<boolean | undefined>; /** * Indicates whether the image manipulation should be enabled. */ optimizerDynamicImageApi?: pulumi.Input<boolean | undefined>; /** * Indicates whether Bunny Optimizer should be enabled. */ optimizerEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether HTML Prerender should be enabled. */ optimizerHtmlPrerender?: pulumi.Input<boolean | undefined>; /** * Indicates whether the CSS minification should be enabled. */ optimizerMinifyCss?: pulumi.Input<boolean | undefined>; /** * Indicates whether the JavaScript minification should be enabled. */ optimizerMinifyJs?: pulumi.Input<boolean | undefined>; /** * Indicates whether the automatic image optimization should be enabled. */ optimizerSmartimage?: pulumi.Input<boolean | undefined>; /** * The maximum automatic image size for desktop clients. */ optimizerSmartimageDesktopMaxwidth?: pulumi.Input<number | undefined>; /** * The image quality for desktop clients. */ optimizerSmartimageDesktopQuality?: pulumi.Input<number | undefined>; /** * The maximum automatic image size for mobile clients. */ optimizerSmartimageMobileMaxwidth?: pulumi.Input<number | undefined>; /** * Determines the image quality for mobile clients */ optimizerSmartimageMobileQuality?: pulumi.Input<number | undefined>; /** * Indicates whether image watermarking should be enabled. */ optimizerWatermark?: pulumi.Input<boolean | undefined>; /** * The offset of the watermark image. */ optimizerWatermarkBorderoffset?: pulumi.Input<number | undefined>; /** * The minimum image size to which the watermark will be added. */ optimizerWatermarkMinsize?: pulumi.Input<number | undefined>; /** * Options: `BottomLeft`, `BottomRight`, `Center`, `CenterStretch`, `TopLeft`, `TopRight` */ optimizerWatermarkPosition?: pulumi.Input<string | undefined>; /** * The URL of the watermark image. */ optimizerWatermarkUrl?: pulumi.Input<string | undefined>; /** * Indicates whether the WebP optimization should be enabled. */ optimizerWebp?: pulumi.Input<boolean | undefined>; origin?: pulumi.Input<inputs.PullzoneOrigin | undefined>; /** * Indicates whether there is a concurrency limit for Origin Shield. */ originshieldConcurrencyLimit?: pulumi.Input<boolean | undefined>; /** * The number of concurrent requests for Origin Shield. */ originshieldConcurrencyRequests?: pulumi.Input<number | undefined>; /** * Indicates whether Origin Shield is enabled. */ originshieldEnabled?: pulumi.Input<boolean | undefined>; /** * The number of queued requests for Origin Shield. */ originshieldQueueRequests?: pulumi.Input<number | undefined>; /** * The maximum wait time for queued requests in Origin Shield, in seconds. */ originshieldQueueWait?: pulumi.Input<number | undefined>; /** * Options: `FR`, `IL` */ originshieldZone?: pulumi.Input<string | undefined>; /** * The storage zone ID for Perma-Cache. */ permacacheStoragezone?: pulumi.Input<number | undefined>; /** * Indicates whether request coalescing is enabled. */ requestCoalescingEnabled?: pulumi.Input<boolean | undefined>; /** * Specifies the timeout period, in seconds, for request coalescing, determining how long to wait before sending combined requests to the origin. */ requestCoalescingTimeout?: pulumi.Input<number | undefined>; routing?: pulumi.Input<inputs.PullzoneRouting | undefined>; /** * Indicates whether requests to origin will be signed with AWS Signature Version 4. */ s3AuthEnabled?: pulumi.Input<boolean | undefined>; /** * The access key used to authenticate the requests. */ s3AuthKey?: pulumi.Input<string | undefined>; /** * The region name of the bucket used to authenticate the requests. */ s3AuthRegion?: pulumi.Input<string | undefined>; /** * The secret key used to authenticate the requests. */ s3AuthSecret?: pulumi.Input<string | undefined>; /** * The amount of seconds to wait when connecting to the origin. Otherwise the request will fail or retry. */ safehopConnectionTimeout?: pulumi.Input<number | undefined>; safehopEnabled?: pulumi.Input<boolean | undefined>; /** * The amount of seconds to wait when waiting for the origin reply. Otherwise the request will fail or retry. */ safehopResponseTimeout?: pulumi.Input<number | undefined>; /** * The number of retries to the origin server. */ safehopRetryCount?: pulumi.Input<number | undefined>; /** * The amount of time that the CDN should wait before retrying an origin request. */ safehopRetryDelay?: pulumi.Input<number | undefined>; /** * Options: `5xxResponse`, `connectionTimeout`, `responseTimeout` */ safehopRetryReasons?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * If enabled, the query parameters will be automatically sorted into a consistent order before checking the cache. */ sortQuerystring?: pulumi.Input<boolean | undefined>; /** * If enabled, bunny.net will strip all the Set-Cookie headers from the HTTP responses. */ stripCookies?: pulumi.Input<boolean | undefined>; /** * Options: `TLSv1.0`, `TLSv1.1` */ tlsSupports?: pulumi.Input<pulumi.Input<string>[] | undefined>; /** * Indicates whether requests without a valid token and expiry timestamp will be rejected. */ tokenAuthEnabled?: pulumi.Input<boolean | undefined>; /** * Indicates whether the secure hash generated by the server will also include an IP address. */ tokenAuthIpValidation?: pulumi.Input<boolean | undefined>; /** * Indicates whether cache update is performed in the background. */ useBackgroundUpdate?: pulumi.Input<boolean | undefined>; /** * Indicates whether the WebSocket support is enabled. */ websocketsEnabled?: pulumi.Input<boolean | undefined>; /** * The maximum allowed concurrent WebSocket connections. */ websocketsMaxConnections?: pulumi.Input<number | undefined>; } //# sourceMappingURL=pullzone.d.ts.map