Build

Panoramica

In Odoo.sh, un build corrisponde ad un database gestito da un server Odoo (odoo/odoo e odoo/enterprise), in esecuzione su una revisione specifica dell’archivio di progetto e in un ambiente in contenitori.

../../../_images/interface-builds.png

In questa vista, ogni riga rappresenta un ramo, e la cella di una riga rappresenta un build del ramo stesso.

La maggior parte delle volte, i build vengono creati seguendo i push Github relativi ai rami del tuo archivio. È possibile crearli anche quando esegui altre operazioni, come importare un database su Odoo.sh o chiedere il rebuild di un ramo nel tuo progetto.

Se durante il processo di creazione non vengono visualizzati errori o messaggi di avviso, significa che il build è stato creato con successo e sarà evidenziato in verde.

Se durante il processo di creazione vengono visualizzati errori o messaggi di avviso, significa che il build non è stato creato con successo e sarà evidenziato in rosso.

Se durante la creazione vengono visualizzati messaggi di avviso ma non ci sono errori, il build viene considerato quasi riuscito. Sarà evidenziato in giallo per indicare allo sviluppatore che sono stati visualizzati degli avvisi.

I build non sempre creano un database da capo. Ad esempio, quando esegui il push di un cambiamento nel ramo di produzione, il build creato avvia il server con la nuova revisione e prova a caricare il database di produzione corrente. Se non vengono visualizzati errori, il build viene considerato riuscito.

Fasi

Produzione

Il primo build di un ramo di produzione crea un database da capo. Se il build ha esito positivo, il database viene considerato come database di produzione del tuo progetto.

Da questo momento, i push sul ramo di produzione porteranno alla creazione di nuovi build che provano a caricare il database usando un server in esecuzione con la nuova revisione.

Se il build è riuscito o presenta avvisi ma non errori, il database di produzione funzionerà con questo build insieme con la revisione associata al build stesso.

Se il build non riesce a caricare o aggiornare il database, verrà riutilizzato il build precedente per caricare il database e quindi il database funzionerà utilizzando un server che utilizza la revisione di successo precedente .

Il build utilizzato per far funzionare il database di produzione è sempre il primo dell’elenco dei build. Se un build fallisce, viene messo dopo il build che sta eseguendo il database di produzione.

Staging

I build di staging duplicano il database di produzione e provano a caricare il duplicato con le revisioni dei rami di staging.

Ogni volta che esegui il push di una nuova revisione su un ramo di staging, il build creato utilizza una nuova copia del database di produzione. I database non vengono riutilizzati tra i build dello stesso ramo e ciò garantisce:

  • che i build di staging usino database simili alla produzione così non eseguirai test con dati vecchi;

  • che tu possa giocare quanto vuoi nello stesso database di staging per poi chiedere il rebuild quando vuoi ricominciare con una nuova copia della produzione.

Tuttavia, questo significa che se apporti modifiche ai database di staging e non le applichi alla produzione, esse non verranno trasferite al prossimo build dello stesso ramo di staging.

Sviluppo

Lo sviluppo di build porta alla creazione di nuovi database, al caricamento di dati demo e all’esecuzione di unit test.

Il build verrà considerato non riuscito ed evidenziato in rosso se durante l’installazione i test falliscono, in quanto hanno lo scopo di generare errori se si verifica qualcosa di sbagliato.

Se tutti i test riescono con successo e non vi sono errori, il build verrà considerato riuscito.

Secondo l’elenco di moduli da installare e provare, il build di sviluppo può impiegare fino ad 1 ora per essere pronto. Ciò è dovuto al grande numero di test configurati nella suite di moduli Odoo.

Funzionalità

Il ramo di produzione apparirà sempre per primo e gli altri rami verranno ordinati secondo l’ultimo build creato. Inoltre, è possibile filtrare i rami.

../../../_images/interface-builds-branches.png

Per ogni ramo, è possibile accedere all’ultimo database del build utilizzando il link Connect e passare al codice del ramo utilizzando il link Github. Per altri rami diversi dalla produzione, puoi creare un nuovo build che utilizzerà l’ultima revisione del ramo utilizzando il link rebuild. L’ultimo link non è disponibile se un build è già in corso per il ramo.

../../../_images/interface-builds-build.png

Per ogni build, è possibile accedere alle modifiche della revisione utilizzando il pulsante con l’icona Github. È possibile accedere al database del build come amministratore utilizzando il pulsante Connect. Inoltre, puoi accedere al database con un altro utente utilizzando il pulsante Connect as nel menu a discesa del pulsante Connect.

../../../_images/interface-builds-build-dropdown.png

Nel menu a discesa del build, puoi accedere alle stesse funzionalità della vista rami: Registri, Shell web, Editor, E-mail in uscita. Hai anche la possibilità di Scaricare un dump del database del build.