Om een pijplijn met continue integratie en continue levering (CICD) in vRealize Automation Code Stream te maken, kunt u handmatig fasen en taken toevoegen. Om uw CICD-systeemeigen build te plannen, verzamelt u de informatie die u nodig heeft en maakt u vervolgens een pijplijn waaraan u handmatig fasen en taken toevoegt.

U moet voor zowel de fase voor continue integratie (CI) als voor de fase voor continue levering (CD) van uw pijplijn plannen. Nadat u de pijplijn heeft gemaakt en uitgevoerd, kunt u trends in de pijplijn-uitvoeringen volgen.

Om de CI- en CD-fasen van uw pijplijn te plannen, controleert u of aan alle vereisten is voldaan voordat u uw pijplijn maakt.

De externe en interne vereisten plannen

Als u een pijplijn wilt maken op basis van dit voorbeeldplan, gebruikt u een Docker-host, een Git-opslagplaats, Maven en verschillende buildtools voor naverwerking.

Eindpunten en opslagplaatsen die u nodig heeft:

  • Een opslagplaats voor Git-broncode waar uw ontwikkelaars code inchecken. vRealize Automation Code Stream haalt de meest recente code op in de pijplijn wanneer ontwikkelaars wijzigingen doorvoeren.
  • Een Docker-eindpunt voor de Docker-buildhost die de bouwcommando’s in een container uitvoert.
  • Een Kubernetes-eindpunt zodat vRealize Automation Code Stream uw image kan implementeren op een Kubernetes-cluster.
  • Een builderimage die de container maakt waarop de continue integratietests worden uitgevoerd.
  • Een imageregister-eindpunt zodat de Docker-buildhost daar de builderimage kan ophalen.

U heeft toegang tot een project nodig. Het project groepeert al uw werk, inclusief uw pijplijn, eindpunten en dashboards. Controleer of u lid bent van een project in vRealize Automation Code Stream. Als u geen beheerder bent, vraagt u de vRealize Automation Code Stream-beheerder om u als lid toe te voegen aan een project. Zie Hoe voeg ik een project toe in vRealize Automation Code Stream?.

U zult een Git-webhook nodig hebben waarmee vRealize Automation Code Stream de Git-trigger kan gebruiken om uw pijplijn te activeren wanneer ontwikkelaars codewijzigingen doorvoeren. Zie Hoe gebruik ik de Git-trigger in vRealize Automation Code Stream om een pijplijn uit te voeren?.

Hoe u de CICD-pijplijn maakt en de werkruimte configureert

U moet de pijplijn maken en vervolgens de werkruimte, de invoerparameters voor de pijplijn en taken configureren.

Om de pijplijn te maken, klikt u op Pijplijnen > Nieuwe pijplijn > Blanco canvas.

Maak een pijplijn op basis van een leeg canvas.

Voer de gegevens over continue integratie in op het tabblad Werkruimte:

  • Neem uw Docker-buildhost op.
  • Voer de URL voor uw builderimage.
  • Selecteer het imageregister-eindpunt zodat de pijplijn de image daarvan kan ophalen. De container voert de CI-taken uit en implementeert uw image. Als het register verificatiegegevens vereist, moet u eerst het imageregister-eindpunt maken en dit vervolgens hier selecteren, zodat de host de image uit het register kan ophalen.
  • Voeg de artefacten toe die in de cache moeten worden opgeslagen. Voor een geslaagde build worden artefacten, zoals directory's, gedownload als afhankelijkheden. De cache is de locatie waar deze artefacten zich bevinden. Afhankelijke artefacten kunnen bijvoorbeeld de .m2-map voor Maven en de node_modules-map voor Node. js bevatten. Deze directory's worden in de cache opgeslagen bij de uitvoering van pijplijnen om tijd te besparen tijdens de builds.

    De werkruimte in een pijplijn configureren.

