GitHub - faiscadev/fakecloud: Free, open-source AWS emulator. LocalStack alternative: 33 services, 2,422 operations, 100% conformance. No account, no auth token, no paid tier.

6 min read Original article ↗
S3 107 Versioning, lifecycle, notifications, multipart, replication, website, real SSE-KMS encrypt/decrypt SQS 23 FIFO, DLQs, long polling, batch, real KMS encrypt/decrypt on KmsMasterKeyId queues SNS 42 Fan-out to SQS/Lambda/HTTP, filter policies, KMS audit-trail on KmsMasterKeyId topics EventBridge 57 Pattern matching, schedules, archives, replay, API destinations EventBridge Scheduler 12 at/rate/cron, SQS targets, DLQ routing, one-shot self-delete Lambda 85 Real Docker, 23 runtimes, ESM with FilterCriteria + partial-batch failure DynamoDB 57 Transactions, PartiQL, backups, global tables, streams, KMS audit-trail on SSE-KMS tables IAM 176 Users, roles, policies, groups, OIDC/SAML, PassRole trust enforcement STS 11 AssumeRole, session tokens, federation SSM 146 Parameters, documents, commands, maintenance, patch baselines, SecureString -> real KMS encrypt/decrypt Secrets Manager 23 Versioning, rotation via Lambda, replication, real KMS encrypt/decrypt CloudWatch Logs 113 Groups, streams, subscription filters, query language KMS 53 Encryption, aliases, grants, real ECDH, key import, cross-service hook CloudFormation 90 Template parsing, resource provisioning, custom resources SES (v2 + v1 inbound) 110 Sending, templates, DKIM, real receipt rule execution Cognito User Pools 122 Pools, clients, MFA, identity providers, full auth flows; verification email -> SES, SMS -> SNS, all 12 Lambda triggers Kinesis 39 Streams, records, shard iterators, retention RDS 163 Real Postgres, MySQL, MariaDB, Oracle, SQL Server, Db2 via Docker; lifecycle ops emit aws.rds EventBridge events; PostgreSQL aws_lambda + aws_s3 extensions and Aurora-compatible MySQL/MariaDB mysql.lambda_async/mysql.lambda_sync invoke fakecloud Lambda + import/export S3 objects from SQL ElastiCache 75 Real Redis, Valkey, Memcached via Docker Step Functions 37 Full ASL interpreter, Lambda/SQS/SNS/EventBridge/DynamoDB tasks API Gateway v1 124 REST APIs, resources, methods, integrations (MOCK/HTTP/HTTP_PROXY/AWS_PROXY Lambda), deployments, stages, API keys, usage plans, authorizers, models, request validators, VPC links, domain names, base path mappings, client certs, gateway responses, docs, tags API Gateway v2 103 HTTP APIs, routes, integrations, stages, deployments, authorizers, domains, models, VPC links, routing rules, developer portals, CORS, tags Bedrock 101 Foundation models, guardrails, custom models, invocation/eval jobs Bedrock Runtime 10 InvokeModel, Converse, streaming, configurable responses, fault inject ECR 58 Full API — OCI v2 push/pull, lifecycle, scanning, registry, pull-through ECS 60 Full API — clusters, task definitions, real task execution, services + rolling deployments, container instances, capacity providers, task sets, ECS Exec Elastic Load Balancing v2 51 ALB/NLB/GWLB CRUD: load balancers, target groups + targets + real health probes, listeners + rules + certificates, LB/listener/target-group attributes, capacity reservations, mTLS trust stores + revocations, SSL policies, resource policies, tags. In-process HTTP data plane for ALBs — per-LB TCP bind, rule matching, forward / fixed-response / redirect, sticky sessions, X-Forwarded-* headers CloudFront 147 Distributions + invalidations + tagging + by-X listings + web ACL/alias association. OAC + Cache/OriginRequest/ResponseHeaders/ContinuousDeployment policies. CloudFront Functions, Public Keys, Key Groups, Key Value Stores, OAIs (legacy), Monitoring Subscriptions. Streaming Distributions (legacy RTMP). Field-Level Encryption configs + profiles + Realtime Log Configs. VPC Origins, Anycast IP Lists, Trust Stores, Resource Policies. Connection Groups + Domain Association/DNS Verification + Managed Certificate Details + Promote-Staging Distribution — full CRUD with ETag/If-Match concurrency. REST-XML protocol, full DistributionConfig round-trip incl. origins, cache behaviors, custom error responses, viewer certificates, geo restrictions Route 53 71 Full control plane. Hosted zones + RRsets + health checks + traffic policies + DNSSEC + KSK + query logging + CIDR collections + VPC associations + reusable delegation sets + geo locations + account limits + tags — CRUD, default SOA/NS seeding, INSYNC change tracking, hosted zone limits, list-by-name, TestDNSAnswer. Health checks: full lifecycle, HealthCheckVersion optimistic concurrency, ResetElements, HealthCheckInUse on delete, checker IP ranges. Traffic policies + instances: versioned policies, TrafficPolicyAlreadyExists/InUse, TrafficPolicyInstanceAlreadyExists, list-by-zone/by-policy. DNSSEC + KSK: enable/disable signing, CreateKeySigningKey with KMS-ARN, activate/deactivate, InvalidKeySigningKeyStatus blocks delete-while-active. Query logging: one config per zone, public-zone-only, CloudWatch Logs ARN. CIDR collections: PUT/DELETE_IF_EXISTS atomic changes, CollectionVersion optimistic concurrency, CidrCollectionInUseException on delete-with-locations. VPC associations: associate/disassociate (private-zone only, last-VPC removal blocked), CreateVPCAssociationAuthorization + revoke + list, ListHostedZonesByVPC. Reusable delegation sets: 4-NS synthesis, in-use protection on delete, MAX_ZONES_BY_REUSABLE_DELEGATION_SET limit. Geo locations + account limits + tags: ListGeoLocations/GetGeoLocation over a representative dataset (continents + sample countries + US subdivisions), GetAccountLimit for all 5 owner-scoped types, full tag CRUD on health checks + hosted zones via ChangeTagsForResource/ListTagsForResource/ListTagsForResources. REST-XML under /2013-04-01/ WAF v2 55 Full control plane. WebACLs / RuleGroups / IPSets / RegexPatternSets — Create/Get/List/Update/Delete with LockToken optimistic concurrency (WAFOptimisticLockException on stale tokens, fresh token returned on every mutation). REGIONAL + CLOUDFRONT scope segmentation. ARN-keyed WebACL <-> resource associations (AssociateWebACL/DisassociateWebACL/GetWebACLForResource/ListResourcesForWebACL). WAFAssociatedItemException on delete-while-associated for WebACLs and delete-while-referenced for RuleGroups. CheckCapacity computes WCU as recursive count of statement leaves through AndStatement/OrStatement/NotStatement composition. API keys via CreateAPIKey/DeleteAPIKey/GetDecryptedAPIKey/ListAPIKeys — round-trip the configured TokenDomains. Logging configurations (Put/Get/Delete/List) keyed by WebACL ARN. Permission policies (Put/Get/Delete) on RuleGroups for cross-account share. Tags with WAFNonexistentItemException on unknown ARNs. Managed rule groups + sets: read-only AWS catalog (Common, KnownBadInputs, SQLi), DescribeAllManagedProducts, DescribeManagedProductsByVendor, DescribeManagedRuleGroup, ListAvailableManagedRuleGroups/ListAvailableManagedRuleGroupVersions, GetManagedRuleSet, vendor-side PutManagedRuleSetVersions/UpdateManagedRuleSetVersionExpiryDate. Mobile SDK release lookups + presigned download URL synthesis. GetSampledRequests, GetTopPathStatisticsByTraffic, GetRateBasedStatementManagedKeys return empty observability stubs. JSON 1.1 protocol Application Auto Scaling 14 Full control plane. Scalable targets (Register/Deregister/Describe) for ECS, Lambda, DynamoDB, RDS, ElastiCache, SageMaker, EMR, AppStream, Cassandra, Kafka, Neptune, EC2 Spot Fleet, Comprehend. Step + target-tracking + predictive scaling policies (Put/Describe/Delete). Scheduled actions with cron / one-shot start/end times + Timezone. DescribeScalingActivities (IncludeNotScaledActivities), deterministic GetPredictiveScalingForecast with hourly Load + Capacity buckets. RoleARN defaults to the per-namespace service-linked role ARN. Deregister cascades to policies + scheduled actions for that target. TagResource/UntagResource/ListTagsForResource keyed by ARN. JSON 1.1 protocol Athena 70 Full control plane. Workgroups (default primary seeded), Data Catalogs (default AwsDataCatalog seeded), Named Queries, Prepared Statements (keyed by (workgroup, statement_name)), Query Executions, Notebooks, Sessions + Calculations, Capacity Reservations + Capacity Assignment Configuration. StartQueryExecution synthesizes a SUCCEEDED execution with a single-row [["1"]] result so callers can immediately fetch via GetQueryResults without polling. DeleteWorkGroup rejects primary and refuses non-empty workgroups unless RecursiveDeleteOption=true. DeleteDataCatalog rejects AwsDataCatalog. Statement classification (DML / DDL / UTILITY) from leading SQL keyword. Tags keyed by ARN across workgroup / datacatalog / capacity-reservation resources. ListEngineVersions / ListApplicationDPUSizes / ListExecutors / GetResourceDashboard return read-only catalog data. JSON 1.1 protocol ACM (Certificate Manager) 17 Full control plane. Public-cert lifecycle: RequestCertificate (DNS / EMAIL validation, deterministic synthesized DNS validation records), DescribeCertificate, GetCertificate, ListCertificates, SearchCertificates, DeleteCertificate, RenewCertificate, RevokeCertificate (AMAZON_ISSUED only). Imported certs: ImportCertificate (round-trips PEM, supports re-import to same ARN), ExportCertificate (returns cert + chain + key with passphrase). Tags via Add/Remove/ListTagsForCertificate. Account-wide expiry events via Get/PutAccountConfiguration. UpdateCertificateOptions for transparency-logging + export prefs. ResendValidationEmail only for EMAIL-validated certs. IdempotencyToken dedupes exact matches on token + DomainName + SANs (real ACM keys this on a 1-hour window; fakecloud uses exact match for determinism). JSON 1.1 protocol