UNPKG

@pulumi/consul

Version:

A Pulumi package for creating and managing consul resources.

183 lines (182 loc) 7.19 kB
import * as pulumi from "@pulumi/pulumi"; /** * Provides access to the [Autopilot Configuration](https://www.consul.io/docs/guides/autopilot.html) * of Consul to automatically manage Consul servers. * * It includes to automatically cleanup dead servers, monitor the status of the Raft * cluster and stable server introduction. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as consul from "@pulumi/consul"; * * const config = new consul.AutopilotConfig("config", { * cleanupDeadServers: false, * lastContactThreshold: "1s", * maxTrailingLogs: 500, * }); * ``` */ export declare class AutopilotConfig extends pulumi.CustomResource { /** * Get an existing AutopilotConfig 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?: AutopilotConfigState, opts?: pulumi.CustomResourceOptions): AutopilotConfig; /** * Returns true if the given object is an instance of AutopilotConfig. 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 AutopilotConfig; /** * Whether to remove failing servers when a * replacement comes online. Defaults to true. */ readonly cleanupDeadServers: pulumi.Output<boolean | undefined>; /** * The datacenter to use. This overrides the agent's * default datacenter and the datacenter in the provider setup. */ readonly datacenter: pulumi.Output<string | undefined>; /** * Whether to disable [upgrade migrations](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones). * Defaults to false. */ readonly disableUpgradeMigration: pulumi.Output<boolean | undefined>; /** * The time after which a server is * considered as unhealthy and will be removed. Defaults to `"200ms"`. */ readonly lastContactThreshold: pulumi.Output<string | undefined>; /** * The maximum number of Raft log entries a * server can trail the leader. Defaults to 250. */ readonly maxTrailingLogs: pulumi.Output<number | undefined>; /** * The [redundancy zone](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones) * tag to use. Consul will try to keep one voting server by zone to take advantage * of isolated failure domains. Defaults to an empty string. */ readonly redundancyZoneTag: pulumi.Output<string | undefined>; /** * The period to wait for a server to be * healthy and stable before being promoted to a full, voting member. Defaults to * `"10s"`. */ readonly serverStabilizationTime: pulumi.Output<string | undefined>; /** * The tag to override the version information * used during a migration. Defaults to an empty string. */ readonly upgradeVersionTag: pulumi.Output<string | undefined>; /** * Create a AutopilotConfig 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?: AutopilotConfigArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering AutopilotConfig resources. */ export interface AutopilotConfigState { /** * Whether to remove failing servers when a * replacement comes online. Defaults to true. */ cleanupDeadServers?: pulumi.Input<boolean>; /** * The datacenter to use. This overrides the agent's * default datacenter and the datacenter in the provider setup. */ datacenter?: pulumi.Input<string>; /** * Whether to disable [upgrade migrations](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones). * Defaults to false. */ disableUpgradeMigration?: pulumi.Input<boolean>; /** * The time after which a server is * considered as unhealthy and will be removed. Defaults to `"200ms"`. */ lastContactThreshold?: pulumi.Input<string>; /** * The maximum number of Raft log entries a * server can trail the leader. Defaults to 250. */ maxTrailingLogs?: pulumi.Input<number>; /** * The [redundancy zone](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones) * tag to use. Consul will try to keep one voting server by zone to take advantage * of isolated failure domains. Defaults to an empty string. */ redundancyZoneTag?: pulumi.Input<string>; /** * The period to wait for a server to be * healthy and stable before being promoted to a full, voting member. Defaults to * `"10s"`. */ serverStabilizationTime?: pulumi.Input<string>; /** * The tag to override the version information * used during a migration. Defaults to an empty string. */ upgradeVersionTag?: pulumi.Input<string>; } /** * The set of arguments for constructing a AutopilotConfig resource. */ export interface AutopilotConfigArgs { /** * Whether to remove failing servers when a * replacement comes online. Defaults to true. */ cleanupDeadServers?: pulumi.Input<boolean>; /** * The datacenter to use. This overrides the agent's * default datacenter and the datacenter in the provider setup. */ datacenter?: pulumi.Input<string>; /** * Whether to disable [upgrade migrations](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones). * Defaults to false. */ disableUpgradeMigration?: pulumi.Input<boolean>; /** * The time after which a server is * considered as unhealthy and will be removed. Defaults to `"200ms"`. */ lastContactThreshold?: pulumi.Input<string>; /** * The maximum number of Raft log entries a * server can trail the leader. Defaults to 250. */ maxTrailingLogs?: pulumi.Input<number>; /** * The [redundancy zone](https://www.consul.io/docs/guides/autopilot.html#redundancy-zones) * tag to use. Consul will try to keep one voting server by zone to take advantage * of isolated failure domains. Defaults to an empty string. */ redundancyZoneTag?: pulumi.Input<string>; /** * The period to wait for a server to be * healthy and stable before being promoted to a full, voting member. Defaults to * `"10s"`. */ serverStabilizationTime?: pulumi.Input<string>; /** * The tag to override the version information * used during a migration. Defaults to an empty string. */ upgradeVersionTag?: pulumi.Input<string>; }