UNPKG

@lbrlabs/pulumi-scaleway

Version:

A Pulumi package for creating and managing scaleway cloud resources.

146 lines (145 loc) 4.29 kB
import * as pulumi from "@pulumi/pulumi"; import * as outputs from "./types/output"; /** * Gets information about a domain record. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@pulumi/scaleway"; * * const byContent = scaleway.getDomainRecord({ * data: "1.2.3.4", * dnsZone: "domain.tld", * name: "www", * type: "A", * }); * const byId = scaleway.getDomainRecord({ * dnsZone: "domain.tld", * recordId: "11111111-1111-1111-1111-111111111111", * }); * ``` */ export declare function getDomainRecord(args?: GetDomainRecordArgs, opts?: pulumi.InvokeOptions): Promise<GetDomainRecordResult>; /** * A collection of arguments for invoking getDomainRecord. */ export interface GetDomainRecordArgs { /** * The content of the record (an IPv4 for an `A`, a string for a `TXT`...). * Cannot be used with `recordId`. */ data?: string; /** * The IP address. */ dnsZone?: string; /** * The name of the record (can be an empty string for a root record). * Cannot be used with `recordId`. */ name?: string; /** * The record ID. * Cannot be used with `name`, `type` and `data`. */ recordId?: string; /** * The type of the record (`A`, `AAAA`, `MX`, `CNAME`, `DNAME`, `ALIAS`, `NS`, `PTR`, `SRV`, `TXT`, `TLSA`, or `CAA`). * Cannot be used with `recordId`. */ type?: string; } /** * A collection of values returned by getDomainRecord. */ export interface GetDomainRecordResult { readonly data?: string; readonly dnsZone?: string; /** * Dynamic record base on user geolocalisation (More information about dynamic records) */ readonly geoIps: outputs.GetDomainRecordGeoIp[]; /** * Dynamic record base on URL resolve (More information about dynamic records) */ readonly httpServices: outputs.GetDomainRecordHttpService[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly keepEmptyZone: boolean; readonly name?: string; /** * The priority of the record (mostly used with an `MX` record) */ readonly priority: number; readonly projectId: string; readonly recordId?: string; readonly rootZone: boolean; /** * Time To Live of the record in seconds. */ readonly ttl: number; readonly type?: string; /** * Dynamic record based on the client’s (resolver) subnet (More information about dynamic records) */ readonly views: outputs.GetDomainRecordView[]; /** * Dynamic record base on IP weights (More information about dynamic records) */ readonly weighteds: outputs.GetDomainRecordWeighted[]; } /** * Gets information about a domain record. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as scaleway from "@pulumi/scaleway"; * * const byContent = scaleway.getDomainRecord({ * data: "1.2.3.4", * dnsZone: "domain.tld", * name: "www", * type: "A", * }); * const byId = scaleway.getDomainRecord({ * dnsZone: "domain.tld", * recordId: "11111111-1111-1111-1111-111111111111", * }); * ``` */ export declare function getDomainRecordOutput(args?: GetDomainRecordOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetDomainRecordResult>; /** * A collection of arguments for invoking getDomainRecord. */ export interface GetDomainRecordOutputArgs { /** * The content of the record (an IPv4 for an `A`, a string for a `TXT`...). * Cannot be used with `recordId`. */ data?: pulumi.Input<string>; /** * The IP address. */ dnsZone?: pulumi.Input<string>; /** * The name of the record (can be an empty string for a root record). * Cannot be used with `recordId`. */ name?: pulumi.Input<string>; /** * The record ID. * Cannot be used with `name`, `type` and `data`. */ recordId?: pulumi.Input<string>; /** * The type of the record (`A`, `AAAA`, `MX`, `CNAME`, `DNAME`, `ALIAS`, `NS`, `PTR`, `SRV`, `TXT`, `TLSA`, or `CAA`). * Cannot be used with `recordId`. */ type?: pulumi.Input<string>; }