- लोकल development और CI/CD testing में असली AWS के बिना भी जल्दी compatible environment तैयार किया जा सकता है
- single binary के रूप में हल्के तरीके से test environment सेटअप किया जा सकता है, और Docker-आधारित execution भी संभव है
- authentication के बिना चलता है, इसलिए automation pipeline में AWS credentials तैयार करने का बोझ कम हो सकता है
- 76 AWS services का व्यापक support देता है, और S3, SQS, DynamoDB, Lambda, IAM, CloudWatch, ECS, RDS जैसे मुख्य क्षेत्रों को साथ में संभाल सकता है
- डिफ़ॉल्ट रूप से
localhost:4566 पर चलने वाला local AWS-compatible endpoint
KUMO_DATA_DIR सेट करने पर service-वार JSON files के रूप में optional data persistence संभव है, और unset रहने पर clean in-memory mode में चलता है
- सभी requests को structured log fields के साथ रिकॉर्ड करता है
- INFO: HTTP method, path, status code, latency, request ID, API target जानकारी आदि
- DEBUG: पूरा request body भी रिकॉर्ड करता है, इसलिए उन debugging कार्यों में उपयोगी है जहाँ request payload खुद देखना ज़रूरी हो
/kumo/ के अंतर्गत additional test endpoints उपलब्ध कराता है
- ये AWS official API का हिस्सा नहीं हैं, लेकिन testing के दौरान application behavior verify करने में उपयोगी हैं
-
SES v2 भेजे गए ईमेल देखना
GET /kumo/ses/v2/sent-emails के जरिए SES v2 SendEmail API से भेजे गए ईमेल की सूची देखी जा सकती है
- response में MessageId, sender address, recipients, subject, body, sent time आदि शामिल होते हैं
-
Pinpoint SMS Voice v2 भेजे गए संदेश देखना
GET /kumo/pinpointsmsvoicev2/sent-messages के जरिए SendTextMessage API से भेजे गए SMS की सूची देखी जा सकती है
- response में MessageId, recipient phone number, sender identifier, message body, sent time आदि शामिल होते हैं
- ईमेल और SMS sending features का test करते समय external services पर निर्भर हुए बिना result verification करने में खास तौर पर उपयोगी
- MIT License
समर्थित सेवाएँ
- कुल 76 AWS services का समर्थन
-
Storage
- S3, S3 Control, S3 Tables, DynamoDB, ElastiCache, MemoryDB, Glacier, EBS का support
-
Compute
- Lambda, Batch, EC2, Elastic Beanstalk का support
-
Containers
-
Database
- RDS, Neptune, Redshift का support
-
Messaging और Integration
- SQS, SNS, EventBridge, Kinesis, Firehose, MQ, Pipes, MSK का support
-
Security और ID
- IAM, KMS, Secrets Manager, ACM, Cognito, Security Lake, STS, Macie का support
-
Monitoring और Logging
- CloudWatch, CloudWatch Logs, X-Ray, CloudTrail का support
-
Networking और Content Delivery
- CloudFront, Global Accelerator, API Gateway, Route 53, Route 53 Resolver, ELBv2, App Mesh, Location का support
-
Application Integration
- Step Functions, AppSync, SES v2, Pinpoint SMS Voice v2, Scheduler, Amplify का support
-
Management और Configuration
- SSM, Config, CloudFormation, Organizations, Service Quotas, CodeConnections, Backup का support
-
Analytics और ML
- Athena, Glue, Comprehend, Rekognition, SageMaker, Forecast, Data Exchange, Entity Resolution का support
-
Developer Tools
- CodeGuru Profiler, CodeGuru Reviewer का support
-
अन्य सेवाएँ
- Cost Explorer, DLM, Directory Service, EMR Serverless, FinSpace, GameLift, Resilience Hub का support
उपयोग उदाहरण
-
S3
- S3 client में
BaseEndpoint को http://localhost:4566 पर सेट करके और UsePathStyle सक्रिय करके local emulator से कनेक्ट किया जाता है
- bucket बनाने से object upload तक के flow के जरिए object storage testing को असली AWS के बिना दोहराया जा सकता है
-
SQS
- SQS client भी वही local endpoint उपयोग करता है, और queue बनाने के बाद message send और receive करने वाला flow प्रदान करता है
- asynchronous messaging logic को local integration testing में verify करने के लिए उपयुक्त
-
DynamoDB
- table creation, key schema definition, item storage की प्रक्रिया के जरिए NoSQL workflow को दोहराया जा सकता है
- असली cloud resources के बिना भी application के data access logic की जाँच करना आसान है
-
Secrets Manager
- secret value create और retrieve करने के उदाहरण शामिल हैं, इसलिए secret store integration का test भी संभव है
- JSON रूप में sensitive information को लोकल पर संभालने वाले applications के validation में उपयोगी है
अभी कोई टिप्पणी नहीं है.