Questo articolo è un articolo speculare di traduzione automatica, clicca qui per saltare all'articolo originale.

Vista: 13306|Risposta: 0

[Fonte] Jenkins presentò brevemente

[Copiato link]
Pubblicato su 22/11/2018 09:59:36 | | | |
Capitolo 1 Cos'è Jenkins?

Jenkins è un motore di integrazione scalabile e continua.

Principalmente utilizzato per:

  • Costruisco/testare continuamente e automaticamente progetti software.
  • Monitoro alcuni compiti che vengono svolti regolarmente.


Le caratteristiche di Jenkins includono:

  • Facile da installare - basta distribuire jenkins.war su un server server senza supporto a database.
  • Facile da configurare - tutte le configurazioni sono realizzate tramite l'interfaccia web fornita da esso.
  • L RSS/E-mail integrato pubblica i risultati delle build tramite RSS o le notifiche via e-mail quando la build è completata.
  • Genero rapporti di test JUnit/TestNG.
  • L Supporto Distributed Build Jenkins permette a più macchine di compilare/testare insieme.
  • Riconoscimento file: Jenkins può tracciare quali jar vengono generati da quale build, quale versione di jar viene usata da quale build, ecc.
  • Supporto Plugin: Sono supportate estensioni, così puoi sviluppare strumenti adatti all'uso del tuo team.


1 Origine di Jenkins

L'integrazione continua (CI) è diventata una pratica comune per molti team di sviluppo software, che si concentrano sul garantire la qualità del codice durante tutto il ciclo di vita dello sviluppo software. È una pratica pensata per facilitare e consolidare il processo di creazione del software. E può aiutare il tuo team di sviluppo ad affrontare sfide come:

  • L Automazione della Costruzione Software: Dopo il completamento della configurazione, il sistema CI costruirà il software di destinazione secondo il programma prestabilito o per un evento specifico.
  • Costruire controlli automatizzati sostenibili: Il sistema CI può ottenere continuamente nuovo o modificato codice sorgente check-in, cioè, quando il team di sviluppo software deve controllare periodicamente il codice nuovo o modificato, il sistema CI confermerà costantemente se il nuovo codice ha interrotto la compilazione con successo del software originale. Questo riduce il tempo e lo sforzo che gli sviluppatori impiegano a cercare cambiamenti nel loro codice interdipendente (per essere chiari, hehe).
  • Costruire test automatizzati sostenibili: costruire una parte estesa del controllo, eseguire un insieme predefinito di regole di test dopo la compilazione e avviare notifiche (email, RSS, ecc.) alle parti interessate dopo il completamento.
  • L Automazione dei processi successivi dopo la generazione: Quando controlli e test automatizzati vengono completati con successo, possono essere necessarie ulteriori attività nel ciclo di compilazione del software, come generare documentazione, confezionare software e distribuire componenti in un runtime o in un repository software. Questo permette di rendere i componenti disponibili agli utenti più rapidamente.
  • I requisiti minimi richiesti per distribuire un sistema CI sono un repository del codice sorgente disponibile e un progetto con script di build.


Il seguente diagramma riassume la struttura di base di un sistema CI:



I componenti del sistema funzionano nel seguente ordine:

1. Lo sviluppatore verifica il codice nel repository del codice sorgente.

2. Il sistema CI crea uno spazio di lavoro separato per ogni progetto. Quando una nuova build viene preimpostata o richiesta, memorizzerà il codice sorgente dal repository al relativo spazio di lavoro.

3. Il sistema CI eseguirà il processo di compilazione nello spazio di lavoro corrispondente.

4. (Se esiste una configurazione) Una volta completata la compilazione, il sistema CI esegue un insieme definito di test su un nuovo artefatto. Attiva notifiche (email, RSS, ecc.) alle parti interessate al completamento.

5. (Configurazione, se presente) Se la compilazione ha successo, questo artefatto viene confezionato e trasferito su un target di distribuzione (ad esempio application server) o memorizzato come nuova versione nel repository software. Un repository software può far parte di un sistema CI o di un repository esterno, come un file server o un sito web come Java.net, SourceForge, ecc.

6. Il sistema CI di solito avvia azioni corrispondenti basate su richieste, come build istantanee, generazione di report o recupero di alcuni artefatti costruiti.

Jenkins è uno di questi sistemi CI. Precedentemente conosciuta come Hudson.

Ecco alcune ragioni per usare Jenkins:

  • È il più facile da installare e configurare tra tutti i prodotti CI.
  • L Basandosi sull'accesso web, l'interfaccia utente è molto amichevole, intuitiva e flessibile, e in molti casi fornisce un feedback immediato da AJAX.
  • Jenkins è sviluppato su Java (il che è molto utile se sei uno sviluppatore Java), ma non si limita alla creazione di software basato su Java.
  • Jenkins ha un gran numero di plugin. Questi plugin ampliano notevolmente la funzionalità di Jenkins; Sono tutti open source e possono essere installati e gestiti direttamente tramite l'interfaccia web.


1.1 Obiettivi di Jenkins
L'obiettivo principale di Jenkins è monitorare il processo di sviluppo software e individuare rapidamente i problemi. Pertanto, può garantire che sviluppatori e personale correlato risparmino tempo ed energie e migliorino l'efficienza dello sviluppo.

Il ruolo principale del sistema CI durante tutto il processo di sviluppo è il controllo: quando il sistema rileva una modifica nel repository di codice, delega il compito di eseguire la build direttamente al processo di compilazione. Se la build fallisce, il sistema CI notifica la persona interessata e continua a monitorare il repository. I suoi personaggi appaiono passivi; Ma riflette rapidamente il problema.

In particolare, presenta i seguenti vantaggi:

  • Jenkins Tutte le configurazioni possono essere fatte sull'interfaccia web. Alcune configurazioni come MAVEN_HOME e email devono essere configurate una sola volta, e tutti i progetti possono essere utilizzati. Naturalmente, può anche essere configurato modificando l'XML.
  • Moduli che supportano Maven, Jenkins ha ottimizzato Maven, così può riconoscere automaticamente i moduli e ogni modulo può essere configurato come un lavoro. Abbastanza flessibile.
  • L Aggregazione dei rapporti di test, i rapporti di test di tutti i moduli sono aggregati insieme e i risultati sono chiari a colpo d'occhio, utilizzando altri CI, il che è un compito quasi impossibile.
  • L Artefact fingerprint, il risultato di ogni build è gestito automaticamente e può essere facilmente navigato e scaricato senza alcuna configurazione.






Precedente:Libro: Collezione di romanzi detective "National Name Series" di Ellery Quinn
Prossimo:Come Jekins distribuisce un progetto .NET Framework
Disconoscimento:
Tutto il software, i materiali di programmazione o gli articoli pubblicati dalla Code Farmer Network sono destinati esclusivamente all'apprendimento e alla ricerca; I contenuti sopra elencati non devono essere utilizzati per scopi commerciali o illegali, altrimenti gli utenti dovranno sostenere tutte le conseguenze. Le informazioni su questo sito provengono da Internet, e le controversie sul copyright non hanno nulla a che fare con questo sito. Devi eliminare completamente i contenuti sopra elencati dal tuo computer entro 24 ore dal download. Se ti piace il programma, ti preghiamo di supportare software autentico, acquistare la registrazione e ottenere servizi autentici migliori. In caso di violazione, vi preghiamo di contattarci via email.

Mail To:help@itsvse.com