Dit artikel is een spiegelartikel van machinevertaling, klik hier om naar het oorspronkelijke artikel te gaan.

Bekijken: 13306|Antwoord: 0

[Bron] Jenkins werd kort voorgesteld

[Link kopiëren]
Geplaatst op 22-11-2018 09:59:36 | | | |
Hoofdstuk 1 Wat is Jenkins?

Jenkins is een schaalbare, continue integratie-engine.

Voornamelijk gebruikt voor:

  • Bouw/test continu en automatisch softwareprojecten.
  • Ik Houd enkele taken in de gaten die regelmatig worden uitgevoerd.


Kenmerken die Jenkins bezit zijn onder andere:

  • Makkelijk te installeren - deploy gewoon jenkins.war naar een servlet-container zonder database-ondersteuning.
  • l Eenvoudig te configureren - alle configuraties worden bereikt via de webinterface die het biedt.
  • l Geïntegreerde RSS/e-mail publiceert buildresultaten via RSS of meldingen via e-mail wanneer de build voltooid is.
  • Ik genereer JUnit/TestNG testrapporten.
  • l Gedistribueerde buildondersteuning Jenkins maakt het mogelijk dat meerdere machines samen kunnen bouwen/testen.
  • l Bestandsherkenning: Jenkins kan bijhouden welke jars door welke build worden gegenereerd, welke versie van jar door welke build wordt gebruikt, enzovoort.
  • l Plugin-ondersteuning: Extensies worden ondersteund, zodat je tools kunt ontwikkelen die passen bij het gebruik van je team.


1 Oorsprong van Jenkins

Continue integratie (CI) is een gangbare praktijk geworden voor veel softwareontwikkelingsteams, waarbij ze zich richten op het waarborgen van codekwaliteit gedurende de hele softwareontwikkelingscyclus. Het is een praktijk die bedoeld is om het proces van softwareontwikkeling te vergemakkelijken en te versterken. En het kan je ontwikkelingsteam helpen uitdagingen aan te gaan zoals:

  • l Software Build Automatisering: Nadat de configuratie is voltooid, zal het CI-systeem de doelsoftware bouwen volgens het vooraf bepaalde schema of voor een specifiek evenement.
  • Bouw duurzame geautomatiseerde controles: Het CI-systeem kan continu nieuwe of gewijzigde incheckbroncode verkrijgen, dat wil zeggen, wanneer het softwareontwikkelingsteam periodiek de nieuwe of gewijzigde code moet controleren, zal het CI-systeem voortdurend bevestigen of de nieuwe code de succesvolle bouw van de oorspronkelijke software heeft verstoord. Dit vermindert de tijd en moeite die ontwikkelaars besteden aan het controleren van wijzigingen in hun onderling afhankelijke code (om het duidelijk te maken, hehe).
  • l Bouw duurzame geautomatiseerde tests: bouw een uitgebreid deel van de controle, voer na het bouwen een vooraf gedefinieerde set testregels uit en trigger meldingen (e-mail, RSS, enz.) aan de relevante partijen na voltooiing.
  • l Automatisering van opvolgende processen na generatie: Wanneer geautomatiseerde controles en tests succesvol zijn afgerond, kunnen extra taken nodig zijn in de softwarebouwcyclus, zoals het genereren van documentatie, het verpakken van software en het uitrollen van componenten naar een runtime of softwarerepository. Hierdoor kunnen de componenten sneller beschikbaar worden gesteld aan gebruikers.
  • De minimale vereisten om een CI-systeem te implementeren zijn een repository van beschikbare broncode en een project met buildscripts.


Het volgende diagram vat de basisstructuur van een CI-systeem samen:



De componenten van het systeem functioneren in de volgende volgorde:

1. De ontwikkelaar checkt de code in naar de broncode-repository.

2. Het CI-systeem creëert een aparte werkruimte voor elk project. Wanneer een nieuwe build vooraf is ingesteld of opgevraagd, slaat deze de broncode van de broncoderepository op naar de bijbehorende werkruimte.

3. Het CI-systeem voert het buildproces uit in de bijbehorende werkruimte.

