@pulumi/fastly
Version:
A Pulumi package for creating and managing fastly cloud resources.. Based on terraform-provider-fastly: version v4
146 lines (145 loc) • 5.64 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
* Use this data source to get the ID of a TLS configuration for use with other resources.
*
* > **Warning:** The data source's filters are applied using an **AND** boolean operator, so depending on the combination
* of filters, they may become mutually exclusive. The exception to this is `id` which must not be specified in combination
* with any of the others.
*
* > **Note:** If more or less than a single match is returned by the search, this provider will fail. Ensure that your search is specific enough to return a single key.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as fastly from "@pulumi/fastly";
*
* const example = fastly.getTlsConfiguration({
* "default": true,
* });
* const exampleTlsActivation = new fastly.TlsActivation("example", {configurationId: example.then(example => example.id)});
* ```
*/
export declare function getTlsConfiguration(args?: GetTlsConfigurationArgs, opts?: pulumi.InvokeOptions): Promise<GetTlsConfigurationResult>;
/**
* A collection of arguments for invoking getTlsConfiguration.
*/
export interface GetTlsConfigurationArgs {
/**
* Signifies whether Fastly will use this configuration as a default when creating a new TLS activation.
*/
default?: boolean;
/**
* HTTP protocols available on the TLS configuration.
*/
httpProtocols?: string[];
/**
* ID of the TLS configuration obtained from the Fastly API or another data source. Conflicts with all the other filters.
*/
id?: string;
/**
* Custom name of the TLS configuration.
*/
name?: string;
/**
* TLS protocols available on the TLS configuration.
*/
tlsProtocols?: string[];
/**
* Whether the configuration should support the `PLATFORM` or `CUSTOM` TLS service.
*/
tlsService?: string;
}
/**
* A collection of values returned by getTlsConfiguration.
*/
export interface GetTlsConfigurationResult {
/**
* Timestamp (GMT) when the configuration was created.
*/
readonly createdAt: string;
/**
* Signifies whether Fastly will use this configuration as a default when creating a new TLS activation.
*/
readonly default: boolean;
/**
* The available DNS addresses that can be used to enable TLS for a domain. DNS must be configured for a domain for TLS handshakes to succeed. If enabling TLS on an apex domain (e.g. `example.com`) you must create four A records (or four AAAA records for IPv6 support) using the displayed global A record's IP addresses with your DNS provider. For subdomains and wildcard domains (e.g. `www.example.com` or `*.example.com`) you will need to create a relevant CNAME record.
*/
readonly dnsRecords: outputs.GetTlsConfigurationDnsRecord[];
/**
* HTTP protocols available on the TLS configuration.
*/
readonly httpProtocols: string[];
/**
* ID of the TLS configuration obtained from the Fastly API or another data source. Conflicts with all the other filters.
*/
readonly id: string;
/**
* Custom name of the TLS configuration.
*/
readonly name: string;
/**
* TLS protocols available on the TLS configuration.
*/
readonly tlsProtocols: string[];
/**
* Whether the configuration should support the `PLATFORM` or `CUSTOM` TLS service.
*/
readonly tlsService: string;
/**
* Timestamp (GMT) when the configuration was last updated.
*/
readonly updatedAt: string;
}
/**
* Use this data source to get the ID of a TLS configuration for use with other resources.
*
* > **Warning:** The data source's filters are applied using an **AND** boolean operator, so depending on the combination
* of filters, they may become mutually exclusive. The exception to this is `id` which must not be specified in combination
* with any of the others.
*
* > **Note:** If more or less than a single match is returned by the search, this provider will fail. Ensure that your search is specific enough to return a single key.
*
* ## Example Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as fastly from "@pulumi/fastly";
*
* const example = fastly.getTlsConfiguration({
* "default": true,
* });
* const exampleTlsActivation = new fastly.TlsActivation("example", {configurationId: example.then(example => example.id)});
* ```
*/
export declare function getTlsConfigurationOutput(args?: GetTlsConfigurationOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetTlsConfigurationResult>;
/**
* A collection of arguments for invoking getTlsConfiguration.
*/
export interface GetTlsConfigurationOutputArgs {
/**
* Signifies whether Fastly will use this configuration as a default when creating a new TLS activation.
*/
default?: pulumi.Input<boolean>;
/**
* HTTP protocols available on the TLS configuration.
*/
httpProtocols?: pulumi.Input<pulumi.Input<string>[]>;
/**
* ID of the TLS configuration obtained from the Fastly API or another data source. Conflicts with all the other filters.
*/
id?: pulumi.Input<string>;
/**
* Custom name of the TLS configuration.
*/
name?: pulumi.Input<string>;
/**
* TLS protocols available on the TLS configuration.
*/
tlsProtocols?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Whether the configuration should support the `PLATFORM` or `CUSTOM` TLS service.
*/
tlsService?: pulumi.Input<string>;
}