Skip to content

Commit 13ee380

Browse files
author
awstools
committed
feat(client-database-migration-service): Introduces TargetDataSettings with the TablePreparationMode option available for data migrations.
1 parent e9ee60b commit 13ee380

File tree

11 files changed

+236
-75
lines changed

11 files changed

+236
-75
lines changed

clients/client-database-migration-service/src/commands/CreateDataMigrationCommand.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,11 @@ export interface CreateDataMigrationCommandOutput extends CreateDataMigrationRes
5858
* SlotName: "STRING_VALUE",
5959
* },
6060
* ],
61+
* TargetDataSettings: [ // TargetDataSettings
62+
* { // TargetDataSetting
63+
* TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
64+
* },
65+
* ],
6166
* NumberOfJobs: Number("int"),
6267
* Tags: [ // TagList
6368
* { // Tag
@@ -93,6 +98,11 @@ export interface CreateDataMigrationCommandOutput extends CreateDataMigrationRes
9398
* // SlotName: "STRING_VALUE",
9499
* // },
95100
* // ],
101+
* // TargetDataSettings: [ // TargetDataSettings
102+
* // { // TargetDataSetting
103+
* // TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
104+
* // },
105+
* // ],
96106
* // DataMigrationStatistics: { // DataMigrationStatistics
97107
* // TablesLoaded: Number("int"),
98108
* // ElapsedTimeMillis: Number("long"),

clients/client-database-migration-service/src/commands/DeleteDataMigrationCommand.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,11 @@ export interface DeleteDataMigrationCommandOutput extends DeleteDataMigrationRes
7171
* // SlotName: "STRING_VALUE",
7272
* // },
7373
* // ],
74+
* // TargetDataSettings: [ // TargetDataSettings
75+
* // { // TargetDataSetting
76+
* // TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
77+
* // },
78+
* // ],
7479
* // DataMigrationStatistics: { // DataMigrationStatistics
7580
* // TablesLoaded: Number("int"),
7681
* // ElapsedTimeMillis: Number("long"),

clients/client-database-migration-service/src/commands/DescribeDataMigrationsCommand.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,11 @@ export interface DescribeDataMigrationsCommandOutput extends DescribeDataMigrati
8383
* // SlotName: "STRING_VALUE",
8484
* // },
8585
* // ],
86+
* // TargetDataSettings: [ // TargetDataSettings
87+
* // { // TargetDataSetting
88+
* // TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
89+
* // },
90+
* // ],
8691
* // DataMigrationStatistics: { // DataMigrationStatistics
8792
* // TablesLoaded: Number("int"),
8893
* // ElapsedTimeMillis: Number("long"),

clients/client-database-migration-service/src/commands/DescribeReplicationTasksCommand.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@ import {
1010
ServiceOutputTypes,
1111
} from "../DatabaseMigrationServiceClient";
1212
import { commonParams } from "../endpoint/EndpointParameters";
13-
import { DescribeReplicationTasksMessage, DescribeReplicationTasksResponse } from "../models/models_0";
13+
import { DescribeReplicationTasksMessage, DescribeReplicationTasksResponse } from "../models/models_1";
1414
import { de_DescribeReplicationTasksCommand, se_DescribeReplicationTasksCommand } from "../protocols/Aws_json1_1";
1515

1616
/**

clients/client-database-migration-service/src/commands/ModifyDataMigrationCommand.ts

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,11 @@ export interface ModifyDataMigrationCommandOutput extends ModifyDataMigrationRes
5858
* SlotName: "STRING_VALUE",
5959
* },
6060
* ],
61+
* TargetDataSettings: [ // TargetDataSettings
62+
* { // TargetDataSetting
63+
* TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
64+
* },
65+
* ],
6166
* NumberOfJobs: Number("int"),
6267
* SelectionRules: "STRING_VALUE",
6368
* };
@@ -86,6 +91,11 @@ export interface ModifyDataMigrationCommandOutput extends ModifyDataMigrationRes
8691
* // SlotName: "STRING_VALUE",
8792
* // },
8893
* // ],
94+
* // TargetDataSettings: [ // TargetDataSettings
95+
* // { // TargetDataSetting
96+
* // TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
97+
* // },
98+
* // ],
8999
* // DataMigrationStatistics: { // DataMigrationStatistics
90100
* // TablesLoaded: Number("int"),
91101
* // ElapsedTimeMillis: Number("long"),

clients/client-database-migration-service/src/commands/StartDataMigrationCommand.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,11 @@ export interface StartDataMigrationCommandOutput extends StartDataMigrationRespo
7272
* // SlotName: "STRING_VALUE",
7373
* // },
7474
* // ],
75+
* // TargetDataSettings: [ // TargetDataSettings
76+
* // { // TargetDataSetting
77+
* // TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
78+
* // },
79+
* // ],
7580
* // DataMigrationStatistics: { // DataMigrationStatistics
7681
* // TablesLoaded: Number("int"),
7782
* // ElapsedTimeMillis: Number("long"),

clients/client-database-migration-service/src/commands/StopDataMigrationCommand.ts

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -71,6 +71,11 @@ export interface StopDataMigrationCommandOutput extends StopDataMigrationRespons
7171
* // SlotName: "STRING_VALUE",
7272
* // },
7373
* // ],
74+
* // TargetDataSettings: [ // TargetDataSettings
75+
* // { // TargetDataSetting
76+
* // TablePreparationMode: "do-nothing" || "truncate" || "drop-tables-on-target",
77+
* // },
78+
* // ],
7479
* // DataMigrationStatistics: { // DataMigrationStatistics
7580
* // TablesLoaded: Number("int"),
7681
* // ElapsedTimeMillis: Number("long"),

clients/client-database-migration-service/src/models/models_0.ts

Lines changed: 47 additions & 66 deletions
Original file line numberDiff line numberDiff line change
@@ -667,6 +667,35 @@ export interface SourceDataSetting {
667667
SlotName?: string | undefined;
668668
}
669669

670+
/**
671+
* @public
672+
* @enum
673+
*/
674+
export const TablePreparationMode = {
675+
DO_NOTHING: "do-nothing",
676+
DROP_TABLES_ON_TARGET: "drop-tables-on-target",
677+
TRUNCATE: "truncate",
678+
} as const;
679+
680+
/**
681+
* @public
682+
*/
683+
export type TablePreparationMode = (typeof TablePreparationMode)[keyof typeof TablePreparationMode];
684+
685+
/**
686+
* <p>Defines settings for a target data provider for a data migration.</p>
687+
* @public
688+
*/
689+
export interface TargetDataSetting {
690+
/**
691+
* <p>This setting determines how DMS handles the target tables before starting a data migration,
692+
* either by leaving them untouched, dropping and recreating them,
693+
* or truncating the existing data in the target tables.</p>
694+
* @public
695+
*/
696+
TablePreparationMode?: TablePreparationMode | undefined;
697+
}
698+
670699
/**
671700
* @public
672701
*/
@@ -721,6 +750,12 @@ export interface CreateDataMigrationMessage {
721750
*/
722751
SourceDataSettings?: SourceDataSetting[] | undefined;
723752

753+
/**
754+
* <p>Specifies information about the target data provider.</p>
755+
* @public
756+
*/
757+
TargetDataSettings?: TargetDataSetting[] | undefined;
758+
724759
/**
725760
* <p>The number of parallel jobs that trigger parallel threads to unload the tables from the source, and then load them to the target.</p>
726761
* @public
@@ -891,6 +926,12 @@ export interface DataMigration {
891926
*/
892927
SourceDataSettings?: SourceDataSetting[] | undefined;
893928

929+
/**
930+
* <p>Specifies information about the data migration's target data provider.</p>
931+
* @public
932+
*/
933+
TargetDataSettings?: TargetDataSetting[] | undefined;
934+
894935
/**
895936
* <p>Provides information about the data migration's run, including start and stop time, latency, and data migration progress.</p>
896937
* @public
@@ -2699,7 +2740,7 @@ export interface MicrosoftSQLServerSettings {
26992740
ForceLobLookup?: boolean | undefined;
27002741

27012742
/**
2702-
* <p>Specifies using Kerberos authentication with Microsoft SQL Server.</p>
2743+
* <p>Specifies the authentication method to be used with Microsoft SQL Server.</p>
27032744
* @public
27042745
*/
27052746
AuthenticationMethod?: SqlServerAuthenticationMethod | undefined;
@@ -3544,7 +3585,7 @@ export interface OracleSettings {
35443585
OpenTransactionWindow?: number | undefined;
35453586

35463587
/**
3547-
* <p>Specifies using Kerberos authentication with Oracle.</p>
3588+
* <p>Specifies the authentication method to be used with Oracle.</p>
35483589
* @public
35493590
*/
35503591
AuthenticationMethod?: OracleAuthenticationMethod | undefined;
@@ -6766,24 +6807,24 @@ export class ReplicationSubnetGroupDoesNotCoverEnoughAZs extends __BaseException
67666807
}
67676808

67686809
/**
6769-
* <p>Specifies using Kerberos authentication settings for use with DMS.</p>
6810+
* <p>Specifies the settings required for kerberos authentication when creating the replication instance.</p>
67706811
* @public
67716812
*/
67726813
export interface KerberosAuthenticationSettings {
67736814
/**
6774-
* <p>Specifies the secret ID of the key cache for the replication instance.</p>
6815+
* <p>Specifies the ID of the secret that stores the key cache file required for kerberos authentication.</p>
67756816
* @public
67766817
*/
67776818
KeyCacheSecretId?: string | undefined;
67786819

67796820
/**
6780-
* <p>Specifies the Amazon Resource Name (ARN) of the IAM role that grants Amazon Web Services DMS access to the secret containing key cache file for the replication instance.</p>
6821+
* <p>Specifies the Amazon Resource Name (ARN) of the IAM role that grants Amazon Web Services DMS access to the secret containing key cache file for the kerberos authentication.</p>
67816822
* @public
67826823
*/
67836824
KeyCacheSecretIamArn?: string | undefined;
67846825

67856826
/**
6786-
* <p>Specifies the ID of the secret that stores the key cache file required for kerberos authentication of the replication instance.</p>
6827+
* <p>Specifies the contents of krb5 configuration file required for kerberos authentication.</p>
67876828
* @public
67886829
*/
67896830
Krb5FileContents?: string | undefined;
@@ -12711,66 +12752,6 @@ export interface DescribeReplicationTaskIndividualAssessmentsResponse {
1271112752
ReplicationTaskIndividualAssessments?: ReplicationTaskIndividualAssessment[] | undefined;
1271212753
}
1271312754

12714-
/**
12715-
* <p></p>
12716-
* @public
12717-
*/
12718-
export interface DescribeReplicationTasksMessage {
12719-
/**
12720-
* <p>Filters applied to replication tasks.</p>
12721-
* <p>Valid filter names: replication-task-arn | replication-task-id | migration-type |
12722-
* endpoint-arn | replication-instance-arn</p>
12723-
* @public
12724-
*/
12725-
Filters?: Filter[] | undefined;
12726-
12727-
/**
12728-
* <p> The maximum number of records to include in the response. If more records exist than
12729-
* the specified <code>MaxRecords</code> value, a pagination token called a marker is included
12730-
* in the response so that the remaining results can be retrieved. </p>
12731-
* <p>Default: 100</p>
12732-
* <p>Constraints: Minimum 20, maximum 100.</p>
12733-
* @public
12734-
*/
12735-
MaxRecords?: number | undefined;
12736-
12737-
/**
12738-
* <p> An optional pagination token provided by a previous request. If this parameter is
12739-
* specified, the response includes only records beyond the marker, up to the value specified
12740-
* by <code>MaxRecords</code>. </p>
12741-
* @public
12742-
*/
12743-
Marker?: string | undefined;
12744-
12745-
/**
12746-
* <p>An option to set to avoid returning information about settings. Use this to reduce
12747-
* overhead when setting information is too large. To use this option, choose
12748-
* <code>true</code>; otherwise, choose <code>false</code> (the default).</p>
12749-
* @public
12750-
*/
12751-
WithoutSettings?: boolean | undefined;
12752-
}
12753-
12754-
/**
12755-
* <p></p>
12756-
* @public
12757-
*/
12758-
export interface DescribeReplicationTasksResponse {
12759-
/**
12760-
* <p> An optional pagination token provided by a previous request. If this parameter is
12761-
* specified, the response includes only records beyond the marker, up to the value specified
12762-
* by <code>MaxRecords</code>. </p>
12763-
* @public
12764-
*/
12765-
Marker?: string | undefined;
12766-
12767-
/**
12768-
* <p>A description of the replication tasks.</p>
12769-
* @public
12770-
*/
12771-
ReplicationTasks?: ReplicationTask[] | undefined;
12772-
}
12773-
1277412755
/**
1277512756
* @internal
1277612757
*/

clients/client-database-migration-service/src/models/models_1.ts

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,70 @@ import {
6464
SybaseSettingsFilterSensitiveLog,
6565
TableStatistics,
6666
Tag,
67+
TargetDataSetting,
6768
TimestreamSettings,
6869
} from "./models_0";
6970

71+
/**
72+
* <p></p>
73+
* @public
74+
*/
75+
export interface DescribeReplicationTasksMessage {
76+
/**
77+
* <p>Filters applied to replication tasks.</p>
78+
* <p>Valid filter names: replication-task-arn | replication-task-id | migration-type |
79+
* endpoint-arn | replication-instance-arn</p>
80+
* @public
81+
*/
82+
Filters?: Filter[] | undefined;
83+
84+
/**
85+
* <p> The maximum number of records to include in the response. If more records exist than
86+
* the specified <code>MaxRecords</code> value, a pagination token called a marker is included
87+
* in the response so that the remaining results can be retrieved. </p>
88+
* <p>Default: 100</p>
89+
* <p>Constraints: Minimum 20, maximum 100.</p>
90+
* @public
91+
*/
92+
MaxRecords?: number | undefined;
93+
94+
/**
95+
* <p> An optional pagination token provided by a previous request. If this parameter is
96+
* specified, the response includes only records beyond the marker, up to the value specified
97+
* by <code>MaxRecords</code>. </p>
98+
* @public
99+
*/
100+
Marker?: string | undefined;
101+
102+
/**
103+
* <p>An option to set to avoid returning information about settings. Use this to reduce
104+
* overhead when setting information is too large. To use this option, choose
105+
* <code>true</code>; otherwise, choose <code>false</code> (the default).</p>
106+
* @public
107+
*/
108+
WithoutSettings?: boolean | undefined;
109+
}
110+
111+
/**
112+
* <p></p>
113+
* @public
114+
*/
115+
export interface DescribeReplicationTasksResponse {
116+
/**
117+
* <p> An optional pagination token provided by a previous request. If this parameter is
118+
* specified, the response includes only records beyond the marker, up to the value specified
119+
* by <code>MaxRecords</code>. </p>
120+
* @public
121+
*/
122+
Marker?: string | undefined;
123+
124+
/**
125+
* <p>A description of the replication tasks.</p>
126+
* @public
127+
*/
128+
ReplicationTasks?: ReplicationTask[] | undefined;
129+
}
130+
70131
/**
71132
* <p></p>
72133
* @public
@@ -428,6 +489,12 @@ export interface ModifyDataMigrationMessage {
428489
*/
429490
SourceDataSettings?: SourceDataSetting[] | undefined;
430491

492+
/**
493+
* <p>The new information about the target data provider for the data migration.</p>
494+
* @public
495+
*/
496+
TargetDataSettings?: TargetDataSetting[] | undefined;
497+
431498
/**
432499
* <p>The number of parallel jobs that trigger parallel threads to unload the tables from the source, and then load them to the target.</p>
433500
* @public

0 commit comments

Comments
 (0)