Distribuzione software

Dal sorgente condiviso a un'installazione controllata.

Le funzionalità di distribuzione software di Microwave Pie sono progettate per semplificare l'implementazione di applicazioni self-hosted: gestire i rilasci da un sorgente condiviso, creare il pacchetto giusto per un'installazione, applicare le licenze e mantenere installazione e aggiornamenti legati a un rilascio noto.

Modello di distribuzione condiviso

1Sorgente applicativo condivisoUna sola cronologia del sorgente e identità del rilascio.
2Rilascio della piattaformaCrea per la destinazione di installazione prevista.
Pacchetto sorgente Pacchetto compilato
3Pacchetto con licenzaEmetti il pacchetto per un'implementazione specifica.
4Installa e aggiornaMantieni la cronologia dell'installazione collegata al rilascio distribuito.

Funzionalità

Mantieni flessibili le scelte di rilascio senza perdere il controllo.

Ambienti diversi non richiedono sempre lo stesso formato di pacchetto o lo stesso rilascio nello stesso momento. Microwave Pie separa sorgente applicativo condiviso, rilasci riutilizzabili, pacchetti, licenze e istanze installate, così ogni aspetto può evolvere in modo intenzionale.

Sorgente condiviso

Parti da un sorgente Git comune e conserva il commit esatto e la versione leggibile associati a un rilascio. Tipi di installazione diversi possono avanzare in modo indipendente rimanendo comunque collegati alla stessa cronologia del sorgente.

Pacchetti sorgente

Distribuisci l'applicazione come sorgente quando trasparenza, esecuzione diretta o installazione Python specifica della piattaforma sono la scelta migliore. I pacchetti sorgente mantengono lo stesso modello di rilascio e licenza dei pacchetti compilati.

Pacchetti compilati

Distribuisci un pacchetto applicativo compilato quando si preferisce un runtime più autonomo. La compilazione è una scelta di distribuzione, non una linea di prodotto separata, quindi la provenienza del rilascio rimane coerente.

Gestione di pacchetti e licenze

Emetti un pacchetto con la licenza e il contesto di destinazione già associati. Ciclo di vita del pacchetto, stato della licenza, download, installazioni, aggiornamenti, revoca e chiusura possono essere gestiti insieme invece di essere ricostruiti in seguito.

Scelte di rilascio specifiche per destinazione

I tipi di installazione Raspberry Pi, GCP, sorgente e compilata possono rimanere a livelli di rilascio diversi quando c'è un motivo per farlo. I commit Git mancanti possono essere esaminati per tipo di installazione e anche a livello dell'intera applicazione.

Aggiornamenti gestiti dall'interfaccia

Le applicazioni gestite possono segnalare automaticamente la disponibilità di un aggiornamento approvato senza imporlo. Un amministratore decide quando preparare e applicare l'aggiornamento nell'interfaccia dell'applicazione; dopo il riavvio, il rilascio installato può essere confermato al servizio di distribuzione condiviso mantenendo la relazione tra pacchetto e licenza.

Implementazione

Pacchettizza l'installazione, non l'incertezza.

Un pacchetto software può contenere il contesto di implementazione necessario a trasformare un rilascio applicativo in un'installazione funzionante: piattaforma di destinazione, formato del pacchetto, comportamento di installazione, identità del rilascio e relazione di licenza.

Questo permette al processo di implementazione di partire da un rilascio noto invece di chiedere a ogni ambiente di ricreare autonomamente le decisioni di build e distribuzione. Quando è opportuno un rilascio più recente, la relazione esistente tra pacchetto e licenza può rimanere intatta mentre il rilascio selezionato avanza intenzionalmente.

Cronologia dei rilasci immutabile

I rilasci dell'applicazione conservano l'artefatto e l'identità Git effettivamente creati.

Aggiornamenti controllati dall'amministratore

La disponibilità può essere annunciata automaticamente, ma download, preparazione, applicazione e riavvio restano azioni deliberate dell'amministratore.

Licenze consapevoli dell'installazione

Pacchetti, licenze e istanze installate rimangono collegati durante installazione, aggiornamento, revoca e chiusura.

Blackcap

Un'applicazione usa già oggi questo modello.

Blackcap può essere distribuito in ambienti Raspberry Pi e GCP supportati usando pacchetti sorgente o compilati, mantenendo allineati rilascio, pacchetto, licenza e comportamento degli aggiornamenti.

Esplora la tecnologia Blackcap