feat: support configurable relational database backends for server deployments
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- postgresql, python, sqlite
- Ambito
- backend, ci-cd, database, documentation
Direzione di ricerca
Start by locating the existing SQLite persistence layer and configuration entry point, then review the persisted domain model and CI setup. Define the backend abstraction, PostgreSQL support, schema migrations, SQLite-to-PostgreSQL migration path, and documented concurrency behavior; done means both backends pass consistent core-data checks and deployment guidance covers PostgreSQL operations.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Problem
OpenOrbit currently persists operational data with SQLite, which is a strong default for local-first and single-user use.
For a server deployment shared by multiple users, however, we need an option better suited to concurrent access, backups, monitoring, and potentially multiple application instances.
Proposal
Keep SQLite as the default local backend, and add a configurable relational database backend abstraction with PostgreSQL as the first supported server backend.
Initial configuration could be environment-based:
OPENORBIT_DATABASE_URL=sqlite:///path/to/openorbit.db
OPENORBIT_DATABASE_URL=postgresql://user:password@host:5432/openorbit
Scope
- Preserve SQLite as the zero-configuration local default.
- Support PostgreSQL for server deployments.
- Introduce schema migrations and versioned database upgrades.
- Keep the existing API and persisted domain model backend-independent.
- Document backup, restore, and migration guidance.
- Define the supported concurrency and multi-instance behavior.
Acceptance criteria
- A new installation can use either SQLite or PostgreSQL through configuration.
- Core data (Assets, Builds, Runs, Improvements, issues, comments, and logs) behaves consistently on both backends.
- Existing SQLite data can be migrated to PostgreSQL safely.
- CI verifies the persistence layer against SQLite and PostgreSQL.
- Server deployment documentation includes PostgreSQL setup and operations.
Open questions
- Should PostgreSQL support arrive before multi-instance serving is officially supported?
- Which data remains filesystem-backed (for example, run artifacts or large logs) rather than moving into the database?
- Should SQLite-to-PostgreSQL migration be an in-app command or a separate tool?
- Lingua principale
- Python
- Stelle
- 5
- Fork
- 10
- Merge medio
- 5h 12m
- PR unite (30g)
- 132
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Nessun modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di forthfate/openorbit
-
documentation good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
accessibility good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno
-
documentation good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
help wanted testing
Difficoltà 3/5 1-2 giorni Idoneità per principianti 58/100
I maintainer di solito rispondono entro 1 giorno
-
enhancement good first issue help wanted integrations
Difficoltà 4/5 3-5 giorni Idoneità per principianti 62/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di forthfate/openorbit
Issue simili
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 85/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 90/100
I maintainer di solito rispondono entro 1 giorno
-
https://search.utilibre.orgApertainstance instance add
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
searxng/searx-instances#941 · 1 commento ·
-
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 92/100
FluidNumerics/fluid-walk-blocker#89 ·
I maintainer di solito rispondono entro 1 giorno
-
bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 84/100
I maintainer di solito rispondono entro 1 giorno