Localstack Installation:
download localstack: https://app.localstack.cloud/download?
# configure, optional
aws configure set aws_access_key_id "dummy" --profile test-profile
aws configure set aws_secret_access_key "dummy" --profile test-profile
aws configure set region "eu-central-1" --profile test-profile
aws configure set output "table" --profile test-profile
#AWS SNS/SQS
Create Topic
aws --endpoint-url=http://localhost:4566 sns create-topic --name topic_name --region us-west-1 --profile default --output table | cat
aws --endpoint-url=http://localhost:4566 sns list-topics
Create Queue
aws --endpoint-url=http://localhost:4566 sqs create-queue --queue-name queue_name --profile default --region us-west-1 --output table | cat
aws --endpoint-url http://localhost:4566 sqs list-queues
Bind Topic with queue
Get Queue ARN
aws sqs get-queue-attributes --queue-url http://localstack:4566/000000000000/queue_name --attribute-names QueueArn --endpoint-url=http://localhost:4566
aws --endpoint-url=http://localhost:4566 sns subscribe --topic-arn arn:aws:sns:us-west-1:000000000000:queue_name --protocol sqs --notification-endpoint arn:aws:sqs:us-west-1:000000000000:queue_name
aws --endpoint-url=http://localhost:4566 sns list-subscriptions
Publish message:
aws --endpoint-url=http://localhost:4566 sns publish --topic-arn arn:aws:sns:us-west-1:000000000000:topic_name --message 'Hello testing!'
Receive message:
aws --endpoint-url=http://localhost:4566 sqs receive-message --queue-url http://sqs.us-west-1.localhost.localstack.cloud:4566/000000000000/queue_name
###S3
Create S3 Bucket
awslocal s3api create-bucket --bucket <bucket-name> --region us-east-1
List S3 All Buckets
awslocal s3api list-buckets
#Upload Item to S3 Bucket
awslocal s3api put-object \
--bucket <bucket-name> \
--key <item> \
--body image.jpg
# List items in a S3 Bucket
awslocal s3api list-objects \
--bucket <bucket-name>
###cloudformations
List all cloudformations in all regions
#!/usr/bin/env bash
( awslocal ec2 describe-regions | jq -r '.Regions[].RegionName' ) | while IFS= read -r line
do
awslocal cloudformation describe-stacks --region $line
done
###List all the versions of a Lambda
awslocal lambda list-versions-by-function --function-name <lambda-name> --query 'Versions[*][Version, FunctionArn]' --output json
Execute a Lambda w/o api gateway
base64 -i input.json -o input.txt
awslocal lambda invoke --function-name my-function --payload file://input.txt outputfile.txt
No comments:
Post a Comment