U @a@sFddlmZmZddlZddlZddlZddlZGdddejZ dS))coreaws_dmsNcs(eZdZejeddfdd ZZS) DmsCdkStackN)scope construct_idreturnc- stj||f|tj|} i} tjt} d} t tj | | dd,} t j | ddd}t |dd|D} W5QRX| d d }| d d }| d d }td }d} t tj | | dd }t |}d}g}d}|D]}||jqtj|d|d|d}|D]}d|d}d|d}d|d|d}d|d|d}d|d|d}d|d|d}d|d|d} |}!|j|d}"|"d}#t|#}#||krtj||||d|j|!gdddd }$|}tj|||d!|#d"|#d#t|#d$|#d|#d%|#d&d'd( }%tj|||d)d*tjj|j| d+|j d,d-|d.d/}&d0|d|d}'t tj | |'!dd}(t"|(})W5QRXtj#||||$j||%j|&jt$|)d1}*q W5QRXtj%|d2|j&dd3gd4d5}+tj%|d6|j&dd3gd7d5},dS)8Nz"../resources/config/parameters.txtr)mode,T) delimiterZskipinitialspacecSsi|]^}}||qSr ).0keyrowr r /Users/jalaguru/Documents/Proserv/artifacts/aws-dms-deployment-using-aws-cdk/aws-dms-deployment-using-aws-cdk/dms_cdk/dms_cdk_stack.py 0sz(DmsCdkStack.__init__..Z instancesizerZ maxfilesizetask_migration_typeZsecretsmanagerz*../resources/config/dms_config_details.txtzaws-cdk-cdk-subnetgroupZDMSReplicationSubnetGrpzDMS replication subnet group)#replication_subnet_group_identifierZ$replication_subnet_group_descriptionZ subnet_idsz {}-instanceZserverz {}-{}-allZdbnamez{}-{}-sqlserver-source-endpointz{}-{}-s3-target-endpointzdms_{}_{}_sql_serverz data/{}/{}/)SecretIdZ SecretStringFz3.4.3)Zreplication_instance_identifierZreplication_instance_classZpublicly_accessiblerZvpc_security_group_idsZauto_minor_version_upgradeZmulti_azZengine_versionsourceZenginehostportusernamepasswordZrequire) endpoint_identifier endpoint_type engine_nameZ server_namerZ database_namerrZssl_modetargetZs3ZGZIP) bucket_nameZ bucket_folderZcompression_typeZservice_access_role_arnzencryptionMode=SSE_S3;timestampColumnName=TX_TIMESTAMP;dataFormat=parquet;parquetVersion=PARQUET_2_0;parquetTimestampInMillisecond=true;maxFileSize=;)rrrZ s3_settingsZextra_connection_attributesz=../resources/config/dms_json_mappings/dms_{}_{}_mappings.json)Zreplication_task_identifierZreplication_instance_arnZmigration_typeZsource_endpoint_arnZtarget_endpoint_arnZtable_mappingsfailure_event_instanceZfailurezreplication-instance)Z sns_topic_arnenabledZevent_categoriesZ source_typefailure_event_taskzreplication-task)'super__init__rStackofospathdirname__file__openjoincsvreadernextboto3ZclientZ DictReaderappend subnet_iddmsZCfnReplicationSubnetGroupformatZget_secret_valuejsonloadsZCfnReplicationInstancerefZ CfnEndpointgetintZS3SettingsPropertyrrole_arnlowerloadZCfnReplicationTaskdumpsZCfnEventSubscriptionZ topic_arn)-selfrrdms_target_s3_access_role stage_bucket sns_topicvpc_default_security_groupZvpc_subnet_groupkwargsstackparamsZ current_dirZ param_pathinfiler/Zdms_instance_classZtarget_max_file_sizerZ sm_clientZcsvfileZ prevInstNameZvpc_subnet_group_idsriZsubnetrZ replInstNameZreplInstIdentifierZ replTaskNameZsourceEndPointZtargetEndPointrZ s3_prefixZvpc_security_group_idZget_secret_value_responsesecretinstancerrZmappings_locationZjsonfileZ mappings_jsonZtaskr!r# __class__r rr%s                zDmsCdkStack.__init__)__name__ __module__ __qualname__r Constructstrr% __classcell__r r rKrrsr) aws_cdkrrr4r(r6r1r.r&rr r r rs