Skip to content

RFC: Dynamodb endpoint url for local testing #370

Closed
@rtrive

Description

@rtrive

Key information

  • RFC PR:
  • Related issue(s), if known:
  • Area: Utilities-Parameters-DynamoDB
  • Meet tenets: Yes
  • Approved by: ''
  • Reviewed by: ''

Summary

Add possibility to use this library in AWS lambda with DynamoDB local that run on docker.

Motivation

When you want to test your lambda locally you could user DynamoDB local to avoid to interact with remote database. Right now the parameter endpoint_url is missing on dynamodb provider configuratio

Proposal

  def __init__(
      self,
      table_name: str,
      key_attr: str = "id",
      sort_attr: str = "sk",
      value_attr: str = "value",
      endpoint_url: Optional[str] = None,
      config: Optional[Config] = None,
  ):
      """
      Initialize the DynamoDB client
      """

      config = config or Config()
      self.table = boto3.resource("dynamodb", endpoint_url=endpoint_url, config=config).Table(table_name)

Insert enpoindt_url parameter as init config of dynamodb provider

If this feature should be available in other runtimes (e.g. Java, Typescript), how would this look like to ensure consistency?

Drawbacks

Why should we not do this? Few people are interested on local dynamodb

Do we need additional dependencies? Impact performance/package size? no

Rationale and alternatives

  • What other designs have been considered? Why not them?
  • What is the impact of not doing this?

Unresolved questions

Optional, stash area for topics that need further development e.g. TBD

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

Status

Triage

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions