Ho bisogno di alcuni chiarimenti sulle responsabilità di Build Script e Build Server.
Ho letto diversi articoli su Internet sull'integrazione e le build continue. Compreso
- La chiave F5 non è un processo di generazione
- Build Server: Heart Monitor del tuo progetto
- Le build quotidiane sono il tuo amico
E ho avuto una conversazione con il mio consulente sul processo di creazione del nostro software. Perché ha molta esperienza, mi fido delle sue dichiarazioni, ma sono rimasto confuso.
A quanto ho capito, dalla mia ricerca (e per favore correggimi qui, poiché è quello che sto chiedendo) l'ideale dovrebbe essere il seguente:
- ogni progetto ha il suo script di compilazione
- questo script costruisce il progetto
- questo script assicura che le dipendenze siano state costruite in precedenza
Poiché le dipendenze potrebbero essere un altro progetto, con il proprio script di build si accumula una gerarchia ad albero. Potrebbe esserci uno script di build principale che crea tutti i progetti e le applicazioni.
Tuttavia le responsabilità del Build Server sono:
- controlla il repository
- innescare la build
- innescare test e altri strumenti di controllo qualità
- rendere disponibile l'artefatto
Questo può essere attivato manualmente, di notte o ogni volta che il repository cambia
Gli obiettivi del mio advisor sono, a quanto ho capito, che uno script di build è un modo per inflessibile e non mantenibile (A parte il fatto che ci vorrebbe molto tempo per crearne uno per la nostra base di codice legacy). Inoltre, Build Server dovrebbe mantenere le dipendenze, ad esempio per utilizzare dipendenze meno recenti quando si creano nuove dipendenze. E particolare per Ant
come era l'argomento concreto, non è in grado di costruire tutti i tipi di tecnologie diverse che vengono utilizzate nella base di codice e non è in grado di mantenere le dipendenze.
Potete per favore elaborare gli obiettivi e chiarire le responsabilità?