LocalStack Release v3.1.0

LocalStack 3.1 is here with exciting new features and enhancements. It introduces initial support for new providers: EventBridge Pipes, MemoryDB, Account, AMB, WAFv2, Identity Store, ACM PCA, as well as new features for existing services: the Instance Metadata Service (IMDS). Additionally, it offers improvements in DynamoDB, SQS, CloudWatch, RDS, ElastiCache and Lambda. The release also includes enhancements in Cloud Pods, Resource Browsers, and CI Keys Usage inspection.

Community Release

The Community release features new enhancements and additions to support our Community users.

New & improved CloudWatch provider

We have introduced an all-new LocalStack-native CloudWatch provider, available behind a feature flag. You can activate it by configuring PROVIDER_OVERRIDE_CLOUDWATCH=v2 in your LocalStack configuration.

We have migrated from storing data in Python objects within the Moto backend to a more robust system. Now, metrics are efficiently stored in SQLite, and alarm resources are managed using LocalStack stores.

  • Various enhancements have been made to attain greater feature parity with AWS.
  • The provider is engineered to ensure thread safety, facilitating smooth concurrent operations.
  • There’s a significant improvement in the integrity and durability of data.
  • The new provider allows for more efficient data retrieval.

DynamoDB now supports Time to Live (TTL)

LocalStack now supports Time to Live (TTL) in DynamoDB.

To enable this feature, you need to set the environment variable DYNAMODB_REMOVE_EXPIRED_ITEMS to 1. This enables a worker running every 60 minutes that scans all the tables and deletes the expired items.

In addition, to programmatically trigger the worker at convenience, we provide the following endpoint: DELETE /_aws/dynamodb/expired

The response returns the number of deleted items:

curl -X DELETE localhost:4566//_aws/dynamodb/expired
{"ExpiredItems": 3}

Other changes and enhancements

  • SQS now supports dead-letter queue re-drive emulation through StartMessageMoveTask, CancelMessageMoveTask, and ListMessageMoveTasks API operations.
  • Lambda performance improvements for asynchronous invocations along with reduction in ReadTimeoutErroroccurrences during high load on LocalStack.
  • CloudWatch now supports Lambda targets for alarm actions on LocalStack.

Pro Release

The Pro release features a lot of new enhancements and additions to support our licensed users:

New EventBridge Pipes provider

We have shipped an initial support for a new EventBridge Pipes provider to create Pipes with SQS queues and Kinesis streams as source and target. You can filter events using EventBridge event patterns and enrich events using Lambda.

The following API operations have been implemented:

  • CreatePipe
  • DeletePipe
  • DescribePipe

New MemoryDB provider

We have shipped an initial support for a new MemoryDB provider to create and manage MemoryDB clusters locally, either in the LocalStack container itself or in separate containers for each cluster node.

The following API operations have been implemented:

  • CreateACL
  • CreateCluster
  • CreateSubnetGroup
  • DeleteACL
  • DeleteCluster
  • DeleteSubnetGroup
  • DescribeACLs
  • DescribeClusters
  • DescribeSubnetGroups
  • UpdateACL
  • UpdateCluster
  • UpdateSubnetGroup

Support for Instance Metadata Service (IMDS)

We have shipped support for the Instance Metadata Service (IMDS) to EC2 Docker VM Manager. The Instance Metadata Service exposes an endpoint inside every EC2 instance at http://169.254.169.254/. This endpoint can be queried to gain information about the running instance.

The following metadata categories are supported:

  • ami-id
  • ami-launch-index
  • instance-id
  • instance-type
  • local-hostname
  • local-ipv4
  • public-hostname
  • public-ipv4

The IPv6 endpoint is currently not supported.

New Account provider

We have shipped an initial support for a new Account provider, supporting basic CRUD operations surrounding AWS account management.

The following API operations have been implemented:

  • DeleteAlternateContact
  • GetAlternateContact
  • GetContactInformation
  • PutAlternateContact
  • PutContactInformation

New WAFv2 provider

We have shipped an initial support for a new WAFv2 provider, supporting basic CRUD operations surrounding AWS Web Application Provider.

The following API operations have been implemented:

  • AssociateWebACL
  • CreateWebACL
  • DeleteWebACL
  • DisassociateWebACL
  • GetWebACL
  • GetWebACLForResource
  • ListRuleGroups
  • ListTagsForResource
  • ListWebACLs
  • TagResource
  • UntagResource
  • UpdateWebACL

New ACM PCA provider

We have shipped an initial support for a new ACM PCA provider, supporting basic CRUD operations surrounding AWS Private Certificate Authority.

The following API operations have been implemented:

  • CreateCertificateAuthority
  • DeleteCertificateAuthority
  • DescribeCertificateAuthority
  • GetCertificate
  • GetCertificateAuthorityCertificate
  • GetCertificateAuthorityCsr
  • ImportCertificateAuthorityCertificate
  • IssueCertificate
  • ListTags
  • RevokeCertificate
  • TagCertificateAuthority
  • UntagCertificateAuthority
  • UpdateCertificateAuthority

New Managed Blockchain provider

We have shipped an initial support for a new Managed Blockchain provider, supporting basic CRUD operations surrounding Amazon Managed Blockchain.

The following API operations have been implemented:

  • CreateMember
  • CreateNetwork
  • CreateNode
  • CreateProposal
  • DeleteMember
  • DeleteNode
  • GetMember
  • GetNetwork
  • GetNode
  • GetProposal
  • ListInvitations
  • ListMembers
  • ListNetworks
  • ListNodes
  • ListProposalVotes
  • ListProposals
  • RejectInvitation
  • UpdateMember
  • UpdateNode
  • VoteOnProposal

Other changes and enhancements

  • Cloud Pods save and load commands now show a progress status on the CLI.
  • ElastiCache now supports creating Redis cache nodes and clusters as individual Docker containers, similar to MemoryDB.
  • RDS now supports providing admin permission to the master users on RDS for MySQL and MariaDB engines.

SaaS Release

The SaaS LocalStack Web Application features new components and improvements to manage your LocalStack subscriptions, local AWS resources via our intuitive user-interface:

OpenSearch Resource Browser

We have shipped support for an OpenSearch Resource Browser. It features CRUD support for OpenSearch domain via a user-interface.

CloudFront Resource Browser

We have shipped support for an CloudFront Resource Browser. It features CRUD support for CloudFront distributions via a user-interface.

Application Auto Scaling Resource Browser

We have shipped support for an Application Auto Scaling Resource Browser. It features CRUD support for Application Auto Scaling targets via a user-interface.

New Lambda Runtimes

New runtimes have been added to the Lambda Resource Browser. You can inspect them in the Lambda Resource Browser page.

CI key Usage inspection

Users can now inspect CI Keys Usage on the LocalStack Web Application.

Deprecation

  • DNS_LOCAL_NAME_PATTERNS is removed in favor of DNS_NAME_PATTERNS_TO_RESOLVE_UPSTREAM to list domain names that should not be resolved to the LocalStack container, but forwarded to the upstream resolver.
2 Likes