@aws-mdaa/dms-constructs 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.d.ts ADDED
@@ -0,0 +1,6 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ export * from './replication_instance';
6
+ export * from './endpoint';
package/lib/index.js ADDED
@@ -0,0 +1,25 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+
6
+ "use strict";
7
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
8
+ if (k2 === undefined) k2 = k;
9
+ var desc = Object.getOwnPropertyDescriptor(m, k);
10
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
11
+ desc = { enumerable: true, get: function() { return m[k]; } };
12
+ }
13
+ Object.defineProperty(o, k2, desc);
14
+ }) : (function(o, m, k, k2) {
15
+ if (k2 === undefined) k2 = k;
16
+ o[k2] = m[k];
17
+ }));
18
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
19
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+
23
+ __exportStar(require("./replication_instance"), exports);
24
+ __exportStar(require("./endpoint"), exports);
25
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJpbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7O0FBQUE7OztHQUdHO0FBQ0gseURBQXVDO0FBQ3ZDLDZDQUEyQiIsInNvdXJjZXNDb250ZW50IjpbIi8qIVxuICogQ29weXJpZ2h0IEFtYXpvbi5jb20sIEluYy4gb3IgaXRzIGFmZmlsaWF0ZXMuIEFsbCBSaWdodHMgUmVzZXJ2ZWQuXG4gKiBTUERYLUxpY2Vuc2UtSWRlbnRpZmllcjogQXBhY2hlLTIuMFxuICovXG5leHBvcnQgKiBmcm9tICcuL3JlcGxpY2F0aW9uX2luc3RhbmNlJztcbmV4cG9ydCAqIGZyb20gJy4vZW5kcG9pbnQnO1xuIl19
@@ -0,0 +1,64 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ import { MdaaConstructProps } from '@aws-mdaa/construct';
6
+ import { CfnTag, IResolvable } from 'aws-cdk-lib';
7
+ import { CfnReplicationInstance } from 'aws-cdk-lib/aws-dms';
8
+ import { IKey } from 'aws-cdk-lib/aws-kms';
9
+ import { Construct } from 'constructs';
10
+ export interface MdaaReplicationInstanceProps extends MdaaConstructProps {
11
+ readonly allocatedStorage?: number;
12
+ readonly allowMajorVersionUpgrade?: boolean | IResolvable;
13
+ readonly autoMinorVersionUpgrade?: boolean | IResolvable;
14
+ /**
15
+ * Q-ENHANCED-PROPERTY
16
+ * Optional availability zone specification for replication instance placement controlling geographic distribution and latency optimization. Defines the specific availability zone for replication instance deployment for network proximity and disaster recovery planning.
17
+ *
18
+ * Use cases: Geographic placement; Latency optimization; Disaster recovery; Network proximity
19
+ *
20
+ * AWS: DMS replication instance availability zone for geographic placement and network optimization
21
+ *
22
+ * Validation: Must be valid availability zone name if provided; controls instance placement and network proximity
23
+ **/
24
+ readonly availabilityZone?: string;
25
+ /**
26
+ * Q-ENHANCED-PROPERTY
27
+ * Optional DMS engine version specification for feature access and compatibility control enabling version management and capability selection. Provides control over DMS engine version for feature access, compatibility, and performance characteristics.
28
+ *
29
+ * Use cases: Version management; Feature access; Compatibility control; Performance optimization
30
+ *
31
+ * AWS: DMS replication instance engine version for feature access and compatibility management
32
+ *
33
+ * Validation: Must be valid DMS engine version if provided; defaults to latest available version
34
+ **/
35
+ readonly engineVersion?: string;
36
+ readonly kmsKey: IKey;
37
+ readonly multiAz?: boolean | IResolvable;
38
+ /**
39
+ * Q-ENHANCED-PROPERTY
40
+ * Optional maintenance window specification for system updates and maintenance operations controlling operational timing and impact. Defines the weekly time range for system maintenance activities with minimal impact on migration operations.
41
+ *
42
+ * Use cases: Maintenance scheduling; Operational timing; Impact control; System updates
43
+ *
44
+ * AWS: DMS replication instance maintenance window for system updates and operational scheduling
45
+ *
46
+ * Validation: Must be valid time range format (ddd:hh24:mi-ddd:hh24:mi) if provided; minimum 30-minute window
47
+ **/
48
+ readonly preferredMaintenanceWindow?: string;
49
+ readonly replicationInstanceClass: string;
50
+ readonly replicationInstanceIdentifier?: string;
51
+ readonly replicationSubnetGroupIdentifier: string;
52
+ readonly resourceIdentifier?: string;
53
+ readonly tags?: Array<CfnTag>;
54
+ readonly vpcSecurityGroupIds?: Array<string>;
55
+ }
56
+ /**
57
+ * Reusable CDK construct for a compliant DMS Replication Instance.
58
+ * Specifically, enforces KMS Encryption, and prevents public accessibility.
59
+ */
60
+ export declare class MdaaReplicationInstance extends CfnReplicationInstance {
61
+ /** Overrides specific compliance-related properties. */
62
+ private static setProps;
63
+ constructor(scope: Construct, id: string, props: MdaaReplicationInstanceProps);
64
+ }
@@ -0,0 +1,55 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+
6
+ "use strict";
7
+ var _a;
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.MdaaReplicationInstance = void 0;
10
+ const JSII_RTTI_SYMBOL_1 = Symbol.for("jsii.rtti");
11
+
12
+ const construct_1 = require("@aws-mdaa/construct"); //NOSONAR
13
+ const aws_dms_1 = require("aws-cdk-lib/aws-dms");
14
+ const utils_1 = require("./utils");
15
+ /**
16
+ * Reusable CDK construct for a compliant DMS Replication Instance.
17
+ * Specifically, enforces KMS Encryption, and prevents public accessibility.
18
+ */
19
+ class MdaaReplicationInstance extends aws_dms_1.CfnReplicationInstance {
20
+ /** Overrides specific compliance-related properties. */
21
+ static setProps(props) {
22
+ const replicationInstanceIdentifier = (0, utils_1.sanitizeReplicationInstanceIdentifier)(props.naming.resourceName(props.replicationInstanceIdentifier, 63));
23
+ const overrideProps = {
24
+ replicationInstanceIdentifier,
25
+ publiclyAccessible: false,
26
+ kmsKeyId: props.kmsKey.keyId,
27
+ };
28
+ return { ...props, ...overrideProps };
29
+ }
30
+ constructor(scope, id, props) {
31
+ super(scope, id, MdaaReplicationInstance.setProps(props));
32
+ new construct_1.MdaaParamAndOutput(this, {
33
+ ...{
34
+ resourceType: 'replicationInstance',
35
+ resourceId: props.replicationInstanceIdentifier,
36
+ name: 'identifier',
37
+ value: this.ref,
38
+ },
39
+ ...props,
40
+ });
41
+ new construct_1.MdaaParamAndOutput(this, {
42
+ ...{
43
+ resourceType: 'replicationInstance',
44
+ resourceId: props.replicationInstanceIdentifier,
45
+ name: 'ip',
46
+ value: this.attrReplicationInstancePrivateIpAddresses,
47
+ },
48
+ ...props,
49
+ });
50
+ }
51
+ }
52
+ exports.MdaaReplicationInstance = MdaaReplicationInstance;
53
+ _a = JSII_RTTI_SYMBOL_1;
54
+ MdaaReplicationInstance[_a] = { fqn: "@aws-mdaa/dms-constructs.MdaaReplicationInstance", version: "1.2.0" };
55
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVwbGljYXRpb25faW5zdGFuY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJyZXBsaWNhdGlvbl9pbnN0YW5jZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7OztBQUFBOzs7R0FHRztBQUVILG1EQUE2RSxDQUFDLFNBQVM7QUFFdkYsaURBQTBGO0FBRzFGLG1DQUFnRTtBQWlEaEU7OztHQUdHO0FBQ0gsTUFBYSx1QkFBd0IsU0FBUSxnQ0FBc0I7SUFDakUsd0RBQXdEO0lBQ2hELE1BQU0sQ0FBQyxRQUFRLENBQUMsS0FBbUM7UUFDekQsTUFBTSw2QkFBNkIsR0FBRyxJQUFBLDZDQUFxQyxFQUN6RSxLQUFLLENBQUMsTUFBTSxDQUFDLFlBQVksQ0FBQyxLQUFLLENBQUMsNkJBQTZCLEVBQUUsRUFBRSxDQUFDLENBQ25FLENBQUM7UUFDRixNQUFNLGFBQWEsR0FBRztZQUNwQiw2QkFBNkI7WUFDN0Isa0JBQWtCLEVBQUUsS0FBSztZQUN6QixRQUFRLEVBQUUsS0FBSyxDQUFDLE1BQU0sQ0FBQyxLQUFLO1NBQzdCLENBQUM7UUFDRixPQUFPLEVBQUUsR0FBRyxLQUFLLEVBQUUsR0FBRyxhQUFhLEVBQUUsQ0FBQztJQUN4QyxDQUFDO0lBRUQsWUFBWSxLQUFnQixFQUFFLEVBQVUsRUFBRSxLQUFtQztRQUMzRSxLQUFLLENBQUMsS0FBSyxFQUFFLEVBQUUsRUFBRSx1QkFBdUIsQ0FBQyxRQUFRLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQztRQUUxRCxJQUFJLDhCQUFrQixDQUFDLElBQUksRUFBRTtZQUMzQixHQUFHO2dCQUNELFlBQVksRUFBRSxxQkFBcUI7Z0JBQ25DLFVBQVUsRUFBRSxLQUFLLENBQUMsNkJBQTZCO2dCQUMvQyxJQUFJLEVBQUUsWUFBWTtnQkFDbEIsS0FBSyxFQUFFLElBQUksQ0FBQyxHQUFHO2FBQ2hCO1lBQ0QsR0FBRyxLQUFLO1NBQ1QsQ0FBQyxDQUFDO1FBRUgsSUFBSSw4QkFBa0IsQ0FBQyxJQUFJLEVBQUU7WUFDM0IsR0FBRztnQkFDRCxZQUFZLEVBQUUscUJBQXFCO2dCQUNuQyxVQUFVLEVBQUUsS0FBSyxDQUFDLDZCQUE2QjtnQkFDL0MsSUFBSSxFQUFFLElBQUk7Z0JBQ1YsS0FBSyxFQUFFLElBQUksQ0FBQyx5Q0FBeUM7YUFDdEQ7WUFDRCxHQUFHLEtBQUs7U0FDVCxDQUFDLENBQUM7SUFDTCxDQUFDOztBQXBDSCwwREFxQ0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKiFcbiAqIENvcHlyaWdodCBBbWF6b24uY29tLCBJbmMuIG9yIGl0cyBhZmZpbGlhdGVzLiBBbGwgUmlnaHRzIFJlc2VydmVkLlxuICogU1BEWC1MaWNlbnNlLUlkZW50aWZpZXI6IEFwYWNoZS0yLjBcbiAqL1xuXG5pbXBvcnQgeyBNZGFhQ29uc3RydWN0UHJvcHMsIE1kYWFQYXJhbUFuZE91dHB1dCB9IGZyb20gJ0Bhd3MtbWRhYS9jb25zdHJ1Y3QnOyAvL05PU09OQVJcbmltcG9ydCB7IENmblRhZywgSVJlc29sdmFibGUgfSBmcm9tICdhd3MtY2RrLWxpYic7XG5pbXBvcnQgeyBDZm5SZXBsaWNhdGlvbkluc3RhbmNlLCBDZm5SZXBsaWNhdGlvbkluc3RhbmNlUHJvcHMgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3MtZG1zJztcbmltcG9ydCB7IElLZXkgfSBmcm9tICdhd3MtY2RrLWxpYi9hd3Mta21zJztcbmltcG9ydCB7IENvbnN0cnVjdCB9IGZyb20gJ2NvbnN0cnVjdHMnO1xuaW1wb3J0IHsgc2FuaXRpemVSZXBsaWNhdGlvbkluc3RhbmNlSWRlbnRpZmllciB9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgaW50ZXJmYWNlIE1kYWFSZXBsaWNhdGlvbkluc3RhbmNlUHJvcHMgZXh0ZW5kcyBNZGFhQ29uc3RydWN0UHJvcHMge1xuICByZWFkb25seSBhbGxvY2F0ZWRTdG9yYWdlPzogbnVtYmVyO1xuICByZWFkb25seSBhbGxvd01ham9yVmVyc2lvblVwZ3JhZGU/OiBib29sZWFuIHwgSVJlc29sdmFibGU7XG4gIHJlYWRvbmx5IGF1dG9NaW5vclZlcnNpb25VcGdyYWRlPzogYm9vbGVhbiB8IElSZXNvbHZhYmxlO1xuICAvKipcbiAgICogUS1FTkhBTkNFRC1QUk9QRVJUWVxuICAgKiBPcHRpb25hbCBhdmFpbGFiaWxpdHkgem9uZSBzcGVjaWZpY2F0aW9uIGZvciByZXBsaWNhdGlvbiBpbnN0YW5jZSBwbGFjZW1lbnQgY29udHJvbGxpbmcgZ2VvZ3JhcGhpYyBkaXN0cmlidXRpb24gYW5kIGxhdGVuY3kgb3B0aW1pemF0aW9uLiBEZWZpbmVzIHRoZSBzcGVjaWZpYyBhdmFpbGFiaWxpdHkgem9uZSBmb3IgcmVwbGljYXRpb24gaW5zdGFuY2UgZGVwbG95bWVudCBmb3IgbmV0d29yayBwcm94aW1pdHkgYW5kIGRpc2FzdGVyIHJlY292ZXJ5IHBsYW5uaW5nLlxuICAgKlxuICAgKiBVc2UgY2FzZXM6IEdlb2dyYXBoaWMgcGxhY2VtZW50OyBMYXRlbmN5IG9wdGltaXphdGlvbjsgRGlzYXN0ZXIgcmVjb3Zlcnk7IE5ldHdvcmsgcHJveGltaXR5XG4gICAqXG4gICAqIEFXUzogRE1TIHJlcGxpY2F0aW9uIGluc3RhbmNlIGF2YWlsYWJpbGl0eSB6b25lIGZvciBnZW9ncmFwaGljIHBsYWNlbWVudCBhbmQgbmV0d29yayBvcHRpbWl6YXRpb25cbiAgICpcbiAgICogVmFsaWRhdGlvbjogTXVzdCBiZSB2YWxpZCBhdmFpbGFiaWxpdHkgem9uZSBuYW1lIGlmIHByb3ZpZGVkOyBjb250cm9scyBpbnN0YW5jZSBwbGFjZW1lbnQgYW5kIG5ldHdvcmsgcHJveGltaXR5XG4gICAqKi9cbiAgcmVhZG9ubHkgYXZhaWxhYmlsaXR5Wm9uZT86IHN0cmluZztcbiAgLyoqXG4gICAqIFEtRU5IQU5DRUQtUFJPUEVSVFlcbiAgICogT3B0aW9uYWwgRE1TIGVuZ2luZSB2ZXJzaW9uIHNwZWNpZmljYXRpb24gZm9yIGZlYXR1cmUgYWNjZXNzIGFuZCBjb21wYXRpYmlsaXR5IGNvbnRyb2wgZW5hYmxpbmcgdmVyc2lvbiBtYW5hZ2VtZW50IGFuZCBjYXBhYmlsaXR5IHNlbGVjdGlvbi4gUHJvdmlkZXMgY29udHJvbCBvdmVyIERNUyBlbmdpbmUgdmVyc2lvbiBmb3IgZmVhdHVyZSBhY2Nlc3MsIGNvbXBhdGliaWxpdHksIGFuZCBwZXJmb3JtYW5jZSBjaGFyYWN0ZXJpc3RpY3MuXG4gICAqXG4gICAqIFVzZSBjYXNlczogVmVyc2lvbiBtYW5hZ2VtZW50OyBGZWF0dXJlIGFjY2VzczsgQ29tcGF0aWJpbGl0eSBjb250cm9sOyBQZXJmb3JtYW5jZSBvcHRpbWl6YXRpb25cbiAgICpcbiAgICogQVdTOiBETVMgcmVwbGljYXRpb24gaW5zdGFuY2UgZW5naW5lIHZlcnNpb24gZm9yIGZlYXR1cmUgYWNjZXNzIGFuZCBjb21wYXRpYmlsaXR5IG1hbmFnZW1lbnRcbiAgICpcbiAgICogVmFsaWRhdGlvbjogTXVzdCBiZSB2YWxpZCBETVMgZW5naW5lIHZlcnNpb24gaWYgcHJvdmlkZWQ7IGRlZmF1bHRzIHRvIGxhdGVzdCBhdmFpbGFibGUgdmVyc2lvblxuICAgKiovXG4gIHJlYWRvbmx5IGVuZ2luZVZlcnNpb24/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IGttc0tleTogSUtleTtcbiAgcmVhZG9ubHkgbXVsdGlBej86IGJvb2xlYW4gfCBJUmVzb2x2YWJsZTtcbiAgLyoqXG4gICAqIFEtRU5IQU5DRUQtUFJPUEVSVFlcbiAgICogT3B0aW9uYWwgbWFpbnRlbmFuY2Ugd2luZG93IHNwZWNpZmljYXRpb24gZm9yIHN5c3RlbSB1cGRhdGVzIGFuZCBtYWludGVuYW5jZSBvcGVyYXRpb25zIGNvbnRyb2xsaW5nIG9wZXJhdGlvbmFsIHRpbWluZyBhbmQgaW1wYWN0LiBEZWZpbmVzIHRoZSB3ZWVrbHkgdGltZSByYW5nZSBmb3Igc3lzdGVtIG1haW50ZW5hbmNlIGFjdGl2aXRpZXMgd2l0aCBtaW5pbWFsIGltcGFjdCBvbiBtaWdyYXRpb24gb3BlcmF0aW9ucy5cbiAgICpcbiAgICogVXNlIGNhc2VzOiBNYWludGVuYW5jZSBzY2hlZHVsaW5nOyBPcGVyYXRpb25hbCB0aW1pbmc7IEltcGFjdCBjb250cm9sOyBTeXN0ZW0gdXBkYXRlc1xuICAgKlxuICAgKiBBV1M6IERNUyByZXBsaWNhdGlvbiBpbnN0YW5jZSBtYWludGVuYW5jZSB3aW5kb3cgZm9yIHN5c3RlbSB1cGRhdGVzIGFuZCBvcGVyYXRpb25hbCBzY2hlZHVsaW5nXG4gICAqXG4gICAqIFZhbGlkYXRpb246IE11c3QgYmUgdmFsaWQgdGltZSByYW5nZSBmb3JtYXQgKGRkZDpoaDI0Om1pLWRkZDpoaDI0Om1pKSBpZiBwcm92aWRlZDsgbWluaW11bSAzMC1taW51dGUgd2luZG93XG4gICAqKi9cbiAgcmVhZG9ubHkgcHJlZmVycmVkTWFpbnRlbmFuY2VXaW5kb3c/OiBzdHJpbmc7XG4gIHJlYWRvbmx5IHJlcGxpY2F0aW9uSW5zdGFuY2VDbGFzczogc3RyaW5nO1xuICByZWFkb25seSByZXBsaWNhdGlvbkluc3RhbmNlSWRlbnRpZmllcj86IHN0cmluZztcbiAgcmVhZG9ubHkgcmVwbGljYXRpb25TdWJuZXRHcm91cElkZW50aWZpZXI6IHN0cmluZztcbiAgcmVhZG9ubHkgcmVzb3VyY2VJZGVudGlmaWVyPzogc3RyaW5nO1xuICByZWFkb25seSB0YWdzPzogQXJyYXk8Q2ZuVGFnPjtcbiAgcmVhZG9ubHkgdnBjU2VjdXJpdHlHcm91cElkcz86IEFycmF5PHN0cmluZz47XG59XG5cbi8qKlxuICogUmV1c2FibGUgQ0RLIGNvbnN0cnVjdCBmb3IgYSBjb21wbGlhbnQgRE1TIFJlcGxpY2F0aW9uIEluc3RhbmNlLlxuICogU3BlY2lmaWNhbGx5LCBlbmZvcmNlcyBLTVMgRW5jcnlwdGlvbiwgYW5kIHByZXZlbnRzIHB1YmxpYyBhY2Nlc3NpYmlsaXR5LlxuICovXG5leHBvcnQgY2xhc3MgTWRhYVJlcGxpY2F0aW9uSW5zdGFuY2UgZXh0ZW5kcyBDZm5SZXBsaWNhdGlvbkluc3RhbmNlIHtcbiAgLyoqIE92ZXJyaWRlcyBzcGVjaWZpYyBjb21wbGlhbmNlLXJlbGF0ZWQgcHJvcGVydGllcy4gKi9cbiAgcHJpdmF0ZSBzdGF0aWMgc2V0UHJvcHMocHJvcHM6IE1kYWFSZXBsaWNhdGlvbkluc3RhbmNlUHJvcHMpOiBDZm5SZXBsaWNhdGlvbkluc3RhbmNlUHJvcHMge1xuICAgIGNvbnN0IHJlcGxpY2F0aW9uSW5zdGFuY2VJZGVudGlmaWVyID0gc2FuaXRpemVSZXBsaWNhdGlvbkluc3RhbmNlSWRlbnRpZmllcihcbiAgICAgIHByb3BzLm5hbWluZy5yZXNvdXJjZU5hbWUocHJvcHMucmVwbGljYXRpb25JbnN0YW5jZUlkZW50aWZpZXIsIDYzKSxcbiAgICApO1xuICAgIGNvbnN0IG92ZXJyaWRlUHJvcHMgPSB7XG4gICAgICByZXBsaWNhdGlvbkluc3RhbmNlSWRlbnRpZmllcixcbiAgICAgIHB1YmxpY2x5QWNjZXNzaWJsZTogZmFsc2UsXG4gICAgICBrbXNLZXlJZDogcHJvcHMua21zS2V5LmtleUlkLFxuICAgIH07XG4gICAgcmV0dXJuIHsgLi4ucHJvcHMsIC4uLm92ZXJyaWRlUHJvcHMgfTtcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKHNjb3BlOiBDb25zdHJ1Y3QsIGlkOiBzdHJpbmcsIHByb3BzOiBNZGFhUmVwbGljYXRpb25JbnN0YW5jZVByb3BzKSB7XG4gICAgc3VwZXIoc2NvcGUsIGlkLCBNZGFhUmVwbGljYXRpb25JbnN0YW5jZS5zZXRQcm9wcyhwcm9wcykpO1xuXG4gICAgbmV3IE1kYWFQYXJhbUFuZE91dHB1dCh0aGlzLCB7XG4gICAgICAuLi57XG4gICAgICAgIHJlc291cmNlVHlwZTogJ3JlcGxpY2F0aW9uSW5zdGFuY2UnLFxuICAgICAgICByZXNvdXJjZUlkOiBwcm9wcy5yZXBsaWNhdGlvbkluc3RhbmNlSWRlbnRpZmllcixcbiAgICAgICAgbmFtZTogJ2lkZW50aWZpZXInLFxuICAgICAgICB2YWx1ZTogdGhpcy5yZWYsXG4gICAgICB9LFxuICAgICAgLi4ucHJvcHMsXG4gICAgfSk7XG5cbiAgICBuZXcgTWRhYVBhcmFtQW5kT3V0cHV0KHRoaXMsIHtcbiAgICAgIC4uLntcbiAgICAgICAgcmVzb3VyY2VUeXBlOiAncmVwbGljYXRpb25JbnN0YW5jZScsXG4gICAgICAgIHJlc291cmNlSWQ6IHByb3BzLnJlcGxpY2F0aW9uSW5zdGFuY2VJZGVudGlmaWVyLFxuICAgICAgICBuYW1lOiAnaXAnLFxuICAgICAgICB2YWx1ZTogdGhpcy5hdHRyUmVwbGljYXRpb25JbnN0YW5jZVByaXZhdGVJcEFkZHJlc3NlcyxcbiAgICAgIH0sXG4gICAgICAuLi5wcm9wcyxcbiAgICB9KTtcbiAgfVxufVxuIl19
package/lib/utils.d.ts ADDED
@@ -0,0 +1,5 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+ export declare function sanitizeReplicationInstanceIdentifier(replicationInstanceIdentifier: string): string;
package/lib/utils.js ADDED
@@ -0,0 +1,13 @@
1
+ /*!
2
+ * Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
3
+ * SPDX-License-Identifier: Apache-2.0
4
+ */
5
+
6
+ "use strict";
7
+
8
+ Object.defineProperty(exports, "__esModule", { value: true });
9
+ exports.sanitizeReplicationInstanceIdentifier = sanitizeReplicationInstanceIdentifier;
10
+ function sanitizeReplicationInstanceIdentifier(replicationInstanceIdentifier) {
11
+ return replicationInstanceIdentifier.replace(/-+/g, '-');
12
+ }
13
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyJ1dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUE7OztHQUdHOztBQUVILHNGQUVDO0FBRkQsU0FBZ0IscUNBQXFDLENBQUMsNkJBQXFDO0lBQ3pGLE9BQU8sNkJBQTZCLENBQUMsT0FBTyxDQUFDLEtBQUssRUFBRSxHQUFHLENBQUMsQ0FBQztBQUMzRCxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyohXG4gKiBDb3B5cmlnaHQgQW1hem9uLmNvbSwgSW5jLiBvciBpdHMgYWZmaWxpYXRlcy4gQWxsIFJpZ2h0cyBSZXNlcnZlZC5cbiAqIFNQRFgtTGljZW5zZS1JZGVudGlmaWVyOiBBcGFjaGUtMi4wXG4gKi9cblxuZXhwb3J0IGZ1bmN0aW9uIHNhbml0aXplUmVwbGljYXRpb25JbnN0YW5jZUlkZW50aWZpZXIocmVwbGljYXRpb25JbnN0YW5jZUlkZW50aWZpZXI6IHN0cmluZyk6IHN0cmluZyB7XG4gIHJldHVybiByZXBsaWNhdGlvbkluc3RhbmNlSWRlbnRpZmllci5yZXBsYWNlKC8tKy9nLCAnLScpO1xufVxuIl19
package/package.json ADDED
@@ -0,0 +1,77 @@
1
+ {
2
+ "name": "@aws-mdaa/dms-constructs",
3
+ "version": "1.2.0",
4
+ "description": "MDAA DMS Constructs",
5
+ "license": "Apache-2.0",
6
+ "author": {
7
+ "name": "Amazon Web Services",
8
+ "url": "https://aws.amazon.com/solutions"
9
+ },
10
+ "repository": {
11
+ "type": "git",
12
+ "url": "https://github.com/aws/modern-data-architecture-accelerator"
13
+ },
14
+ "main": "lib/index.js",
15
+ "types": "lib/index.d.ts",
16
+ "scripts": {
17
+ "build": "export JSII_SILENCE_WARNING_UNTESTED_NODE_VERSION=1 && jsii --project-references",
18
+ "watch": "jsii -w --project-references",
19
+ "package": "jsii-pacmak --npmignore=false",
20
+ "test": "jest --passWithNoTests --coverage",
21
+ "lint": "eslint --max-warnings 0 -c ../../../../.eslintrc.json '**/*.{ts,tsx}' --ignore-pattern 'dist/*' --ignore-pattern 'node_modules/*' --ignore-pattern \"*.d.ts\" ",
22
+ "test-coverage": "jest --passWithNoTests --coverage"
23
+ },
24
+ "devDependencies": {
25
+ "@aws-mdaa/construct": "1.2.0",
26
+ "@aws-mdaa/naming": "1.2.0",
27
+ "@aws-mdaa/testing": "1.2.0",
28
+ "@types/jest": "29.5.0",
29
+ "@types/node": "17.0.23",
30
+ "@types/prettier": "2.6.0",
31
+ "aws-cdk-lib": "2.201.0",
32
+ "cdk-nag": "2.37.1",
33
+ "constructs": "10.0.96",
34
+ "jest": "29.5.0",
35
+ "ts-jest": "29.1.0",
36
+ "ts-node": "10.9.1",
37
+ "typescript": "4.6.3",
38
+ "typescript-json-schema": "0.63.0"
39
+ },
40
+ "overrides": {
41
+ "aws-cdk-lib": "2.201.0",
42
+ "@types/babel__traverse": "7.18.2"
43
+ },
44
+ "dependencies": {
45
+ "@aws-mdaa/construct": "1.2.0",
46
+ "@aws-mdaa/naming": "1.2.0",
47
+ "aws-cdk-lib": "2.201.0",
48
+ "cdk-nag": "2.37.1",
49
+ "constructs": "10.0.96"
50
+ },
51
+ "peerDependencies": {
52
+ "@aws-mdaa/construct": "1.2.0",
53
+ "@aws-mdaa/naming": "1.2.0",
54
+ "aws-cdk-lib": "2.201.0",
55
+ "cdk-nag": "2.37.1",
56
+ "constructs": "10.0.96"
57
+ },
58
+ "gitHead": "8b49a2b371014baec046605ffdbfe38951099c31",
59
+ "stability": "experimental",
60
+ "jsii": {
61
+ "outdir": "jsii-dist",
62
+ "versionFormat": "full",
63
+ "targets": {
64
+ "java_disabled": {
65
+ "package": "software.amazon.awsmdaa.construct.dms",
66
+ "maven": {
67
+ "groupId": "software.amazon.awsmdaa.construct",
68
+ "artifactId": "dms"
69
+ }
70
+ },
71
+ "python_disabled": {
72
+ "distName": "aws-mdaa.dms-constructs",
73
+ "module": "aws_mdaa.dms_constructs"
74
+ }
75
+ }
76
+ }
77
+ }