Come automatizzare le attività per il rilascio di software open source?
-
08-07-2019 - |
Domanda
Chiunque gestisca un software open source si imbatte nel problema, che col tempo il processo di rilascio di una nuova versione ottiene sempre più lavoro. Devi taggare la versione nel controllo della versione, creare le distribuzioni (che dovrebbe essere facile con build automatizzate), caricarle sul tuo sito web e / o open-source-hoster. Devi annunciare la nuova versione con quasi lo stesso messaggio sui forum Web scelti, il sistema di notizie su Sourceforge, le mailing list e il tuo blog o sito Web. E devi aggiornare la voce del tuo software su carni fresche. Eventuali ulteriori compiti devono essere svolti per il rilascio.
Hai sviluppato tecniche per automatizzare alcune di queste attività? Esiste un software che ti supporta in questo?
Soluzione
Pragmatic Project Automation mostra come fare tutto ciò. Usano Ant per praticamente tutto nel libro, quindi se conosci Ant puoi creare obiettivi diversi per fare qualsiasi entrare nel ciclo build-release.
Altri suggerimenti
Per quanto riguarda Perl, ho scritto Module :: Release . Nella directory di livello superiore scrivo un singolo comando:
% release
Se controlla diverse cose e muore se qualcosa non va. Se tutto è andato a buon fine, carica la distribuzione.
Automatizza tutto il mio processo:
- Test su più versioni di Perl
- Test dei file di distribuzione
- Controlla lo stato del controllo del codice sorgente
- Verifica delle metriche sulla qualità del codice e della distribuzione
- Aggiorna file modifiche
- Determina il nuovo numero di versione
- Rilascia il codice in più posizioni
- Contrassegna il controllo del codice sorgente con il nuovo numero di versione
Tutti sembrano scrivere il proprio automatore di rilascio però. Alla maggior parte delle persone piace il loro processo come piace al loro processo, quindi le soluzioni generali non funzionano così bene socialmente.
Brad Fitzpatrick ha ShipIt che è un programma Perl per automatizzare le versioni. Ci sono leggermente più informazioni nel suo annuncio originale .