2015-08-19 7 views
5

Desidero utilizzare sbt per pubblicare il mio progetto.Uso idiomatico di sbt per rilasciare (testato) artefatti

Sono abituato a fare lo scultore, e ho bisogno di un po 'di aiuto (mentalmente) di transizione.

Per impostazione predefinita vedo "pubblicare" dipende dal "pacchetto", ma "pacchetto" non dipende da "test". Ovviamente voglio solo pubblicare il codice testato. Come dovrei assicurarlo?

Ovviamente potrei make package depend on test, ma il fatto che questo non sia il tipo predefinito suggerisce che questo non è un uso idiomatico di SBT. Quale sarebbe il modo "giusto" per raggiungere questo obiettivo?

Come posso trovare ulteriori informazioni sulle best practice?

risposta

5

Sono sempre in esecuzione sbt clean test publish-local publish (o publish-signed). Questo garantisce che qualsiasi errore si verifichi prima che publish interrompa il processo.

Un'altra possibilità potrebbe essere quella di utilizzare sbt-release plugin. Questo esegue test e anche orologi e regola le stringhe di versione.

+0

Grazie! Orchestrare questo indipendentemente dalle dipendenze delle attività con uno strumento come il plugin sbt-release sembra davvero un buon modo per ottenere questo risultato. In realtà non ci protegge dalle persone che pubblicano accidentalmente senza test, ma credo che ci sia un compromesso. –