@pulumi/ns1
Version:
A Pulumi package for creating and managing ns1 cloud resources.
306 lines (305 loc) • 10.2 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
* ## Import
*
* ```sh
* $ pulumi import ns1:index/zone:Zone <name> <zone>`
* ```
*
* So for the example above:
*
* ```sh
* $ pulumi import ns1:index/zone:Zone example terraform.example.io`
* ```
*/
export declare class Zone extends pulumi.CustomResource {
/**
* Get an existing Zone 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?: ZoneState, opts?: pulumi.CustomResourceOptions): Zone;
/**
* Returns true if the given object is an instance of Zone. 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 Zone;
readonly additionalNetworks: pulumi.Output<number[] | undefined>;
readonly additionalNotifyOnlies: pulumi.Output<boolean[] | undefined>;
readonly additionalPorts: pulumi.Output<number[] | undefined>;
/**
* List of additional IPv4 addresses for the primary
* zone. Conflicts with `secondaries`.
*/
readonly additionalPrimaries: pulumi.Output<string[] | undefined>;
readonly autogenerateNsRecord: pulumi.Output<boolean | undefined>;
/**
* (Computed) Authoritative Name Servers.
*/
readonly dnsServers: pulumi.Output<string>;
/**
* Whether or not DNSSEC is enabled for the zone.
* Note that DNSSEC must be enabled on the account by support for this to be set
* to `true`.
*/
readonly dnssec: pulumi.Output<boolean>;
/**
* The SOA Expiry. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
readonly expiry: pulumi.Output<number>;
/**
* (Computed) The SOA Hostmaster.
*/
readonly hostmaster: pulumi.Output<string>;
/**
* The target zone(domain name) to link to.
*/
readonly link: pulumi.Output<string | undefined>;
/**
* List of network IDs for which the zone is
* available. If no network is provided, the zone will be created in network 0,
* the primary NS1 Global Network.
*/
readonly networks: pulumi.Output<number[]>;
/**
* The SOA NX TTL. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
readonly nxTtl: pulumi.Output<number>;
/**
* The primary zones' IPv4 address. This makes the zone a
* secondary. Conflicts with `secondaries`.
*/
readonly primary: pulumi.Output<string | undefined>;
readonly primaryNetwork: pulumi.Output<number | undefined>;
readonly primaryPort: pulumi.Output<number>;
/**
* The SOA Refresh. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
readonly refresh: pulumi.Output<number>;
/**
* The SOA Retry. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
readonly retry: pulumi.Output<number>;
/**
* List of secondary servers. This makes the zone a
* primary. Conflicts with `primary` and `additionalPrimaries`.
* Secondaries is documented below.
*/
readonly secondaries: pulumi.Output<outputs.ZoneSecondary[] | undefined>;
/**
* map of tags in the form of `"key" = "value"` where both key and value are strings
*/
readonly tags: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* TSIG is documented below
*/
readonly tsig: pulumi.Output<{
[key: string]: string;
} | undefined>;
/**
* The SOA TTL.
*/
readonly ttl: pulumi.Output<number>;
/**
* The domain name of the zone.
*/
readonly zone: pulumi.Output<string>;
/**
* Create a Zone 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: ZoneArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering Zone resources.
*/
export interface ZoneState {
additionalNetworks?: pulumi.Input<pulumi.Input<number>[]>;
additionalNotifyOnlies?: pulumi.Input<pulumi.Input<boolean>[]>;
additionalPorts?: pulumi.Input<pulumi.Input<number>[]>;
/**
* List of additional IPv4 addresses for the primary
* zone. Conflicts with `secondaries`.
*/
additionalPrimaries?: pulumi.Input<pulumi.Input<string>[]>;
autogenerateNsRecord?: pulumi.Input<boolean>;
/**
* (Computed) Authoritative Name Servers.
*/
dnsServers?: pulumi.Input<string>;
/**
* Whether or not DNSSEC is enabled for the zone.
* Note that DNSSEC must be enabled on the account by support for this to be set
* to `true`.
*/
dnssec?: pulumi.Input<boolean>;
/**
* The SOA Expiry. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
expiry?: pulumi.Input<number>;
/**
* (Computed) The SOA Hostmaster.
*/
hostmaster?: pulumi.Input<string>;
/**
* The target zone(domain name) to link to.
*/
link?: pulumi.Input<string>;
/**
* List of network IDs for which the zone is
* available. If no network is provided, the zone will be created in network 0,
* the primary NS1 Global Network.
*/
networks?: pulumi.Input<pulumi.Input<number>[]>;
/**
* The SOA NX TTL. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
nxTtl?: pulumi.Input<number>;
/**
* The primary zones' IPv4 address. This makes the zone a
* secondary. Conflicts with `secondaries`.
*/
primary?: pulumi.Input<string>;
primaryNetwork?: pulumi.Input<number>;
primaryPort?: pulumi.Input<number>;
/**
* The SOA Refresh. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
refresh?: pulumi.Input<number>;
/**
* The SOA Retry. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
retry?: pulumi.Input<number>;
/**
* List of secondary servers. This makes the zone a
* primary. Conflicts with `primary` and `additionalPrimaries`.
* Secondaries is documented below.
*/
secondaries?: pulumi.Input<pulumi.Input<inputs.ZoneSecondary>[]>;
/**
* map of tags in the form of `"key" = "value"` where both key and value are strings
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* TSIG is documented below
*/
tsig?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The SOA TTL.
*/
ttl?: pulumi.Input<number>;
/**
* The domain name of the zone.
*/
zone?: pulumi.Input<string>;
}
/**
* The set of arguments for constructing a Zone resource.
*/
export interface ZoneArgs {
additionalNetworks?: pulumi.Input<pulumi.Input<number>[]>;
additionalNotifyOnlies?: pulumi.Input<pulumi.Input<boolean>[]>;
additionalPorts?: pulumi.Input<pulumi.Input<number>[]>;
/**
* List of additional IPv4 addresses for the primary
* zone. Conflicts with `secondaries`.
*/
additionalPrimaries?: pulumi.Input<pulumi.Input<string>[]>;
autogenerateNsRecord?: pulumi.Input<boolean>;
/**
* Whether or not DNSSEC is enabled for the zone.
* Note that DNSSEC must be enabled on the account by support for this to be set
* to `true`.
*/
dnssec?: pulumi.Input<boolean>;
/**
* The SOA Expiry. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
expiry?: pulumi.Input<number>;
/**
* (Computed) The SOA Hostmaster.
*/
hostmaster?: pulumi.Input<string>;
/**
* The target zone(domain name) to link to.
*/
link?: pulumi.Input<string>;
/**
* List of network IDs for which the zone is
* available. If no network is provided, the zone will be created in network 0,
* the primary NS1 Global Network.
*/
networks?: pulumi.Input<pulumi.Input<number>[]>;
/**
* The SOA NX TTL. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
nxTtl?: pulumi.Input<number>;
/**
* The primary zones' IPv4 address. This makes the zone a
* secondary. Conflicts with `secondaries`.
*/
primary?: pulumi.Input<string>;
primaryNetwork?: pulumi.Input<number>;
primaryPort?: pulumi.Input<number>;
/**
* The SOA Refresh. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
refresh?: pulumi.Input<number>;
/**
* The SOA Retry. Conflicts with `primary` and
* `additionalPrimaries` (default must be accepted).
*/
retry?: pulumi.Input<number>;
/**
* List of secondary servers. This makes the zone a
* primary. Conflicts with `primary` and `additionalPrimaries`.
* Secondaries is documented below.
*/
secondaries?: pulumi.Input<pulumi.Input<inputs.ZoneSecondary>[]>;
/**
* map of tags in the form of `"key" = "value"` where both key and value are strings
*/
tags?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* TSIG is documented below
*/
tsig?: pulumi.Input<{
[key: string]: pulumi.Input<string>;
}>;
/**
* The SOA TTL.
*/
ttl?: pulumi.Input<number>;
/**
* The domain name of the zone.
*/
zone: pulumi.Input<string>;
}