- Leren door doen
- Trainers met praktijkervaring
- Klassikale trainingen
- Gedetailleerd cursusmateriaal
- Duidelijke inhoudsbeschrijving
- Maatwerk inhoud mogelijk
- Trainingen die doorgaan
- Kleine groepen
In de cursus Continuous Integration met Jenkins leren de deelnemers hoe de nieuwste versie van Jenkins kan worden gebruikt voor het het opzetten van een continuous integration en continuous delivery (CI/CD) pipeline. CI/CD is een best practice in agile development waarbij verandering in de code van een software project automatisch worden getest en geïntegreerd.
CI/CD is een onderdeel van het DevOps process waarbij developers code veranderingen met regelmaat inchecken in een centrale repository, waarna tests en builds automatisch worden uitgevoerd. De tools verzekeren dat de nieuwe code correct is alvorens deze wordt geïntegreerd in het software project.
De cursus gaat van start de behandeling van de versie control systemen en build tools die door Jenkins worden ondersteund. Ook wordt ingegaan op Jenkins plugins, de Jenkins DSL en het Jenkins file.
Vervolgens komt aan de hand van de Jenkins GUI en het Jenkins Dashboard aan de orde hoe je in Jenkins declarative en scripted pipelines kunt opzetten. De rol van Masters en Nodes, Agents en Executors worden daarbij besproken en hun samenhang uitgelegd.
Aandacht wordt ook besteed aan de activering van jobs. Jobs kunnen periodiek of met input van de user aan de hand van parameters worden geactiveerd. Hierbij worden ook retries, timeouts, conditional en parallel execution besproken.
Jenkins ondersteunt diverse project types zoals Maven of Gradle projects, Freestyle projects, Pipeline en GitHub projects. De opzet van dergelijke project wordt uitgelegd evenals multibranch en external projects.
Tenslotte komen diverse rapportage mogelijkheden vanuit Jenkins projecten aan de orde en wordt besproken hoe Jenkins en container technology zoals Docker kunnen samenwerken.
De cursus Continuous Integration met Jenkins is bedoeld voor developers, testers en beheerders die de nieuwste versie van Jenkins willen gebruiken voor het opzetten van een continuous integration pipeline.
Ervaring met IT projecten in een DevOps omgeving met de Agile Development methodology en Scrum is bevorderlijk voor de begripsvorming maar niet strict noodzakelijk.
De theorie wordt besproken aan de hand van presentaties en demos en wordt afgewisseld met oefeningen. Demo projecten dienen te verheldering van de behandelde concepten. De cursus gaat in laatste versie van Jenkins versie 2. De cursustijden zijn van 9.30 tot 16.30.
De deelnemers krijgen na het goed doorlopen van de cursus een officieel certificaat Continuous Integration met Jenkins.
Module 1 : Jenkins Intro |
Module 2 : Creating Pipelines |
Module 3 : Pipeline Execution |
What is Jenkins? Continuous Integration Hudson Predecessor Version Control Git, CVS and BitBucket Build Tool Support Distributed Builds Jenkins Plugins Installing Jenkins The Jenkinsfile Jenkins DSL Groovy Scripts |
Declarative Pipelines Jenkins GUI Jenkins Dashboard Blue Ocean Pipeline Structure Pipeline Development Scripted Pipelines Declarative Pipelines Masters and Nodes, Agents and Executors Snippet Generator Running Pipelines |
Triggering Jobs Build After Build Periodically Cron Syntax Poll SCM User Input Parameters Flow Control Options timeout and retry Conditional Execution Parallel Execution Handling Concurrency |
Module 4 : Project Types |
Module 5 : Reports |
Module 6 : Integrating Containers |
Freestyle Projects Maven Projects Discard Old Builds GitHub Projects Throttle Builds Build Environment Post-Build Actions Pipeline Projects External Project Types Multiconfigurations Multibranch Projects Branch Indexing |
Notifications Jenkins URL Email Notifications Build Results Collaboration Services Webhooks in Slack Default Notifications HipChat Plugin HTML Reports Publishing Reports Integrating Artifacts Conversions |
Docker in Pipeline Configured as a Cloud Docker Images as Agents SSH Credentials Container Settings Launching Options Persistent Docker Nodes Global Variables withDockerRegistry Pipeline inside Method Docker via Shell Other Interfaces |