a Ccv@sPddlmZmZmZddlZddlmZddlZddl m Z GdddeZ dS))Stack NestedStackaws_glue_alphaN) Construct)EtlStackcs&eZdZeeddfdd ZZS)IngestionStackN)scope construct_idreturnc stj||fi||jd}|dur>tdtdd}|j|}tjj|d||dd}tjj|d||d d |tjj d gd gd d}tj j |d|tj d|dd} tj j|d||d} | | tjj|d||ddtjjj| jd| jtjjj|d|dddddd} tj j |d |tj d!|d"d} | tj j| jgd#d$gd%|tj| dS)&Nenvironment_namezSetting environment as DevzFetching Dev Propertiesdevzbus-zbus-name)event_bus_namez bus-rule-z rule-namezMatch a custom-event typeZ transactionsz card-event)source detail_type) rule_name description event_bus event_patternZfirehose_s3_role_zfirehose.amazonaws.comzfirehose-s3-rolename) assumed_by role_nameZ evtbus_s3_) bucket_nameZfirehose_stream_z firehose-nameZ DirectPutGZIPzbuffering-interval-in-secondszbuffering-size-in-mb)interval_in_seconds size_in_m_bszJraw-data/year=!{timestamp:YYYY}/month=!{timestamp:MM}/day=!{timestamp:dd}/zerror/!{firehose:random-string}/!{firehose:error-output-type}/year=!{timestamp:YYYY}/month=!{timestamp:MM}/day=!{timestamp:dd}/) bucket_arncompression_formatrole_arnbuffering_hintsprefixerror_output_prefix)delivery_stream_namedelivery_stream_types3_destination_configurationZevt_bus_to_firehose_zevents.amazonaws.comzeventbus-firehose-rolenamezfirehose:PutRecordzfirehose:PutRecordBatch) resourcesactions)super__init__nodetry_get_contextprint_cdk aws_eventsEventBusRule EventPatternaws_iamRoleServicePrincipalaws_s3Bucketgrant_read_writeaws_kinesisfirehoseCfnDeliveryStream"S3DestinationConfigurationPropertyrrBufferingHintsProperty add_to_policyPolicyStatementattr_arn add_targetaws_events_targetsKinesisFirehoseStream) selfr r rkwargsenvZconfig_detailsZevt_busZ custom_ruleZfirehose_to_s3_role s3_bucketZfirehose_streamZevt_firehose_role __class__k/Users/fraseque/Fraser/Playground/serverless-datalake/serverless_datalake/infrastructure/ingestion_stack.pyr's^      zIngestionStack.__init__)__name__ __module__ __qualname__rstrr' __classcell__rFrFrDrGrsr) aws_cdkrrrZ _glue_alphar+ constructsrosZ etl_stackrrrFrFrFrGs