Passa al contenuto principale

Processo di packaging e rilascio

Le build di Cwtch sono costruiti automaticamente tramite Drone. Per poter prendere parte al build, i diversi step devono essere approvati da un membro del team del progetto.

Test automatizzati

Drone effettua una serie di test automatizzati in varie fasi della pipeline di rilascio.

Test SuiteRepositoryNote
Test di integrazionecwtch.im/cwtchUn esercizio completo di messaggi peer-to-peer e di gruppo
Test di condivisione filecwtch.im/cwtchVerifica che la condivisione di file e il download di immagini funzionino come previsto
Test di download automatizzatocwtch.im/cwtchVerifica che il download automatico di immagini (ad esepio immagini del profilo) funzioni come previsto
Test di integrazione dell'interfaccia utentecwtch.im/cwtch-uiUna suite di test di Gherkin per esercitare varie procedure dell'interfaccia utente come la creazione/eliminazione di profili e la modifica delle impostazioni

Autobindings di Cwtch

Drone produce i seguenti artefatti di build per tutte le build di Cwtch con autobinding:

ArtefattoPiattaformaNote
android/cwtch-sources.jarAndroidcodice sorgente della libreria per Android di Cwtch, derivato da gomobile
android/cwtch.aarAndroidLibreria di Cwtch per Android. Supporta arm, arm64 e amd64.
linux/libCwtch.hLinuxFile header di C
linux/libCwtch.hLinuxlibreria x64 condivisa
windows/libCwtch.hWindowsfile header di C
windows/libCwtch.dllWindowslibreria x64 condivisa
macos/libCwtch.arm64.dylibMacOSlibreria arm64 condivisa
macos/libCwtch.x64.dylibMacOSlibreria x64 condivisa

Versioni di sviluppo ("nightly" build) dell'interfaccia utente

Versioni di Cwtch non ufficialmente rilasciate sono rese disponibili a scopo di test come Cwtch Nightlies.

Ogni cartella di nightly build contiene una serie di artefatti (ad esempio file APK per Android, eseguibili di installazione per Android) raccolti convenientemente in una singola sottocartella. Un elenco completo di artefatti di build attualmente prodotti è il seguente:

ArtefattoPiattaformaNote
cwtch-VERSION.apkAndroidSupporta arm, arm64 e amd64. Caricabile attraverso sideloading.
cwtch-VERSION.aabAndroidPacchetto applicazione Android per la pubblicazione in appstore
Cwtch-VERSION.dmgMacOS
cwtch-VERSION.tar.gzLinuxContiene il codice, le librerie e le risorse, oltre che agli script di installazione per vari dispositivi
cwtch-VERSION.zipWindows
cwtch-installer-VERSION.exeWindowsAssistente di installazione basato su NSIS

Le build nightly vengono regolarmente eliminati dal sistema

Versioni ufficiali

Il team di Cwtch si riunisce regolarmente e raggiunge un comune accordo sulla base del feedback dai test delle versioni nightly delle tabelle di marcia del progetto.

Quando si decide di creare un build di rilascio, viene costruita una versione nightly con un nuovo git tag che riflette la versione di rilascio ad esempio v.1.12.0. Gli artefatti di build vengono poi copiati sul sito web delle versioni di Cwtch in una cartella versionata dedicata.

Build Riproducibili

Usiamo repliqate per fornire script di build riproducibili per Cwtch.

Aggiorniamo il repository repliqate-scripts con script per tutte le versioni ufficiali. Attualmente solo i binding di Cwtch sono riproducibili