Automated Resize & GreyScale Images in S3 with Lambda
export AWS_ACCESS_KEY_ID=my access key id
export AWS_SECRET_ACCESS_KEY=my secret key
export AWS_DEFAULT_REGION=region
# Change to your own unique S3 bucket name:
source_bucket=sas-image-upload-bucket
# Do not change this. Walkthrough code assumes this name
target_bucket=${source_bucket}resized
function=CreateThumbnailImage
lambda_execution_role_name=lambda-$function-execution
lambda_execution_access_policy_name=lambda-$function-execution-access
lambda_invocation_role_name=lambda-$function-invocation
lambda_invocation_access_policy_name=lambda-$function-invocation-access
log_group_name=/aws/lambda/$function
# Create S3 buckets
aws s3 mb s3://$source_bucket
aws s3 mb s3://$target_bucket
# Upload sample photo
wget -q -OHappyFace.jpg \
https://c3.staticflickr.com/7/6209/6094281702_d4ac7290d3_b.jpg
aws s3 cp HappyFace.jpg s3://$source_bucket/
# JavaScript code as listed in walkthrough
#wget -q -O $function.js \
# http://run.alestic.com/lambda/aws-examples/CreateThumbnail.js
zip -r $function.zip $function.js node_modules
# Create IAM Role
lambda_execution_role_arn=$(aws iam create-role \
--role-name "$lambda_execution_role_name" \
--assume-role-policy-document '{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}' \
--output text \
--query 'Role.Arn'
)
echo lambda_execution_role_arn=$lambda_execution_role_arn
export AWS_SECRET_ACCESS_KEY=my secret key
export AWS_DEFAULT_REGION=region
# Change to your own unique S3 bucket name:
source_bucket=sas-image-upload-bucket
# Do not change this. Walkthrough code assumes this name
target_bucket=${source_bucket}resized
function=CreateThumbnailImage
lambda_execution_role_name=lambda-$function-execution
lambda_execution_access_policy_name=lambda-$function-execution-access
lambda_invocation_role_name=lambda-$function-invocation
lambda_invocation_access_policy_name=lambda-$function-invocation-access
log_group_name=/aws/lambda/$function
# Create S3 buckets
aws s3 mb s3://$source_bucket
aws s3 mb s3://$target_bucket
# Upload sample photo
wget -q -OHappyFace.jpg \
https://c3.staticflickr.com/7/6209/6094281702_d4ac7290d3_b.jpg
aws s3 cp HappyFace.jpg s3://$source_bucket/
# JavaScript code as listed in walkthrough
#wget -q -O $function.js \
# http://run.alestic.com/lambda/aws-examples/CreateThumbnail.js
zip -r $function.zip $function.js node_modules
# Create IAM Role
lambda_execution_role_arn=$(aws iam create-role \
--role-name "$lambda_execution_role_name" \
--assume-role-policy-document '{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"Service": "lambda.amazonaws.com"
},
"Action": "sts:AssumeRole"
}
]
}' \
--output text \
--query 'Role.Arn'
)
echo lambda_execution_role_arn=$lambda_execution_role_arn
aws iam put-role-policy \
--role-name "$lambda_execution_role_name" \
--policy-name "$lambda_execution_access_policy_name" \
--policy-document '{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"logs:*"
],
"Resource": "arn:aws:logs:*:*:*"
},
{
"Effect": "Allow",
"Action": [
"s3:GetObject"
],
"Resource": "arn:aws:s3:::'$source_bucket'/*"
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject"
],
"Resource": "arn:aws:s3:::'$target_bucket'/*"
}
]
}'
sleep 10
aws lambda create-function --function-name "$function" --zip-file "fileb://./$function.zip" --role "$lambda_execution_role_arn" --handler "$function.handler" --timeout 30 --runtime nodejs8.10
cat > $function-data.json <<EOM
{
"Records":[
{
"eventVersion":"2.0",
"eventSource":"aws:s3",
"awsRegion":"us-east-1",
"eventTime":"1970-01-01T00:00:00.000Z",
"eventName":"ObjectCreated:Put",
"userIdentity":{
"principalId":"AIDAJDPLRKLG7UEXAMPLE"
},
"requestParameters":{
"sourceIPAddress":"127.0.0.1"
},
"responseElements":{
"x-amz-request-id":"C3D13FE58DE4C810",
"x-amz-id-2":"FMyUVURIY8/IgAtTv8xRjskZQpcIZ9KG4V5Wp6S7S/JRWeUWerMUE5JgHvANOjpD"
},
"s3":{
"s3SchemaVersion":"1.0",
"configurationId":"testConfigRule",
"bucket":{
"name":"$source_bucket",
"ownerIdentity":{
"principalId":"A3NL1KOZZKExample"
},
"arn":"arn:aws:s3:::$source_bucket"
},
"object":{
"key":"HappyFace.jpg",
"size":1024,
"eTag":"d41d8cd98f00b204e9800998ecf8427e",
"versionId":"096fKKXTRTtl3on89fVO.nfljtsv6qko"
}
}
}
]
}
EOM
ReplyDeletehappy valentine day photos
Romantic Happy Valentines Day Images For Love
Funny Single Valentines Day Status For Whatsapp
Love Valentines Day Quotes For Wife Image Wallpaper
Best Valentines Day Quotes For Husband Images Wishes
Happy Mother day 2020
ReplyDeletemother day pictures
mothers day messages
Mothers day Images 2020
mother’s day art and craft ideas
coloring page for mama
Happy Mothers Day Activity Ideas 2020
happy mothers day cards
Funny Mothers Day Images
funny mother day quotes