In un ambiente in cui è possibile creare più build (rilascio di pacchetti candidati) ogni giorno ma solo uno al mese viene promosso in produzione, penso che memorizzare ogni build in Git sarebbe uno spreco ma ci dovrebbe essere una posizione a breve termine che le ultime build sono pubblicatiGit deve essere utilizzato per memorizzare le build di integrazione continua?
Attualmente sto pubblicandoli in una directory condivisa. Ho visto IVY utilizzato per questo tipo di editoria binaria in passato. Git sembra eccessivo, perché gonfia a causa del suo modello di non cancellare mai nulla.
Esiste un modo concordato e standardizzato di gestire/pubblicare questi artefatti di costruzione transitori?
Perché memorizzare l'artefatto? Le build possono essere ricreate. –
(Voglio dire, in git, comunque. La maggior parte dei server CI mantiene comunque le build per un tempo configurabile?) –
Le build possono essere ricreate ma gli ambienti di creazione a volte non possono. Unles mantieni l'intera catena di strumenti sotto controllo di revisione, non c'è la certezza che puoi costruire lo stesso binario dopo che è trascorso un grande lasso di tempo. Inoltre, è impossibile creare esattamente lo stesso binario (i timestamp incorporati generano diversi checksum dei file). Ciò rende difficile per le terze parti fidarsi o certificare il software a meno che non lo costruiscano anche dal sorgente. –