4. (Als configuratie bestaat) Zodra de build is voltooid, voert het CI-systeem een gedefinieerde set tests uit in een nieuw artefact. Activeer meldingen (e-mail, RSS, enz.) aan de relevante partijen na voltooiing.

5. (Configuratie, indien aanwezig) Als de build succesvol is, wordt dit artefact verpakt en overgedragen aan een deployment-doel (bijv. applicatieserver) of opgeslagen als een nieuwe versie in de softwarerepository. Een softwarerepository kan deel uitmaken van een CI-systeem of een externe repository, zoals een bestandsserver of een website zoals Java.net, SourceForge, enzovoort.

6. Het CI-systeem start meestal overeenkomstige acties op basis van verzoeken, zoals instant builds, het genereren van rapporten of het ophalen van gebouwde artefacten.

Jenkins is zo'n CI-systeem. Voorheen bekend als Hudson.

Hier zijn enkele redenen om Jenkins te gebruiken:

  • Het is het makkelijkst te installeren en te configureren van alle CI-producten.
  • l Gebaseerd op webtoegang is de gebruikersinterface zeer vriendelijk, intuïtief en flexibel, en biedt in veel gevallen directe feedback van AJAX.
  • l Jenkins is ontwikkeld op Java (wat erg handig is als je een Java-ontwikkelaar bent), maar het is niet beperkt tot het bouwen van Java-gebaseerde software.
  • l Jenkins heeft een groot aantal plugins. Deze plugins breiden de functionaliteit van Jenkins aanzienlijk uit; Ze zijn allemaal open source en kunnen direct via de webinterface worden geïnstalleerd en beheerd.


1.1 Doelstellingen van Jenkins
Jenkins' hoofddoel is het monitoren van het softwareontwikkelingsproces en snel problemen aan het licht brengen. Hierdoor kan het ervoor zorgen dat ontwikkelaars en aanverwante medewerkers tijd en moeite besparen en de ontwikkelingsefficiëntie verbeteren.

De belangrijkste rol van het CI-systeem gedurende het ontwikkelproces is controle: wanneer het systeem een wijziging in de coderepository detecteert, delegeert het de taak om de build uit te voeren aan het buildproces zelf. Als de build faalt, waarschuwt het CI-systeem de relevante persoon en blijft het de repository monitoren. De personages lijken passief te zijn; Maar het weerspiegelt het probleem snel.

In het bijzonder heeft het de volgende voordelen:

  • l Jenkins Alle configuraties kunnen via de webinterface worden gedaan. Sommige configuraties zoals MAVEN_HOME en e-mail hoeven slechts één keer geconfigureerd te worden, en alle projecten kunnen worden gebruikt. Natuurlijk kan het ook worden geconfigureerd door de XML aan te passen.
  • l modules die Maven ondersteunen, Jenkins heeft Maven geoptimaliseerd, zodat het modules automatisch kan herkennen en elke module als taak kan worden geconfigureerd. Heel flexibel.
  • l Testrapportaggregatie, de testrapporten van alle modules worden samengevoegd en de resultaten zijn in één oogopslag duidelijk, met behulp van andere CI's, wat een bijna onmogelijke taak is.
  • l Artifact fingerprint, het resultaat van elke build wordt goed automatisch beheerd en kan eenvoudig worden doorzocht en gedownload zonder enige configuratie.






Vorig:Boek: Ellery Quinns "National Name Series" detectiveroman-meesterwerkverzameling
Volgend:Hoe Jekins een .NET Framework-project uitrolt
Disclaimer:
Alle software, programmeermaterialen of artikelen die door Code Farmer Network worden gepubliceerd, zijn uitsluitend bedoeld voor leer- en onderzoeksdoeleinden; De bovenstaande inhoud mag niet worden gebruikt voor commerciële of illegale doeleinden, anders dragen gebruikers alle gevolgen. De informatie op deze site komt van het internet, en auteursrechtconflicten hebben niets met deze site te maken. Je moet bovenstaande inhoud volledig van je computer verwijderen binnen 24 uur na het downloaden. Als je het programma leuk vindt, steun dan de echte software, koop registratie en krijg betere echte diensten. Als er sprake is van een inbreuk, neem dan contact met ons op via e-mail.

Mail To:help@itsvse.com