707852bb3a7b5487ea36fdd54702cb21d4f4d6e9
aws-localstack
OpenTofu project for provisioning simulated AWS resources on LocalStack for the fictional Quantum application.
LocalStack endpoint:
https://localstack.paulononato.com.br
Resources
- S3 bucket for Quantum application artifacts.
- SQS main queue and DLQ.
- Python Lambda function for event processing.
- IAM role and fictional policies for the Lambda function.
- CloudWatch Log Group.
- Secrets Manager secret with simulated credentials.
- Event source mapping SQS -> Lambda.
Prerequisites
- OpenTofu installed.
- AWS CLI, optional for testing.
- Access to the LocalStack endpoint.
Credentials used by LocalStack:
export AWS_ACCESS_KEY_ID=test
export AWS_SECRET_ACCESS_KEY=test
export AWS_DEFAULT_REGION=us-east-1
On PowerShell:
$env:AWS_ACCESS_KEY_ID="test"
$env:AWS_SECRET_ACCESS_KEY="test"
$env:AWS_DEFAULT_REGION="us-east-1"
Usage
Initialize:
tofu init
Plan:
tofu plan
Apply:
tofu apply
Destroy:
tofu destroy
Quick Tests
List buckets:
aws --endpoint-url https://localstack.paulononato.com.br s3 ls
Send a message to the Quantum queue:
aws --endpoint-url https://localstack.paulononato.com.br sqs send-message \
--queue-url "$(tofu output -raw quantum_queue_url)" \
--message-body '{"event":"quantum.order.created","orderId":"QTM-1001"}'
Read the secret:
aws --endpoint-url https://localstack.paulononato.com.br secretsmanager get-secret-value \
--secret-id "$(tofu output -raw quantum_secret_name)"
RDS Note
RDS is not included in the LocalStack Community edition provisioned on the server. This project avoids RDS and uses only the services available in the current stack.
Description
Languages
HCL
41.2%
Python
35.2%
HTML
21.9%
Dockerfile
1.7%