lablup / lablup/backend.ai

Stateful (or, database-aware) plugin interface

Open
#666 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
670
Forks
183
Avg merge
17h 7m
Merged PRs (30d)
358

Description

Some advanced plugins may want to use the PostgreSQL/Redis databases to keep their own complex states.

Let's add a new base plugin context to provide database management lifecycle events.

We assume that each plugin has its own alembic migrations and self-manage their table schema. The plugin context just performs basic sanity checks such as duplication of table names. More detailed SQL guidelines will be required to prevent database integrity errors when deleting plugin-defined tables without affecting the tables defined by the core.

Technical considerations:

- Could we provide a generic common CRUD interface of the database tables defined by plugins for the control panel or some kinds of admin interfaces? (like `django.contrib.admin`)

JIRA Issue: BA-254

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.