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

[Tooling] Add graphile-migrate / plv8 migration support #13

Open
7 tasks
bryanchriswhite opened this issue Aug 13, 2024 · 0 comments
Open
7 tasks

[Tooling] Add graphile-migrate / plv8 migration support #13

bryanchriswhite opened this issue Aug 13, 2024 · 0 comments
Labels

Comments

@bryanchriswhite
Copy link
Contributor

Objective

Support explicit and version controlled DB migrations via graphile-migrate and plv8/plv8ify.

Origin Document

DB migrations are implicit and automatic by default in the subquery framework. This introduces risk in the production environment and implies a necessity to re-index post-migration, which would otherwise be unnecessary due to the forward compatible nature of the current design (i.e. primitives).

Goals

  • Incorporate schema & data migrations into version control to improve reproducibility and transparency.
  • Add support for data migrations, leveraging the forward compatible design of the primitive entities.
  • Eliminate the need to re-index after schema changes & support typescript source migrations.

Deliverables

Non-goals / Non-deliverables

  • Adding any migrations.

General deliverables

  • Comments: Add/update TODOs and comments alongside the source code so it is easier to follow.
  • Testing: Add new tests (unit and/or E2E) to the test suite.
  • Makefile: Add new targets to the Makefile to make the new functionality easier to use.
  • Documentation: Update architectural or development READMEs; use mermaid diagrams where appropriate.

Creator: @bryanchriswhite

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
Status: 📋 Backlog
Development

No branches or pull requests

1 participant