| name | test-aws |
| description | Run AWS integration tests with LocalStack for local AWS service simulation |
Run AWS integration tests using LocalStack:
-
Check if LocalStack is running:
curl -s http://localhost:4566/_localstack/health 2>/dev/null
-
If not running, start LocalStack:
cd /Users/bri/dev/Trebuchet && docker-compose -f docker-compose.localstack.yml up -d
-
Wait for LocalStack to be healthy (up to 30 seconds):
timeout 30 bash -c 'until curl -s http://localhost:4566/_localstack/health | grep -q "\"running\""; do sleep 1; done'
-
Run the AWS integration tests:
cd /Users/bri/dev/Trebuchet && swift test --filter TrebuchetAWSTests
-
Report test results
-
Ask the user if they want to stop LocalStack:
- If yes:
docker-compose -f docker-compose.localstack.yml down -v
- If no: Leave it running for further testing
LocalStack simulates these AWS services:
- Lambda (function deployment/invocation)
- DynamoDB (actor state persistence)
- DynamoDB Streams (real-time state broadcasting)
- Cloud Map (service discovery)
- IAM (role management)
- API Gateway WebSocket (connection management)
For troubleshooting, refer to Tests/TrebuchetAWSTests/README.md