Durante il nostro attuale processo di compilazione, abbiamo un codice C che viene compilato e archiviato insieme a qualche codice Python in un tarball. Quel tarball rappresenta un commit (che può essere o non essere un commit di rilascio).
In alcuni dei nostri flussi Jenkins, il codice è in fase di test e in alcuni non lo è. Ma le informazioni relative a ogni specifico tarball, sia che siano passati Test unitario o Component Test, rimangono solo nel lavoro di Jenkins, e sono perse dopo la fine del lavoro.
Guardando un tarball esistente, non posso dire se ha passato nessuno dei test, e non c'è modo che io sappia, di interrogare Jenkins su questo specifico build-flow e sui risultati dei suoi "lavori". / p>
Le migliori opzioni che potrei pensare di contrassegnare e salvare i risultati dei test sono:
- Aggiungi un file alla directory principale dei progetti (il file verrà salvato all'interno del tarball) che indica i test passati (ad esempio
.passedunittest
,.passedcomponenttest
). - Aggiungi un file di testo nella directory in cui sono salvati i tarball, che fungerà da database per i tarball, riguardo ai test passati o falliti.
- Aggiungi un componente al nome file tarball che indica i test che ha superato.
Mi sento bene con tutte e 3 le opzioni, ma personalmente preferisco la 1a, ma mi succede che mi sento bene con soluzioni ridicole. C'è una buona pratica in questo caso? E se c'è, cos'è?