· 6 years ago · Jun 26, 2019, 08:02 PM
1import json
2import boto3
3from boto3.session import Session
4from botocore.exceptions import ClientError
5from email.mime.text import MIMEText
6from email.mime.application import MIMEApplication
7from email.mime.multipart import MIMEMultipart
8import datetime
9
10def lambda_handler(event, context):
11 aws_region = 'us-east-1'
12 access_key = 'AKIAJ3GDNC5G2TN5SRZQ'
13 secret_key = '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'
14 x = str((datetime.datetime.now()-datetime.timedelta(hours=5)).strftime("%d-%m-%Y-%H-%M-%S-PE_CC_VOICE.txt"))
15 y = str((datetime.datetime.now()-datetime.timedelta(hours=5)).strftime("%d-%m-%Y-%H-%M-%S-PE_CC_DATA.txt"))
16# to_emails = ['jysla@cimacom.net','juancarlos@yaroslab.com']
17 to_emails = ['jordy@yaroslab.com']
18 ses = boto3.client('ses',region_name=aws_region)
19 msg = MIMEMultipart()
20 msg['Subject'] = 'Reportes de Backup ERP'
21 msg['From'] = 'jordy@yaroslab.com'
22 msg['To'] = to_emails[0]
23 # what a recipient sees if they don't use an email reader
24 msg.preamble = 'Multipart message.\n'
25
26 lam=boto3.client("lambda")
27 session = Session(aws_access_key_id=access_key,aws_secret_access_key=secret_key)
28 s3recurso = session.resource('s3')
29 your_bucket = s3recurso.Bucket('backupsyaros')
30 folder="cimacom/pe_cc_voice/"
31 folder2="cimacom/pe_cc_data/"
32 payload = []
33 payload2 = []
34 for s3_file in your_bucket.objects.filter(Prefix=folder):
35 mivar=str(s3_file.key)+" || "+str(s3_file.size)+" || "+str(s3_file.last_modified)
36 payload.append(mivar)
37 for s3_file in your_bucket.objects.filter(Prefix=folder2):
38 mivar=str(s3_file.key)+" || "+str(s3_file.size)+" || "+str(s3_file.last_modified)
39 payload2.append(mivar)
40 var1 = '\n'.join(payload)
41 var2 = '\n'.join(payload2)
42 # the attachment
43 part_text = MIMEText('BACKUPS FROM : PE_CC_VOICE - PE_CC_DATA \nThis email was sent by Consultoria Yaroslab S.A.C ')
44 msg.attach(part_text)
45 part_str1 = MIMEApplication(var1)
46 part_str1.add_header('Content-Disposition', 'attachment', filename=x)
47 msg.attach(part_str1)
48 part_str2 = MIMEApplication(var2)
49 part_str2.add_header('Content-Disposition', 'attachment', filename=y)
50 msg.attach(part_str2)
51
52 result = ses.send_raw_email(
53 Source=msg['From'],
54 Destinations=to_emails,
55 RawMessage={'Data': msg.as_string()}
56 )
57milambda=lambda_handler({"key3": "value3"},{"key2": "value2"})