Salta ai contenuti

Marketplace plugin

Il Marketplace plugin è l’interfaccia amministrativa per installare, aggiornare e disinstallare plugin XIQUIL. I plugin estendono l’app con nuove funzionalità (riconciliazione bancaria, connettori specifici, analisi avanzate) ed espongono sia pagine frontend che route backend.

  • Sfogliare il catalogo ufficiale di plugin disponibili dall’Hub XIQUIL
  • Installare/disinstallare plugin con un click
  • Vedere gli aggiornamenti disponibili e applicarli
  • Per sviluppatori: uploadare plugin in test da file o URL
  1. Dal menu amministrativo, apri Marketplace plugin
  2. Naviga i tab:
    • Installati: elenco dei plugin attivi, con versione e stato
    • Disponibili: catalogo dall’Hub, filtrabile per tier, categoria e ricerca
    • Aggiornamenti: plugin con versione più recente disponibile
    • Sviluppatore (solo se abilitato da licenza): upload manuale da file o URL
  3. Per installare, clicca sul plugin e conferma. Se il plugin richiede pacchetti di sistema, l’installazione richiede un restart completo del container (~30s)
  4. Per disinstallare, clicca “Disinstalla” e conferma — l’operazione è atomica

Catalogo Marketplace plugin con schede per plugin disponibili e indicazione del tier richiesto Marketplace plugin: catalogo con tab Installati, Disponibili e Aggiornamenti; ogni scheda mostra tier, versione e stato.

  • Catalogo license-aware: XIQUIL chiama l’Hub con header Authorization: License <token>. L’Hub usa la licenza attiva per decidere cosa mostrare e cosa rendere installabile
  • Tier di licenza: i plugin sono distribuiti per tier (community, starter, pro, business). Il tier della tua licenza deve soddisfare il tier richiesto dal plugin
  • Upgrade visibili: i plugin di tier superiore possono comparire nel catalogo come proposta di upgrade. L’Hub li marca con is_locked: sono visibili, ma non installabili finché non aggiorni la licenza
  • Download bloccato: se provi a scaricare un plugin di tier superiore, l’Hub risponde con 403 e indica il tier richiesto
  • Plugin installati ma bloccati: se degradi la licenza, un plugin Pro gia installato puo restare nell’elenco, ma viene mostrato come bloccato dal piano corrente. Le sue pagine e route backend non sono operative finche non torni a Pro o Business
  • Pacchetti di sistema: alcuni plugin richiedono pacchetti apt aggiuntivi — installati automaticamente al restart
  • Developer mode: flag abilitato dalla licenza (o env PLUGIN_DEVELOPER_MODE=True per sviluppo locale) — sblocca il tab Sviluppatore
  • Beta channel: le versioni beta compaiono solo quando il Core chiede include_beta=true e la licenza ha plugin_beta=true
  • Compatibilità Core: prima dell’installazione XIQUIL controlla la versione minima o massima del Core (min_core_version / max_core_version) inserita dall’Hub nel manifest firmato e blocca pacchetti incompatibili
  • Firma Marketplace: i pacchetti ufficiali devono essere firmati dall’Hub. La licenza attiva contiene le chiavi pubbliche fidate e il pacchetto indica quale chiave è stata usata tramite MANIFEST.sha256.keyid
  • Protezione downgrade licenza: non è possibile attivare una licenza di tier inferiore finché la precedente è valida (salvo scadenza esplicita)

Il Marketplace ufficiale espone solo versioni approvate e firmate dall’Hub. Una versione caricata da uno sviluppatore non appare nel catalogo finché non viene inviata in review, approvata e firmata.

Per ogni plugin, il catalogo mostra la versione stabile più recente quando esiste. Se la richiesta include beta e la licenza è abilitata, mostra anche la versione beta più recente. Un plugin senza versioni approvate e firmate non viene restituito dal catalogo Core.

Le versioni in bozza, in review, rifiutate o archiviate non vengono mai mostrate nel Marketplace Core. Il backoffice può conservarle nello storico per audit e recupero, ma non sono distribuibili agli utenti.

Quando aggiorni un plugin dal Marketplace, XIQUIL verifica anche che il pacchetto firmato appartenga allo stesso plugin già installato. Questo impedisce di sostituire accidentalmente un plugin con un archivio di un altro plugin.

Il tab Sviluppatore è diverso dal Marketplace ufficiale: serve per installare plugin locali o da URL durante lo sviluppo. Usalo solo con pacchetti di cui conosci l’origine.