@pulumi/linode
Version:
A Pulumi package for creating and managing linode cloud resources.
205 lines (204 loc) • 6.37 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as outputs from "./types/output";
/**
* Provides information about a Linode PostgreSQL Database.
* For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-databases-postgre-sql-instance-backups).
*
* ## Example Usage
*
* Get information about a PostgreSQL database:
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as linode from "@pulumi/linode";
*
* const my_db = linode.getDatabasePostgresqlV2({
* id: "12345",
* });
* ```
*
* ## pendingUpdates
*
* The following arguments are exposed by each entry in the `pendingUpdates` attribute:
*
* * `deadline` - The time when a mandatory update needs to be applied.
*
* * `description` - A description of the update.
*
* * `plannedFor` - The date and time a maintenance update will be applied.
*
* ## updates
*
* The following arguments are supported in the `updates` specification block:
*
* * `dayOfWeek` - The day to perform maintenance. (`monday`, `tuesday`, ...)
*
* * `duration` - The maximum maintenance window time in hours. (`1`..`3`)
*
* * `frequency` - The frequency at which maintenance occurs. (`weekly`)
*
* * `hourOfDay` - The hour to begin maintenance based in UTC time. (`0`..`23`)
*/
export declare function getDatabasePostgresqlV2(args: GetDatabasePostgresqlV2Args, opts?: pulumi.InvokeOptions): Promise<GetDatabasePostgresqlV2Result>;
/**
* A collection of arguments for invoking getDatabasePostgresqlV2.
*/
export interface GetDatabasePostgresqlV2Args {
/**
* The ID of the PostgreSQL database.
*/
id: string;
}
/**
* A collection of values returned by getDatabasePostgresqlV2.
*/
export interface GetDatabasePostgresqlV2Result {
/**
* A list of IP addresses that can access the Managed Database. Each item can be a single IP address or a range in CIDR format. Use `linode.DatabaseAccessControls` to manage your allow list separately.
*/
readonly allowLists: string[];
/**
* The base64-encoded SSL CA certificate for the Managed Database.
*/
readonly caCert: string;
/**
* The number of Linode Instance nodes deployed to the Managed Database. (default `1`)
*/
readonly clusterSize: number;
/**
* When this Managed Database was created.
*/
readonly created: string;
/**
* Whether the Managed Databases is encrypted.
*/
readonly encrypted: boolean;
/**
* The Managed Database engine. (e.g. `postgresql`)
*/
readonly engine: string;
/**
* The Managed Database engine in engine/version format. (e.g. `postgresql/16`)
*/
readonly engineId: string;
/**
* The database timestamp from which it was restored.
*/
readonly forkRestoreTime: string;
/**
* The ID of the database that was forked from.
*/
readonly forkSource: number;
/**
* The primary host for the Managed Database.
*/
readonly hostPrimary: string;
/**
* The secondary/private host for the managed database.
*/
readonly hostSecondary: string;
readonly id: string;
/**
* A unique, user-defined string referring to the Managed Database.
*/
readonly label: string;
readonly members: {
[key: string]: string;
};
readonly oldestRestoreTime: string;
readonly pendingUpdates: outputs.GetDatabasePostgresqlV2PendingUpdate[];
/**
* The back-end platform for relational databases used by the service.
*/
readonly platform: string;
/**
* The access port for this Managed Database.
*/
readonly port: number;
/**
* The region to use for the Managed Database.
*/
readonly region: string;
/**
* The randomly-generated root password for the Managed Database instance.
*/
readonly rootPassword: string;
/**
* The root username for the Managed Database instance.
*/
readonly rootUsername: string;
/**
* Whether to require SSL credentials to establish a connection to the Managed Database.
*/
readonly sslConnection: boolean;
/**
* The operating status of the Managed Database.
*/
readonly status: string;
/**
* Whether this Managed Database is suspended.
*/
readonly suspended: boolean;
/**
* The Linode Instance type used for the nodes of the Managed Database.
*/
readonly type: string;
/**
* When this Managed Database was last updated.
*/
readonly updated: string;
readonly updates: outputs.GetDatabasePostgresqlV2Updates;
/**
* The Managed Database engine version. (e.g. `13.2`)
*/
readonly version: string;
}
/**
* Provides information about a Linode PostgreSQL Database.
* For more information, see the [Linode APIv4 docs](https://techdocs.akamai.com/linode-api/reference/get-databases-postgre-sql-instance-backups).
*
* ## Example Usage
*
* Get information about a PostgreSQL database:
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as linode from "@pulumi/linode";
*
* const my_db = linode.getDatabasePostgresqlV2({
* id: "12345",
* });
* ```
*
* ## pendingUpdates
*
* The following arguments are exposed by each entry in the `pendingUpdates` attribute:
*
* * `deadline` - The time when a mandatory update needs to be applied.
*
* * `description` - A description of the update.
*
* * `plannedFor` - The date and time a maintenance update will be applied.
*
* ## updates
*
* The following arguments are supported in the `updates` specification block:
*
* * `dayOfWeek` - The day to perform maintenance. (`monday`, `tuesday`, ...)
*
* * `duration` - The maximum maintenance window time in hours. (`1`..`3`)
*
* * `frequency` - The frequency at which maintenance occurs. (`weekly`)
*
* * `hourOfDay` - The hour to begin maintenance based in UTC time. (`0`..`23`)
*/
export declare function getDatabasePostgresqlV2Output(args: GetDatabasePostgresqlV2OutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetDatabasePostgresqlV2Result>;
/**
* A collection of arguments for invoking getDatabasePostgresqlV2.
*/
export interface GetDatabasePostgresqlV2OutputArgs {
/**
* The ID of the PostgreSQL database.
*/
id: pulumi.Input<string>;
}