Aggiungendo a @Slav risposta, Fingerprinting
aiuto Jenkins a tenere traccia di quale versione di un file è utilizzato da quale versione di una dipendenza.
Citando un esempio e come funziona da Jenkins Page:
Ad esempio:
Supponiamo di avere il progetto TOP
che dipende dal progetto MIDDLE
, che a sua volta dipende dalla BOTTOM
progetto.
Si sta lavorando al progetto BOTTOM
. Il team TOP
ha segnalato che bottom.jar
che sta utilizzando causa un'eccezione Pointer nullo, che tu (un membro del team BOTTOM) hai pensato di risolvere in BOTTOM #32
.
Jenkins può dirvi quali build MIDDLE
e build TOP
utilizzano (o non utilizzano) il bottom.jar #32
.
Come funziona?
Il file fingerprint
di un file è semplicemente un checksum MD5
. Jenkins gestisce un database di md5sum
e, per ogni md5sum
, Jenkins registra quali build di quali progetti sono stati utilizzati. Questo database viene aggiornato ogni volta che una generazione viene eseguita e i file vengono rilevati con le impronte digitali.
Per evitare l'utilizzo eccessivo del disco, Jenkins non memorizza il file effettivo. Invece, archivia solo md5sum e i loro usi. Questi file possono essere visti in
$JENKINS_HOME/fingerprints
Grazie !!Ora ho la differenza, penso. Con gli artefatti, non avevo modo di rintracciare da dove provenivano? – Cher
A meno che non si abbia una convenzione di denominazione molto ben definita. – Slav