2014-04-24 10 views
5

Ho una soluzione che produce diversi pacchetti NuGet e impacchetta i pacchetti durante la compilazione. Voglio che le mie compilazioni notturne vengano contrassegnate come pre-release, quindi modifico i pacchetti di conseguenza: 1.2.3-PreRelease0001. Tuttavia, una volta che una compilazione notturna ha superato il test, voglio pubblicare la stessa build, con gli stessi pacchetti, ma utilizzando una versione non PreRelease: 1.2.3.Come posso riconfigurare i pacchetti NuGet una volta dichiarati pronti per la produzione?

La mia domanda: Come posso riconfezionare un pacchetto NuGet con una versione diversa? Immagino di poter modificare qualche script di unzip/edit/nuget pack, ma c'è un modo migliore?

Alternative:

  • Non pacchetto durante la costruzione - pacchetto in un processo separato, che posso eseguire nuovamente in seguito.
    Con: Se io pacchetto durante compilazione, ottengo l'accesso ai <Content> file direttamente dalle fonti
  • eseguire un altro accumulo, questo imballaggio volta con la versione non PreRelease.
    Con: desidera distribuire gli stessi bit esatte che ho provato ...
  • Non contrassegnare nightly build come PreRelease, e invece li pubblicano in un repository separato.
    Con: I pacchetti PreRelease non sono contrassegnati come tali e potrebbero essere scambiati come rilasciati.
  • Pacchetto durante la compilazione due volte: una volta con PreRelease e una volta senza.
    Con: Le persone potrebbero essere tentate di rifiutare le versioni non PreRelease. Forse potrei inserirli nella cartella GeneratedDoNotTouch ...

risposta

1

Non esiste alcuna API pubblica per modificare i metadati di un pacchetto in NuGet. Direi che l'ultima soluzione, cioè produrre entrambi i pacchetti prerelease e non prerelease durante la compilazione, è la migliore.

Per impedire alle persone di utilizzare accidentalmente il pacchetto non prerelease, è possibile crearlo prima in una directory privata. Quindi, pubblicalo solo dopo che la build ha superato il test.

Sì, è possibile estrarre il file nuspec dal pacchetto, apportare le modifiche necessarie e quindi salvare il file nel pacchetto. Il problema è che questo potrebbe smettere di funzionare se il formato nuspec viene modificato.

+0

I pacchetti due volte. Grazie! – Jonathan

Problemi correlati