@pulumi/aws
Version:
A Pulumi package for creating and managing Amazon Web Services (AWS) cloud resources.
298 lines (297 loc) • 13.7 kB
TypeScript
import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
* Information about an RDS engine version.
*
* ## Example Usage
*
* ### Basic Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const test = aws.rds.getEngineVersion({
* engine: "mysql",
* preferredVersions: [
* "8.0.27",
* "8.0.26",
* ],
* });
* ```
*
* ### With `filter`
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const test = aws.rds.getEngineVersion({
* engine: "aurora-postgresql",
* version: "10.14",
* includeAll: true,
* filters: [{
* name: "engine-mode",
* values: ["serverless"],
* }],
* });
* ```
*/
export declare function getEngineVersion(args: GetEngineVersionArgs, opts?: pulumi.InvokeOptions): Promise<GetEngineVersionResult>;
/**
* A collection of arguments for invoking getEngineVersion.
*/
export interface GetEngineVersionArgs {
/**
* Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `defaultOnly` may help avoid `multiple RDS engine versions` errors. See also `latest`.
*/
defaultOnly?: boolean;
/**
* Database engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`.
*
* The following arguments are optional:
*/
engine: string;
/**
* One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html).
*/
filters?: inputs.rds.GetEngineVersionFilter[];
/**
* Whether the engine version must have one or more major upgrade targets. Not including `hasMajorTarget` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version.
*/
hasMajorTarget?: boolean;
/**
* Whether the engine version must have one or more minor upgrade targets. Not including `hasMinorTarget` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version.
*/
hasMinorTarget?: boolean;
/**
* Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`.
*/
includeAll?: boolean;
/**
* Whether the engine version is the most recent version matching the other criteria. This is different from `defaultOnly` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `defaultOnly` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `defaultOnly`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version.
*/
latest?: boolean;
/**
* Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`.
*/
parameterGroupFamily?: string;
/**
* Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredMajorTargets`.
*/
preferredMajorTargets?: string[];
/**
* Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredUpgradeTargets`.
*/
preferredUpgradeTargets?: string[];
/**
* Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredVersions`.
*/
preferredVersions?: string[];
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: string;
version?: string;
}
/**
* A collection of values returned by getEngineVersion.
*/
export interface GetEngineVersionResult {
/**
* Default character set for new instances of the engine version.
*/
readonly defaultCharacterSet: string;
readonly defaultOnly?: boolean;
readonly engine: string;
/**
* Description of the engine.
*/
readonly engineDescription: string;
/**
* Set of log types that the engine version has available for export to CloudWatch Logs.
*/
readonly exportableLogTypes: string[];
readonly filters?: outputs.rds.GetEngineVersionFilter[];
readonly hasMajorTarget?: boolean;
readonly hasMinorTarget?: boolean;
/**
* The provider-assigned unique ID for this managed resource.
*/
readonly id: string;
readonly includeAll?: boolean;
readonly latest?: boolean;
readonly parameterGroupFamily: string;
readonly preferredMajorTargets?: string[];
readonly preferredUpgradeTargets?: string[];
readonly preferredVersions?: string[];
readonly region: string;
/**
* Status of the engine version, either `available` or `deprecated`.
*/
readonly status: string;
/**
* Set of character sets supported by th engine version.
*/
readonly supportedCharacterSets: string[];
/**
* Set of features supported by the engine version.
*/
readonly supportedFeatureNames: string[];
/**
* Set of supported engine version modes.
*/
readonly supportedModes: string[];
/**
* Set of the time zones supported by the engine version.
*/
readonly supportedTimezones: string[];
/**
* Whether the certificates can be rotated without restarting the Aurora instance.
*/
readonly supportsCertificateRotationWithoutRestart: boolean;
/**
* Whether you can use Aurora global databases with the engine version.
*/
readonly supportsGlobalDatabases: boolean;
/**
* Whether the engine version supports integrations with other AWS services.
*/
readonly supportsIntegrations: boolean;
/**
* Whether the engine version supports Aurora Limitless Database.
*/
readonly supportsLimitlessDatabase: boolean;
/**
* Whether the engine version supports local write forwarding or not.
*/
readonly supportsLocalWriteForwarding: boolean;
/**
* Whether the engine version supports exporting the log types specified by `exportableLogTypes` to CloudWatch Logs.
*/
readonly supportsLogExportsToCloudwatch: boolean;
/**
* Whether you can use Aurora parallel query with the engine version.
*/
readonly supportsParallelQuery: boolean;
/**
* Whether the engine version supports read replicas.
*/
readonly supportsReadReplica: boolean;
/**
* Set of versions that are valid major version upgrades for the engine version.
*/
readonly validMajorTargets: string[];
/**
* Set of versions that are valid minor version upgrades for the engine version.
*/
readonly validMinorTargets: string[];
/**
* Set of versions that are valid major or minor upgrades for the engine version.
*/
readonly validUpgradeTargets: string[];
readonly version: string;
/**
* Complete engine version.
*/
readonly versionActual: string;
/**
* Description of the engine version.
*/
readonly versionDescription: string;
}
/**
* Information about an RDS engine version.
*
* ## Example Usage
*
* ### Basic Usage
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const test = aws.rds.getEngineVersion({
* engine: "mysql",
* preferredVersions: [
* "8.0.27",
* "8.0.26",
* ],
* });
* ```
*
* ### With `filter`
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as aws from "@pulumi/aws";
*
* const test = aws.rds.getEngineVersion({
* engine: "aurora-postgresql",
* version: "10.14",
* includeAll: true,
* filters: [{
* name: "engine-mode",
* values: ["serverless"],
* }],
* });
* ```
*/
export declare function getEngineVersionOutput(args: GetEngineVersionOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetEngineVersionResult>;
/**
* A collection of arguments for invoking getEngineVersion.
*/
export interface GetEngineVersionOutputArgs {
/**
* Whether the engine version must be an AWS-defined default version. Some engines have multiple default versions, such as for each major version. Using `defaultOnly` may help avoid `multiple RDS engine versions` errors. See also `latest`.
*/
defaultOnly?: pulumi.Input<boolean>;
/**
* Database engine. Engine values include `aurora`, `aurora-mysql`, `aurora-postgresql`, `docdb`, `mariadb`, `mysql`, `neptune`, `oracle-ee`, `oracle-se`, `oracle-se1`, `oracle-se2`, `postgres`, `sqlserver-ee`, `sqlserver-ex`, `sqlserver-se`, and `sqlserver-web`.
*
* The following arguments are optional:
*/
engine: pulumi.Input<string>;
/**
* One or more name/value pairs to use in filtering versions. There are several valid keys; for a full reference, check out [describe-db-engine-versions in the AWS CLI reference](https://awscli.amazonaws.com/v2/documentation/api/latest/reference/rds/describe-db-engine-versions.html).
*/
filters?: pulumi.Input<pulumi.Input<inputs.rds.GetEngineVersionFilterArgs>[]>;
/**
* Whether the engine version must have one or more major upgrade targets. Not including `hasMajorTarget` or setting it to `false` doesn't imply that there's no corresponding major upgrade target for the engine version.
*/
hasMajorTarget?: pulumi.Input<boolean>;
/**
* Whether the engine version must have one or more minor upgrade targets. Not including `hasMinorTarget` or setting it to `false` doesn't imply that there's no corresponding minor upgrade target for the engine version.
*/
hasMinorTarget?: pulumi.Input<boolean>;
/**
* Whether the engine version `status` can either be `deprecated` or `available`. When not set or set to `false`, the engine version `status` will always be `available`.
*/
includeAll?: pulumi.Input<boolean>;
/**
* Whether the engine version is the most recent version matching the other criteria. This is different from `defaultOnly` in important ways: "default" relies on AWS-defined defaults, the latest version isn't always the default, and AWS might have multiple default versions for an engine. As a result, `defaultOnly` might not prevent errors from `multiple RDS engine versions`, while `latest` will. (`latest` can be used with `defaultOnly`.) **Note:** The data source uses a best-effort approach at selecting the latest version. Due to the complexity of version identifiers across engines and incomplete version date information provided by AWS, using `latest` may not always result in the engine version being the actual latest version.
*/
latest?: pulumi.Input<boolean>;
/**
* Name of a specific database parameter group family. Examples of parameter group families are `mysql8.0`, `mariadb10.4`, and `postgres12`.
*/
parameterGroupFamily?: pulumi.Input<string>;
/**
* Ordered list of preferred major version upgrade targets. The engine version will be the first match in the list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredMajorTargets`.
*/
preferredMajorTargets?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Ordered list of preferred version upgrade targets. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredUpgradeTargets`.
*/
preferredUpgradeTargets?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Ordered list of preferred versions. The engine version will be the first match in this list unless the `latest` parameter is set to `true`. The engine version will be the default version if you don't include any criteria, such as `preferredVersions`.
*/
preferredVersions?: pulumi.Input<pulumi.Input<string>[]>;
/**
* Region where this resource will be [managed](https://docs.aws.amazon.com/general/latest/gr/rande.html#regional-endpoints). Defaults to the Region set in the provider configuration.
*/
region?: pulumi.Input<string>;
version?: pulumi.Input<string>;
}