Skip to content

[BUG] Comando list non rileva istanze esistenti senza config.ini #90

@fporcari

Description

@fporcari

Problem Description

Il comando mail-proxy list non rileva le istanze esistenti perché richiede la presenza di config.ini, ma le versioni precedenti non lo creavano.

Comportamento atteso:

  • list dovrebbe rilevare istanze anche solo dalla presenza del database (mail_service.db)
  • serve <name> dovrebbe creare automaticamente l'istanza se non esiste (db, chiave API, record instance, porta, etc.)

Comportamento attuale:

  • list mostra "No instances configured" anche se esistono istanze con database
  • Le istanze legacy senza config.ini non vengono riconosciute

Reproduction Steps

  1. Avere istanze create con versioni precedenti (es. ~/.mail-proxy/default-mailer/mail_service.db)
  2. Aggiornare a v0.7.x
  3. Eseguire mail-proxy list
  4. Output: "No instances configured"

Evidence

$ ls ~/.mail-proxy/*/
/Users/fporcari/.mail-proxy/default-mailer/:
mail_service.db    # ← esiste ma manca config.ini

/Users/fporcari/.mail-proxy/paci-mailer/:
mail_service.db    # ← esiste ma manca config.ini

$ mail-proxy list
No instances configured.

Proposed Fix

  1. Rilevamento istanze: Considerare un'istanza valida se esiste:

    • config.ini (nuovo formato), OPPURE
    • mail_service.db (formato legacy)
  2. Auto-creazione: serve <name> dovrebbe:

    • Creare la directory ~/.mail-proxy/<name>/ se non esiste
    • Creare config.ini con valori di default
    • Creare il database se non esiste
    • Generare API token automaticamente
    • Assegnare porta automatica (8000 + offset o prima disponibile)

Environment

  • Version: 0.7.0
  • OS: macOS / Linux

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions