Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

feat: support configurable relational database backends for server deployments

Aperta
#148 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

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

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

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di forthfate/openorbit

Tutte le issue di forthfate/openorbit

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.