Configureer de inputparameters voor de pijplijn op het tabblad Input.

  • Als uw pijplijn invoerparameters van een Git-, Gerrit- of Docker-triggergebeurtenis gebruikt, selecteert u het triggertype voor het Automatisch injecteren van parameters. Gebeurtenissen kunnen Onderwerp wijzigen voor Gerrit of Git of Naam van de eigenaar van de gebeurtenis voor Docker omvatten. Als uw pijplijn geen invoerparameters gebruikt die worden doorgegeven vanaf de gebeurtenis, laat u de selectie van Automatisch injecteren van parameters op Geen ingesteld staan.
  • Als u een waarde en een beschrijving wilt toepassen op een inputparameter voor de pijplijn, klikt u op de drie verticale puntjes en klikt u op Bewerken. De waarde die u invoert, wordt gebruikt als input voor taken, fasen of meldingen.
  • Om een inputparameter voor een pijplijn toe te voegen, klikt u op Toevoegen. U kunt bijvoorbeeld approvers toevoegen om een standaardwaarde voor elke uitvoering weer te geven, maar die kan worden omzeild om een andere goedkeurder bij runtime weer te geven.
  • Als u een ingevoerde parameter wilt toevoegen of verwijderen, klikt u op Geïnjecteerde parameter toevoegen/verwijderen. U kunt bijvoorbeeld een ongebruikte parameter verwijderen om de pagina met zoekresultaten overzichtelijker te maken en alleen de invoerparameters weer te geven die worden gebruikt.

    Het tabblad Input in een CICD-pijplijn configureren.

Configureer de pijplijn om uw code te testen:

  • Voeg een CI-taak toe en configureer deze.
  • Neem stappen op om mvn test uit te voeren op uw code.
  • Voer buildtools voor naverwerking uit, zoals JUnit en JaCoCo, FindBugs en Checkstyle om eventuele problemen na het uitvoeren van de taak te identificeren.

    Een pijplijntaak configureren om uw code te testen.

Configureer de pijplijn om uw code te bouwen:

  • Voeg een CI-taak toe en configureer deze.
  • Neem stappen op om mvn clean install uit te voeren op uw code.
  • Neem de locatie en de JAR-bestandsnaam op zodat uw artefact behouden blijft.

    Een pijplijntaak configureren om uw code te bouwen.

Configureer de pijplijn om uw image op uw Docker-host te publiceren:

  • Voeg een CI-taak toe en configureer deze.
  • Voeg stappen toe die uw image doorvoeren, exporteren, bouwen en pushen.
  • Voeg de exportsleutel van IMAGE toe voor de volgende taak die moet worden geconsumeerd.

    Een pijplijntaak configureren om uw image naar uw Docker-host te publiceren.

Nadat u de werkruimte, de invoerparameters, de testtaken en de bouwtaken heeft geconfigureerd, slaat u uw pijplijn op.

Hoe u uw pijplijn kunt inschakelen en uitvoeren

Nadat u uw pijplijn met fasen en taken heeft geconfigureerd, kunt u de pijplijn opslaan en inschakelen.

Wacht vervolgens totdat de pijplijn is uitgevoerd en voltooid en controleer of deze is geslaagd. Als de pijplijn is mislukt, corrigeert u eventuele fouten en voert u deze opnieuw uit.

Nadat de pijplijn is geslaagd, zijn er een aantal dingen die u mogelijk wilt bevestigen:

  • Controleer de uitvoering van de pijplijn en bekijk de resultaten van de taakstappen.
  • Zoek in de werkruimte van de pijplijnuitvoering naar de details over uw container en de gekloonde Git-opslagplaats.
  • Bekijk in de werkruimte de resultaten van uw naverwerkingstools en controleer op fouten, codedekking, bugs en stijlproblemen.
  • Controleer of uw artefact behouden blijft. Controleer ook of de afbeelding is geëxporteerd met de naam en de waarde van de IMAGE.
  • Ga naar uw Docker-opslagplaats en controleer of de pijplijn uw container heeft gepubliceerd.

Voor een gedetailleerd voorbeeld waarin wordt weergegeven hoe de code door vRealize Automation Code Stream continu wordt geïntegreerd, raadpleegt u Hoe kan ik code vanuit mijn GitHub- of GitLab-opslagplaats continu integreren in mijn pijplijn in vRealize Automation Code Stream?.