Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Implement DynamoDB ORM #68

Merged
merged 4 commits into from
Jun 13, 2023
Merged

Implement DynamoDB ORM #68

merged 4 commits into from
Jun 13, 2023

Conversation

FinnIckler
Copy link
Member

@FinnIckler FinnIckler commented Jun 12, 2023

This PR introduces the Dynamoid ORM to interact with the Database. It uses the Database Structure laid out in https://docs.google.com/document/d/12gaypUo5KY6uv9XdmrbcrfQPeQ6ZrkdVLPz59BDyoFc (minus some payment related fields).

Notes:

  • Added Lane as a custom datatype that is serialized in JSON
  • Added a lane_init step that is run before create
  • We still create the Development Table in seeds.rb so it is easier to maintain parity with terraform
  • I changed delete to be a non destructive operation
  • Changed Registration Processor to be instantiated so we can initialize Dynamoid
  • Added a LaneFactory class that we can use to create lanes
  • There is a bug in Dynamoid Version 3.9.0 that makes saving custom data Types not work correctly so I am pinning to version 3.80

@FinnIckler
Copy link
Member Author

@thewca-bot deploy staging

@FinnIckler
Copy link
Member Author

After some messaging of the infrastructure iam policies this now works on staging

@FinnIckler FinnIckler merged commit ddbcf90 into main Jun 13, 2023
@FinnIckler FinnIckler deleted the feature/dynamoid branch June 13, 2023 17:05
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant