Commandes utiles
Set default session
boto3.setup_default_session(profile_name='staging')
Know AWS Account
default_session.client("sts").get_caller_identity()["Account"]
Connaître Région
boto3.session.Session().region_name
Lambda
Permettre d’avoir un trigger S3
boto3.client('lambda')
.add_permission(
FunctionName="arn:aws:lambda:eu-west-1:XXX:function:YYY",
StatementId='1',
Action='lambda:InvokeFunction',
Principal='s3.amazonaws.com',
SourceArn="arn:aws:s3:::BUCKET_NAME",
)
Puis
boto3.client('s3')
.put_bucket_notification_configuration(
Bucket=name,
NotificationConfiguration={
'LambdaFunctionConfigurations': [
{
'LambdaFunctionArn': "arn:aws:lambda:eu-west-1:XXXX:function:YYYY",
'Events': [
's3:ObjectCreated:*',
],
'Filter': {
'Key': {
'FilterRules': [
{
'Name': 'prefix',
'Value': 'myPrefix'
},
]
}
}
},
]
}
)
Voir permissions
aws lambda get-policy