Da dove proviene la build?
sobes.tech AI
Risposta dell'AI
La compilazione (build) del software viene eseguita come risultato del processo di compilazione, collegamento e confezionamento del codice sorgente del progetto insieme alle risorse necessarie (biblioteche, file di configurazione, immagini, ecc.) in un pacchetto unico eseguibile o distribuibile.
Durante la compilazione manuale, lo sviluppatore esegue questi passaggi manualmente o con script sul proprio computer locale. Durante la compilazione automatizzata, vengono utilizzati sistemi di integrazione continua (CI) come Jenkins, GitLab CI, GitHub Actions, TeamCity e altri.
Il processo di compilazione automatizzata è approssimativamente il seguente:
- Trigger: Una modifica nel repository (ad esempio, un commit in un ramo specifico) o l'esecuzione di una compilazione pianificata avvia la pipeline di compilazione.
- Recupero del codice: Il sistema CI recupera la versione attuale del codice sorgente dal sistema di controllo versione (Git, SVN, ecc.).
- Compilazione: Vengono eseguiti i comandi di compilazione secondo la configurazione del progetto (ad esempio,
mvn clean package,npm build,dotnet publish). Questo passaggio include la compilazione del codice sorgente, l'esecuzione di test unitari e la creazione di artefatti di compilazione. - Test: Possono essere eseguiti vari tipi di test automatizzati (integrazione, e2e, ecc.).
- Imballaggio: Gli artefatti di compilazione vengono confezionati nel formato appropriato (WAR/JAR per Java, immagine Docker, pacchetto NPM, msi, ecc.).
- Pubblicazione: L'artefatto (build) pronto viene pubblicato in un repository di artefatti (Nexus, Artifactory, Docker Registry), da cui può essere recuperato per deployment o test successivi.
In questo modo, la compilazione deriva da un processo automatizzato o manuale di compilazione, collegamento e confezionamento del codice sorgente, generalmente eseguito dal sistema CI dopo modifiche nel repository.