Returns information about the replication instance versions used in the project.
+ * @example + * Use a bare-bones client and the command you need to make an API call. + * ```javascript + * import { DatabaseMigrationServiceClient, DescribeEngineVersionsCommand } from "@aws-sdk/client-database-migration-service"; // ES Modules import + * // const { DatabaseMigrationServiceClient, DescribeEngineVersionsCommand } = require("@aws-sdk/client-database-migration-service"); // CommonJS import + * const client = new DatabaseMigrationServiceClient(config); + * const input = { // DescribeEngineVersionsMessage + * MaxRecords: Number("int"), + * Marker: "STRING_VALUE", + * }; + * const command = new DescribeEngineVersionsCommand(input); + * const response = await client.send(command); + * // { // DescribeEngineVersionsResponse + * // EngineVersions: [ // EngineVersionList + * // { // EngineVersion + * // Version: "STRING_VALUE", + * // Lifecycle: "STRING_VALUE", + * // ReleaseStatus: "beta" || "prod", + * // LaunchDate: new Date("TIMESTAMP"), + * // AutoUpgradeDate: new Date("TIMESTAMP"), + * // DeprecationDate: new Date("TIMESTAMP"), + * // ForceUpgradeDate: new Date("TIMESTAMP"), + * // AvailableUpgrades: [ // AvailableUpgradesList + * // "STRING_VALUE", + * // ], + * // }, + * // ], + * // Marker: "STRING_VALUE", + * // }; + * + * ``` + * + * @param DescribeEngineVersionsCommandInput - {@link DescribeEngineVersionsCommandInput} + * @returns {@link DescribeEngineVersionsCommandOutput} + * @see {@link DescribeEngineVersionsCommandInput} for command's `input` shape. + * @see {@link DescribeEngineVersionsCommandOutput} for command's `response` shape. + * @see {@link DatabaseMigrationServiceClientResolvedConfig | config} for DatabaseMigrationServiceClient's `config` shape. + * + * @throws {@link DatabaseMigrationServiceServiceException} + *Base exception class for all service exceptions from DatabaseMigrationService service.
+ * + */ +export class DescribeEngineVersionsCommand extends $Command< + DescribeEngineVersionsCommandInput, + DescribeEngineVersionsCommandOutput, + DatabaseMigrationServiceClientResolvedConfig +> { + // Start section: command_properties + // End section: command_properties + + public static getEndpointParameterInstructions(): EndpointParameterInstructions { + return { + UseFIPS: { type: "builtInParams", name: "useFipsEndpoint" }, + Endpoint: { type: "builtInParams", name: "endpoint" }, + Region: { type: "builtInParams", name: "region" }, + UseDualStack: { type: "builtInParams", name: "useDualstackEndpoint" }, + }; + } + + /** + * @public + */ + constructor(readonly input: DescribeEngineVersionsCommandInput) { + // Start section: command_constructor + super(); + // End section: command_constructor + } + + /** + * @internal + */ + resolveMiddleware( + clientStack: MiddlewareStackSpecifies whether to use default or custom replication behavior for - * PostgreSQL-compatible endpoints. You can use this setting to specify replication - * behavior for endpoints that require additional configuration, such as Babelfish endpoints.
+ *Specifies the default behavior of the replication's handling of PostgreSQL- compatible endpoints that require some additional configuration, such as Babelfish endpoints.
*/ DatabaseMode?: DatabaseMode | string; @@ -7453,6 +7451,114 @@ export interface DescribeEndpointTypesResponse { SupportedEndpointTypes?: SupportedEndpointType[]; } +/** + * @public + */ +export interface DescribeEngineVersionsMessage { + /** + * @public + *The maximum number of records to include in the response. If more records exist than the specified
+ * MaxRecords
value, a pagination token called a marker is included in the response so that
+ * the remaining results can be retrieved.
An optional pagination token provided by a previous request. If this parameter is specified,
+ * the response includes only records beyond the marker, up to the value specified by MaxRecords
.
Provides information about a replication instance version.
+ */ +export interface EngineVersion { + /** + * @public + *The version number of the replication instance.
+ */ + Version?: string; + + /** + * @public + *The lifecycle status of the replication instance version. Valid values are DEPRECATED
,
+ * DEFAULT_VERSION
, and ACTIVE
.
The release status of the replication instance version.
+ */ + ReleaseStatus?: ReleaseStatusValues | string; + + /** + * @public + *The date when the replication instance version became publicly available.
+ */ + LaunchDate?: Date; + + /** + * @public + *The date when the replication instance will be automatically upgraded. This setting only applies
+ * if the auto-minor-version
setting is enabled.
The date when the replication instance version will be deprecated and can no longer be requested.
+ */ + DeprecationDate?: Date; + + /** + * @public + *The date when the replication instance will have a version upgrade forced.
+ */ + ForceUpgradeDate?: Date; + + /** + * @public + *The list of valid replication instance versions that you can upgrade to.
+ */ + AvailableUpgrades?: string[]; +} + +/** + * @public + */ +export interface DescribeEngineVersionsResponse { + /** + * @public + *Returned EngineVersion
objects that describe the replication instance engine versions used in the project.
An optional pagination token provided by a previous request. If this parameter is specified, the response
+ * includes only records beyond the marker, up to the value specified by MaxRecords
.
In response to the DescribeOrderableReplicationInstances
operation, this
diff --git a/clients/client-database-migration-service/src/pagination/DescribeEngineVersionsPaginator.ts b/clients/client-database-migration-service/src/pagination/DescribeEngineVersionsPaginator.ts
new file mode 100644
index 000000000000..5a5cd2eb0d0c
--- /dev/null
+++ b/clients/client-database-migration-service/src/pagination/DescribeEngineVersionsPaginator.ts
@@ -0,0 +1,50 @@
+// smithy-typescript generated code
+import { Paginator } from "@smithy/types";
+
+import {
+ DescribeEngineVersionsCommand,
+ DescribeEngineVersionsCommandInput,
+ DescribeEngineVersionsCommandOutput,
+} from "../commands/DescribeEngineVersionsCommand";
+import { DatabaseMigrationServiceClient } from "../DatabaseMigrationServiceClient";
+import { DatabaseMigrationServicePaginationConfiguration } from "./Interfaces";
+
+/**
+ * @internal
+ */
+const makePagedClientRequest = async (
+ client: DatabaseMigrationServiceClient,
+ input: DescribeEngineVersionsCommandInput,
+ ...args: any
+): Promise